You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by "Frun1na (via GitHub)" <gi...@apache.org> on 2026/10/13 04:13:17 UTC
[I] [Bug] The Lite topic table sorts an unmeasured TTL and last-active time as its smallest value [rocketmq-dashboard]
Frun1na opened a new issue, #6537:
URL: https://github.com/apache/rocketmq-dashboard/issues/6537
### Before Creating the Bug Report
- [x] I have searched the [open issues](https://github.com/apache/rocketmq-dashboard/issues) of this repository and believe that this is not a duplicate.
- [x] This is a defect in RocketMQ Studio, not a usage question and not a defect in another Apache RocketMQ repository.
- [x] I can reproduce this on the current `rocketmq-studio` branch, or I have stated the exact version I am running below.
### Studio Version
branch: `rocketmq-studio`
git commit id: `779b8c0e`
deployed as: reproduced by a component test against that commit (the affected code is the web client)
### Runtime Environment
OS: Ubuntu on WSL2
MySQL: not applicable — the defect is in the web client's table sorting
browser: not applicable — reproduced in a jsdom unit test (vitest + Testing Library)
### Connected RocketMQ Cluster
RocketMQ version: not applicable — reproduced with a stubbed Lite topic list in a unit test
access mode: not applicable
deployment: not applicable
### Describe the Bug
The Lite topic table's "Avg TTL" and "Last Active" columns rank a pattern the provider could not
measure as if it were the smallest value, although the cells render `-` for those rows
(`web/src/pages/studio/LiteTopic.tsx:466` and `:453`):
```tsx
render: (val: number) => formatDuration(val),
sorter: (a, b) => (a.averageTTL || 0) - (b.averageTTL || 0),
```
The provider leaves both fields unset: `RocketMQLiteTopicProvider.buildSummary` sets
`lastActiveTime` only after a session reported an access (a pattern with no connected consumer
carries none), and `toMillis` returns null when the broker has no TTL attribute — the same situation
whose TTL status the page already renders as unknown and offers as a filter value. `|| 0` turns that
absence into a measured zero, so sorting either column ascending puts those patterns at the top, as
if their TTL had expired first or as if they had been idle since 1970.
### Steps to Reproduce
Reproduced by a component test rather than against a cluster:
1. Render the page with two Lite topic patterns: one with `averageTTL`/`lastActiveTime` unset, one
with a measurable TTL and last-active instant.
2. Click the "平均 TTL" header (ascending).
3. The unset pattern is listed first, before the measurable one.
### What Did You Expect to See?
A value the column renders as `-` should not claim the first position of an ascending sort; it
should stay out of the way in both directions, the way an unmeasured TPS is kept out of the
comparison on the broker cluster page.
### What Did You See Instead?
The unmeasured pattern sorts as the lowest TTL / the oldest activity and appears first.
### Additional Context
- A fix with a regression test follows in a pull request.
- The case is pinned by a unit test that fails without the fix:
`AssertionError: expected 1 to be greater than 2` (the unmeasured row at index 1, the measurable one
at index 2).
### Are You Willing to Submit a Pull Request?
- [x] Yes, I am willing to submit a pull request.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@rocketmq.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] [Bug] The Lite topic table sorts an unmeasured TTL and last-active time as its smallest value [rocketmq-dashboard]
Posted by "lizhimins (via GitHub)" <gi...@apache.org>.
lizhimins closed issue #6537: [Bug] The Lite topic table sorts an unmeasured TTL and last-active time as its smallest value
URL: https://github.com/apache/rocketmq-dashboard/issues/6537
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] [Bug] The Lite topic table sorts an unmeasured TTL and last-active time as its smallest value [rocketmq-dashboard]
Posted by "lizhimins (via GitHub)" <gi...@apache.org>.
lizhimins commented on issue #6537:
URL: https://github.com/apache/rocketmq-dashboard/issues/6537#issuecomment-6190229096
Resolved by #6539 (merged into `rocketmq-studio` as [`69e5cd4dd`](https://github.com/apache/rocketmq-dashboard/commit/69e5cd4dd)). The merge target is not the default branch, so this issue does not auto-close.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@rocketmq.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org