{"record":{"id":"765f584daf8f68b7","repo":"apache/pulsar","slug":"the-driver-driver-is-not-supported-possible-v","errorCode":null,"errorMessage":"The driver ${driver} is not supported, (Possible values: ${driverNames}).","messagePattern":"The driver (.+?) is not supported, \\(Possible values: (.+?)\\)\\.","errorType":"validation","errorClass":"ParameterException","httpStatus":null,"severity":"error","filePath":"pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdTopicPolicies.java","lineNumber":1865,"sourceCode":"        public final List<String> driverNames = OffloadPoliciesImpl.DRIVER_NAMES;\n\n        public boolean driverSupported(String driver) {\n            return driverNames.stream().anyMatch(d -> d.equalsIgnoreCase(driver));\n        }\n\n        public boolean isS3Driver(String driver) {\n            if (StringUtils.isEmpty(driver)) {\n                return false;\n            }\n            return driver.equalsIgnoreCase(driverNames.get(0)) || driver.equalsIgnoreCase(driverNames.get(1));\n        }\n\n        @Override\n        void run() throws PulsarAdminException {\n            String persistentTopic = validatePersistentTopic(topicName);\n\n            if (!driverSupported(driver)) {\n                throw new ParameterException(\"The driver \" + driver + \" is not supported, \"\n                        + \"(Possible values: \" + String.join(\",\", driverNames) + \").\");\n            }\n\n            if (isS3Driver(driver) && Strings.isNullOrEmpty(region) && Strings.isNullOrEmpty(endpoint)) {\n                throw new ParameterException(\n                        \"Either s3ManagedLedgerOffloadRegion or s3ManagedLedgerOffloadServiceEndpoint must be set\"\n                                + \" if s3 offload enabled\");\n            }\n            positiveCheck(\"maxBlockSizeInBytes\", maxBlockSizeInBytes);\n            maxValueCheck(\"maxBlockSizeInBytes\", maxBlockSizeInBytes, Integer.MAX_VALUE);\n            positiveCheck(\"readBufferSizeInBytes\", readBufferSizeInBytes);\n            maxValueCheck(\"readBufferSizeInBytes\", readBufferSizeInBytes, Integer.MAX_VALUE);\n\n            OffloadedReadPriority offloadedReadPriority = OffloadPoliciesImpl.DEFAULT_OFFLOADED_READ_PRIORITY;\n\n            if (this.offloadReadPriorityStr != null) {\n                try {\n                    offloadedReadPriority = OffloadedReadPriority.fromString(this.offloadReadPriorityStr);","sourceCodeStart":1847,"sourceCodeEnd":1883,"githubUrl":"https://github.com/apache/pulsar/blob/820761864ed8e2a7d2e52dd9763ad2ae117c1395/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdTopicPolicies.java#L1847-L1883","documentation":"The set-offload-policies command checks the chosen offload driver against the list of drivers supported by this CLI build (driverSupported). Unsupported names (including typos or drivers from a different Pulsar version/distribution) are rejected with this ParameterException listing the possible values.","triggerScenarios":"Running set-offload-policies with --driver set to a misspelled name, an enterprise-only/distribution-specific driver (e.g. azureblob, aliyun-oss on a build without that provider), or a driver renamed between Pulsar versions (e.g. s3 vs aws-s3).","commonSituations":"Following docs for a different Pulsar version where the driver string changed; using cloud-specific driver names copied from vendor guides; builds excluding optional offload provider modules so a nominally valid driver is absent.","solutions":["Use one of the driver names printed in the error (e.g. s3, aws-s3, gcs, filesystem depending on your build)","Check your Pulsar version's documentation for the exact --driver strings and available provider modules","If the driver exists upstream but not in your build, use a distribution that bundles the corresponding offload provider"],"exampleFix":"// before\npulsar-admin topics set-offload-policies my-topic --driver s3ManagedLedgerOffloadDriver --bucket my-bucket\n// after\npulsar-admin topics set-offload-policies my-topic --driver s3 --bucket my-bucket --region us-east-1","handlingStrategy":"validation","validationCode":"if (!Arrays.asList(\"s3\",\"aws-s3\",\"gcs\",\"azureblob\",\"filesystem\",\"aliyun-oss\").contains(driver)) {\n    throw new IllegalArgumentException(\"unsupported offload driver: \" + driver);\n} // verify against your build's supported list printed in the error","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Use the driver names printed by the error or --help, not vendor docs","Pin CLI and broker to the same Pulsar version so driver sets match","Confirm your distribution bundles the offload provider module"],"tags":["cli","pulsar-admin","offload","argument-validation"],"backgroundTag":"invalid-enum-value","analyzedSha":"820761864ed8e2a7d2e52dd9763ad2ae117c1395","analyzedAt":"2026-09-06T00:14:20.138Z","contentChangedAt":"2026-09-06T00:14:20.138Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}