yuluo-yx opened a new pull request, #4130: URL: https://github.com/apache/rocketmq-dashboard/pull/4130
现有消费组页面可以展示请求模式,但缺少按 Topic/消费组配置 POP、PULL 的完整流程。本 PR 增加覆盖所有 Topic 主 Broker 的预览、确认、写入与回读,明确 Broker 默认值和显式覆盖的区别。 - 预览使用所选实例的登记信息与 Topic 路由,检查消费组在每个主 Broker 上存在且离线,再读取有效请求模式、POP 共享参数、配置来源及服务端负载均衡开关。 - 没有显式条目时采用 Broker 默认模式;默认 PULL 的共享值为 0,默认 POP 使用 defaultPopShareQueueNum。读取失败、缺失或格式异常不会当作继承默认。 - 提交前重新核对所有 Broker 配置和路由,逐节点调用原生 setMessageRequestMode 并回读。保留 CONFIRMED、UNCHANGED、UNKNOWN、NOT_ATTEMPTED;首次不确定结果停止后续更新,不自动重试,审计异常不丢失回执。 - UI 展示整个 Topic 范围,需明确确认;POP -1/0 的全部队列语义、PULL 归零、客户端兼容性和在途消息限制均有说明。关闭或切换实例不能撤回已发出的 Broker 写入。 MQAdminExt 没有读取封装,因此通过公开 SDK 访问器复用现有认证传输与 VIP 通道,发送官方 GET_ALL_MESSAGE_REQUEST_MODE 命令;没有反射或新建未认证客户端。协议依据:[MessageRequestModeManager](https://github.com/apache/rocketmq/blob/rocketmq-all-5.5.0/broker/src/main/java/org/apache/rocketmq/broker/loadbalance/MessageRequestModeManager.java)、[QueryAssignmentProcessor](https://github.com/apache/rocketmq/blob/rocketmq-all-5.5.0/broker/src/main/java/org/apache/rocketmq/broker/processor/QueryAssignmentProcessor.java) 和 [AdminBrokerProcessor](https://github.com/apache/rocketmq/blob/rocketmq-all-5.5.0/broker/src/main/java/org/apache/rocketmq/broker/processor/AdminBrokerProcessor.java#L2037)。 本地后端 75 项、前端 41 项测试通过;服务 111/111 行覆盖,读取封装 15/15 行、15/16 分支。Checkstyle、TypeScript/Vite 构建及后端打包通过;ESLint 0 错误、10 条现有告警。浏览器同一脚本明确拦截本地 GET/POST,验证默认 PULL 预览、POP -1 请求及确认回执,另验证选择 PULL 后共享值归零且禁用输入。没有修改真实 Broker。 去重检索覆盖全部 Issue/PR 快照和在线 setMessageRequestMode、message request mode、popShareQueueNum、popWorkGroupSize、POP/PULL 关键词。#4053、#1964 等涉及模式展示或筛选,不提供该配置流程;精确功能检索没有重复。接口、界面、协议及故障测试、权限测试和中文文档在一个 PR 中完成。 无新增依赖或数据库迁移。恢复原默认值会创建显式覆盖,原生接口不能删除覆盖以重新继承后续默认值;多 Broker 配置无事务保证。代码可撤销本提交,已经修改的配置按保存的预览和文档恢复。真实 POP 客户端切换、压力、容量及网络分区验证未执行。既有全量测试失败与依赖审计缺口继续记录,不宣称全量门槛通过;按用户授权做增量验证。提交含 [skip ci],未运行远端工作流。核验日期:2026-09-08。 -- 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]
