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

   ## Summary
   
   Resetting another Studio user's password leaves the page's session numbers 
stale and contradicting its own session drawer: the server revokes all of that 
user's sessions, but the row keeps its old 活跃会话数 / 最近活动 / 最近过期, and the 会话总览 
card keeps counting sessions that no longer exist.
   
   ## Why
   
   - `updatePassword` resets the password and then only closes the dialog 
(`web/src/pages/studio/UserManagement.tsx:317-336`); it never bumps 
`refreshVersion`, the counter the other mutations (enable, revoke) use to 
reload (`:199-208`).
   - The users page and the session overview are both loaded by the effect 
keyed on that counter (`:179-182`), so neither is re-read.
   - The server side does revoke: `AuthService.changePassword` calls 
`revokeUserSessions` 
(`server/src/main/java/org/apache/rocketmq/studio/auth/AuthService.java:371`), 
which is the reset path too.
   
   ## Impact
   
   Immediately after a successful reset, the row and the overview claim the 
user still has live sessions while the Sessions drawer (fetched fresh) shows 
none — two parts of one page disagreeing, with no refresh control to reconcile 
them.
   
   ## Reproduction
   
   `web/src/pages/studio/__tests__/UserManagement.test.tsx` → `reloads the 
users and the session overview after resetting a password` fills the new 
password and confirms:
   
   ```
   AssertionError: expected 1 to be greater than or equal to 2    
(listStudioUsers calls)
   ```
   
   ## Expected
   
   The reset reloads the users and the session overview, like enabling or 
revoking does.
   


-- 
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