{"record":{"id":"5c3296dbc8ee8192","repo":"apache/pulsar","slug":"resourcegroup-does-not-exist","errorCode":null,"errorMessage":"ResourceGroup does not exist","messagePattern":"ResourceGroup does not exist","errorType":"http","errorClass":"RestException","httpStatus":412,"severity":"error","filePath":"pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java","lineNumber":3169,"sourceCode":"       } catch (Exception e) {\n           Throwable cause = e.getCause();\n           if (!(cause instanceof RestException)) {\n               throw new RestException(cause);\n           } else {\n               throw (RestException) cause;\n           }\n       }\n   }\n\n    protected void internalSetNamespaceResourceGroup(String rgName) {\n        validateNamespacePolicyOperation(namespaceName, PolicyName.RESOURCEGROUP, PolicyOperation.WRITE);\n        validatePoliciesReadOnlyAccess();\n\n        if (rgName != null) {\n            // check resourcegroup exists.\n            try {\n                if (!resourceGroupResources().resourceGroupExists(rgName)) {\n                    throw new RestException(Status.PRECONDITION_FAILED, \"ResourceGroup does not exist\");\n                }\n            } catch (Exception e) {\n                log.error()\n                        .attr(\"resourceGroup\", rgName)\n                        .exceptionMessage(e)\n                        .log(\"Invalid ResourceGroup\");\n                throw new RestException(e);\n            }\n        }\n\n        internalSetPolicies(\"resource_group_name\", rgName);\n    }\n\n    @SuppressWarnings(\"deprecation\")\n    protected void internalScanOffloadedLedgers(OffloaderObjectsScannerUtils.ScannerResultSink sink)\n            throws Exception {\n        log.info().attr(\"namespace\", namespaceName).log(\"internalScanOffloadedLedgers\");\n        validateNamespacePolicyOperation(namespaceName, PolicyName.OFFLOAD, PolicyOperation.READ);","sourceCodeStart":3151,"sourceCodeEnd":3187,"githubUrl":"https://github.com/apache/pulsar/blob/820761864ed8e2a7d2e52dd9763ad2ae117c1395/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java#L3151-L3187","documentation":"internalSetNamespaceResourceGroup checks that the named resource group exists before binding it to the namespace; the lookup failed, so the assignment is rejected because the policy would reference a nonexistent resource group.","triggerScenarios":"Thrown at pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java:3169 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Create the resource group first (pulsar-admin resourcegroups create), then retry the namespace binding","Check for typos in the resource group name"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"820761864ed8e2a7d2e52dd9763ad2ae117c1395","analyzedAt":"2026-09-06T00:14:20.138Z","contentChangedAt":"2026-09-06T00:14:20.138Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}