{"record":{"id":"34f61206d97025d1","repo":"apache/rocketmq","slug":"lite-subscription-is-empty","errorCode":null,"errorMessage":"lite subscription is empty.","messagePattern":"lite subscription is empty\\.","errorType":"exception","errorClass":"AuthorizationException","httpStatus":null,"severity":"error","filePath":"auth/src/main/java/org/apache/rocketmq/auth/authorization/builder/DefaultAuthorizationContextBuilder.java","lineNumber":443,"sourceCode":"                    group = Resource.ofGroup(requireResource(\n                        unlockBatchRequestBody.getConsumerGroup(), \"consumer group\"));\n                    result.add(DefaultAuthorizationContext.of(subject, group, Action.SUB, sourceIp));\n                    if (CollectionUtils.isNotEmpty(unlockBatchRequestBody.getMqSet())) {\n                        for (MessageQueue messageQueue : unlockBatchRequestBody.getMqSet()) {\n                            String unlockTopic = requireResource(messageQueue.getTopic(), \"topic\");\n                            if (NamespaceUtil.isRetryTopic(unlockTopic)) {\n                                continue;\n                            }\n                            topic = Resource.ofTopic(unlockTopic);\n                            result.add(DefaultAuthorizationContext.of(subject, topic, Action.SUB, sourceIp));\n                        }\n                    }\n                    break;\n                case RequestCode.LITE_SUBSCRIPTION_CTL:\n                    LiteSubscriptionCtlRequestBody liteSubscriptionBody = decodeRequiredBody(\n                        command, LiteSubscriptionCtlRequestBody.class, \"lite subscription\");\n                    if (CollectionUtils.isEmpty(liteSubscriptionBody.getSubscriptionSet())) {\n                        throw new AuthorizationException(\"lite subscription is empty.\");\n                    }\n                    Set<String> liteSubscriptionResources = new LinkedHashSet<>();\n                    for (LiteSubscriptionDTO subscription : liteSubscriptionBody.getSubscriptionSet()) {\n                        if (subscription == null) {\n                            throw new AuthorizationException(\"lite subscription is null.\");\n                        }\n                        addUniqueContext(result, liteSubscriptionResources, subject,\n                            Resource.ofGroup(requireResource(subscription.getGroup(), \"consumer group\")),\n                            Action.SUB, sourceIp);\n                        addUniqueContext(result, liteSubscriptionResources, subject,\n                            Resource.ofTopic(requireResource(subscription.getTopic(), \"topic\")),\n                            Action.SUB, sourceIp);\n                    }\n                    break;\n                case RequestCode.UPDATE_BROKER_CONFIG:\n                    result.add(DefaultAuthorizationContext.of(subject,\n                        Resource.ofCluster(authConfig.getClusterName()), Action.UPDATE, sourceIp));\n                    break;","sourceCodeStart":425,"sourceCodeEnd":461,"githubUrl":"https://github.com/apache/rocketmq/blob/293f5885719fc4aa3619446a1900f58ccfcfdd29/auth/src/main/java/org/apache/rocketmq/auth/authorization/builder/DefaultAuthorizationContextBuilder.java#L425-L461","documentation":"Error \"lite subscription is empty.\" thrown in apache/rocketmq.","triggerScenarios":"Occurs when a lite subscription request contains an empty subscription set.","commonSituations":"Client sends a lite subscribe/unsubscribe request with no topics or an empty subscription list.","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."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"293f5885719fc4aa3619446a1900f58ccfcfdd29","analyzedAt":"2026-08-14T11:50:13.822Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}