apache/rocketmq · error · AuthorizationException
lite subscription is empty.
Error message
lite subscription is empty.
What it means
Error "lite subscription is empty." thrown in apache/rocketmq.
Source
Thrown at auth/src/main/java/org/apache/rocketmq/auth/authorization/builder/DefaultAuthorizationContextBuilder.java:443
group = Resource.ofGroup(requireResource(
unlockBatchRequestBody.getConsumerGroup(), "consumer group"));
result.add(DefaultAuthorizationContext.of(subject, group, Action.SUB, sourceIp));
if (CollectionUtils.isNotEmpty(unlockBatchRequestBody.getMqSet())) {
for (MessageQueue messageQueue : unlockBatchRequestBody.getMqSet()) {
String unlockTopic = requireResource(messageQueue.getTopic(), "topic");
if (NamespaceUtil.isRetryTopic(unlockTopic)) {
continue;
}
topic = Resource.ofTopic(unlockTopic);
result.add(DefaultAuthorizationContext.of(subject, topic, Action.SUB, sourceIp));
}
}
break;
case RequestCode.LITE_SUBSCRIPTION_CTL:
LiteSubscriptionCtlRequestBody liteSubscriptionBody = decodeRequiredBody(
command, LiteSubscriptionCtlRequestBody.class, "lite subscription");
if (CollectionUtils.isEmpty(liteSubscriptionBody.getSubscriptionSet())) {
throw new AuthorizationException("lite subscription is empty.");
}
Set<String> liteSubscriptionResources = new LinkedHashSet<>();
for (LiteSubscriptionDTO subscription : liteSubscriptionBody.getSubscriptionSet()) {
if (subscription == null) {
throw new AuthorizationException("lite subscription is null.");
}
addUniqueContext(result, liteSubscriptionResources, subject,
Resource.ofGroup(requireResource(subscription.getGroup(), "consumer group")),
Action.SUB, sourceIp);
addUniqueContext(result, liteSubscriptionResources, subject,
Resource.ofTopic(requireResource(subscription.getTopic(), "topic")),
Action.SUB, sourceIp);
}
break;
case RequestCode.UPDATE_BROKER_CONFIG:
result.add(DefaultAuthorizationContext.of(subject,
Resource.ofCluster(authConfig.getClusterName()), Action.UPDATE, sourceIp));
break;View on GitHub (pinned to 293f588571)
Solutions
- Provide at least one lite subscription entry (topic/expression) in the request.
- Check the client's lite subscription API usage so an empty subscription set is never submitted.
- Validate application configuration that supplies the lite subscription list.
When it happens
Trigger: Occurs when a lite subscription request contains an empty subscription set.
Common situations: Client sends a lite subscribe/unsubscribe request with no topics or an empty subscription list.
AI-assisted analysis of apache/rocketmq@293f588571 (2026-08-14).
Data as JSON: /api/errors/34f61206d97025d1.
Report an issue: GitHub.