iloveeyjafjalla opened a new issue, #6934:
URL: https://github.com/apache/rocketmq-dashboard/issues/6934

   ## Summary
   
   The audit page's filter dropdowns keep offering values whose rows a Cleanup 
just deleted: the options are served from a 30-second cache, and `deleteBefore` 
does not invalidate it while an insert does.
   
   ## Why
   
   - `MybatisPlusAuditRepository.findFilterOptions` caches the four option 
lists for 30 seconds 
(`server/src/main/java/org/apache/rocketmq/studio/ops/audit/MybatisPlusAuditRepository.java:74-90`).
   - `save` drops that cache (`:227`), but `deleteBefore` — the path the 
Cleanup action uses — does not (`:238-263`).
   - The page deliberately refetches the options after a successful cleanup 
(`web/src/pages/ops/audit.tsx`, the `refreshKey` bump), so that refetch can be 
answered from the cache within the TTL.
   
   ## Impact
   
   Right after a cleanup that removed a whole operation/resource type, cluster 
or result value, the dropdowns still list it; selecting it returns zero rows, 
which reads as a filter bug rather than as "that value is gone".
   
   ## Reproduction
   
   
`server/src/test/java/org/apache/rocketmq/studio/ops/audit/MybatisPlusAuditRepositoryTest.java`
 → `deleteBeforeInvalidatesCachedFilterOptionsTest`:
   
   ```
   expect: selectMaps called twice (once before the cleanup, once after)
   actual today: once — the second read is served from the cache
   ```
   
   ## Expected
   
   A cleanup that deleted rows invalidates the cache, exactly like an insert 
does, so the page's post-cleanup refetch sees the remaining values.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to