{"record":{"id":"6fc0311a313a3a4f","repo":"apache/rocketmq","slug":"lite-subscription-is-null","errorCode":null,"errorMessage":"lite subscription is null.","messagePattern":"lite subscription is null\\.","errorType":"exception","errorClass":"AuthorizationException","httpStatus":null,"severity":"error","filePath":"auth/src/main/java/org/apache/rocketmq/auth/authorization/builder/DefaultAuthorizationContextBuilder.java","lineNumber":448,"sourceCode":"                            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;\n                case RequestCode.UPDATE_AND_CREATE_TOPIC_LIST:\n                    CreateTopicListRequestBody topicListBody = decodeRequiredBody(\n                        command, CreateTopicListRequestBody.class, \"topic list\");\n                    if (CollectionUtils.isEmpty(topicListBody.getTopicConfigList())) {\n                        throw new AuthorizationException(\"topic list is empty.\");","sourceCodeStart":430,"sourceCodeEnd":466,"githubUrl":"https://github.com/apache/rocketmq/blob/293f5885719fc4aa3619446a1900f58ccfcfdd29/auth/src/main/java/org/apache/rocketmq/auth/authorization/builder/DefaultAuthorizationContextBuilder.java#L430-L466","documentation":"Error \"lite subscription is null.\" thrown in apache/rocketmq.","triggerScenarios":"Occurs when a lite subscription request carries no subscription data.","commonSituations":"Lite subscription request body is missing or failed to decode, leaving the subscription field null.","solutions":["Pass a non-null lite subscription object when invoking the lite subscription API.","Check client code paths building the lite subscription request so the field is always set.","Verify serialization compatibility between client and broker versions."],"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"}