{"record":{"id":"62dbd870133ba3ab","repo":"apache/seatunnel","slug":"config-validation-failed-62dbd8","errorCode":"CONFIG_VALIDATION_FAILED","errorMessage":"Binary mode does not support pagination. Please remove pagination configuration or use text mode.","messagePattern":"Binary mode does not support pagination\\. Please remove pagination configuration or use text mode\\.","errorType":"error_code","errorClass":"HttpConnectorException","httpStatus":null,"severity":"error","filePath":"seatunnel-connectors-v2/connector-http/connector-http-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/http/source/HttpSourceReader.java","lineNumber":141,"sourceCode":"            SingleSplitReaderContext context,\n            DeserializationSchema<SeaTunnelRow> deserializationSchema,\n            JsonField jsonField,\n            String contentJson,\n            PageInfo pageInfo,\n            boolean binaryMode,\n            long binaryChunkSize) {\n        this.context = context;\n        this.httpParameter = httpParameter;\n        this.deserializationCollector = new DeserializationCollector(deserializationSchema);\n        this.jsonField = jsonField;\n        this.contentJson = contentJson;\n        this.pageInfoOptional = Optional.ofNullable(pageInfo);\n        this.rawBody = httpParameter.getBody();\n        this.binaryMode = binaryMode;\n        this.binaryChunkSize = binaryChunkSize;\n\n        if (binaryMode && pageInfo != null) {\n            throw new HttpConnectorException(\n                    HttpConnectorErrorCode.CONFIG_VALIDATION_FAILED,\n                    \"Binary mode does not support pagination. \"\n                            + \"Please remove pagination configuration or use text mode.\");\n        }\n    }\n\n    @Override\n    public void open() {\n        httpClient = new HttpClientProvider(httpParameter);\n    }\n\n    @Override\n    public void close() throws IOException {\n        if (Objects.nonNull(httpClient)) {\n            httpClient.close();\n        }\n    }\n","sourceCodeStart":123,"sourceCodeEnd":159,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-connectors-v2/connector-http/connector-http-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/http/source/HttpSourceReader.java#L123-L159","documentation":"HttpSourceReader validates that binary mode and pagination are mutually exclusive. Binary mode reads the HTTP response body as raw streamed bytes, which cannot be paginated, so if a user configures both a binary format and pagination, the reader refuses to start with this CONFIG_VALIDATION_FAILED error.","triggerScenarios":"Creating an HttpSourceReader when binaryMode is true and a pageInfo (pagination) configuration is present in the source config.","commonSituations":"Users enabling format=binary (or json->binary switch) for downloading files while keeping the page_type/page_path settings left over from a previous text-mode JSON pagination config.","solutions":["Remove the pagination block (page_type, page_path, etc.) from the HTTP source config","Or disable binary mode (use a text format like json/text) if you actually need pagination"],"exampleFix":"// before\nformat = \"binary\"\npage_info = { page_type = \"HNPAGE\", page_field = \"_links.next\" }\n// after\nformat = \"binary\"","handlingStrategy":"validation","validationCode":"if (binaryMode && pageInfo != null) { throw new IllegalStateException(\"Remove pagination config or disable binary mode\"); }","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Audit HTTP source configs for page_* keys whenever format is binary","Document that pagination and binary mode are mutually exclusive","Fail fast in config parsing pipelines before job submission"],"tags":["http","config-validation","pagination","binary"],"backgroundTag":"conflicting-config-options","analyzedSha":"cf67b549a7a6c35fa0beb12d83c62892427ea919","analyzedAt":"2026-09-10T21:44:55.265Z","contentChangedAt":"2026-09-10T21:44:55.265Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}