yyqdbngt opened a new pull request, #2241: URL: https://github.com/apache/rocketmq-dashboard/pull/2241
## Summary - serialize interval and visibility-triggered polling through one in-flight guard - release the guard after both fulfilled and rejected polls - add focused hook coverage for overlap prevention, rejection recovery, visibility, and unmount cleanup ## Problem A slow asynchronous poll could still be running when the next interval tick or `visibilitychange` event started another request. Those requests could overlap, amplify backend load, and update page state out of order. ## Verification - `npm test -- src/hooks/useVisiblePolling.test.tsx src/pages/studio/__tests__/BrokerCluster.test.tsx src/pages/studio/__tests__/GroupManagement.test.tsx` (30 tests passed) - `npx eslint src/hooks/useVisiblePolling.ts src/hooks/useVisiblePolling.test.tsx` - `npx prettier --check src/hooks/useVisiblePolling.ts src/hooks/useVisiblePolling.test.tsx` - `npm run build` Closes #2240 -- 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]
