{"record":{"id":"cf58c095da27f94f","repo":"apache/pulsar","slug":"not-able-to-create-pulsar-admin-message","errorCode":null,"errorMessage":"Not able to create pulsar admin: ${message}","messagePattern":"Not able to create pulsar admin: (.+?)","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/PulsarAdminSupplier.java","lineNumber":73,"sourceCode":"    }\n\n    protected PulsarAdminBuilder adminBuilder;\n    private RootParamsKey currentParamsKey;\n    private PulsarAdmin admin;\n\n    public PulsarAdminSupplier(PulsarAdminBuilder baseAdminBuilder, PulsarAdminTool.RootParams rootParams) {\n        this.adminBuilder = baseAdminBuilder;\n        rootParamsUpdated(rootParams);\n    }\n\n    @Override\n    public PulsarAdmin get() {\n        if (admin == null) {\n            try {\n                admin = adminBuilder.build();\n            } catch (Exception ex) {\n                System.err.println(ex.getClass() + \": \" + ex.getMessage());\n                throw new RuntimeException(\"Not able to create pulsar admin: \" + ex.getMessage(), ex);\n            }\n        }\n        return admin;\n    }\n\n    void rootParamsUpdated(PulsarAdminTool.RootParams newParams) {\n        final RootParamsKey newParamsKey = RootParamsKey.fromRootParams(newParams);\n        if (newParamsKey.equals(currentParamsKey)) {\n            return;\n        }\n        applyRootParamsToAdminBuilder(adminBuilder, newParams);\n        currentParamsKey = newParamsKey;\n        if (admin != null) {\n            admin.close();\n        }\n        this.admin = null;\n    }\n","sourceCodeStart":55,"sourceCodeEnd":91,"githubUrl":"https://github.com/apache/pulsar/blob/820761864ed8e2a7d2e52dd9763ad2ae117c1395/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/PulsarAdminSupplier.java#L55-L91","documentation":"Lazy-initialization failure in PulsarAdminSupplier.get: building the cached PulsarAdmin client (adminBuilder.build()) threw — bad service URL, TLS config, or auth settings — and the underlying exception message (with its class printed to stderr) is rethrown so the CLI command aborts; the admin builder configuration is the faulty input.","triggerScenarios":"Thrown at pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/PulsarAdminSupplier.java:73 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the admin service URL and auth configuration","Check network reachability of the admin endpoint"],"exampleFix":null,"handlingStrategy":"try-catch","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"}