What happened?
ConsumerManagerActivity.getConsumerListByGroup calls messagingProcessor.getConsumerGroupInfo(...) and immediately dereferences the returned ConsumerGroupInfo. When the requested group is not online, the processor can return null, causing a NullPointerException.
getConsumerConnectionList in the same activity already handles this case by returning CONSUMER_NOT_ONLINE, so the two client-management queries currently have inconsistent behavior.
Why this matters
The Proxy client-management path is part of the Studio/Proxy Admin foundation. Querying online consumers for an offline group should return a deterministic client-facing response instead of an internal error.
Expected behavior
GET_CONSUMER_LIST_BY_GROUP should return CONSUMER_NOT_ONLINE with a clear remark when the group is not online.
Scope
RocketMQ Studio track 2 / Proxy client-management hardening.
What happened?
ConsumerManagerActivity.getConsumerListByGroupcallsmessagingProcessor.getConsumerGroupInfo(...)and immediately dereferences the returnedConsumerGroupInfo. When the requested group is not online, the processor can returnnull, causing aNullPointerException.getConsumerConnectionListin the same activity already handles this case by returningCONSUMER_NOT_ONLINE, so the two client-management queries currently have inconsistent behavior.Why this matters
The Proxy client-management path is part of the Studio/Proxy Admin foundation. Querying online consumers for an offline group should return a deterministic client-facing response instead of an internal error.
Expected behavior
GET_CONSUMER_LIST_BY_GROUPshould returnCONSUMER_NOT_ONLINEwith a clear remark when the group is not online.Scope
RocketMQ Studio track 2 / Proxy client-management hardening.