{"record":{"id":"c75f69d83c7cca16","repo":"apache/seatunnel","slug":"type-has-a-maximum-precision-of-536870911-in","errorCode":null,"errorMessage":"Type '{}' has a maximum precision of 536870911 in Vertica. Due to limitations in the seatunnel type system, the precision will be set to 2147483647.","messagePattern":"Type '(.+?)' has a maximum precision of 536870911 in Vertica\\. Due to limitations in the seatunnel type system, the precision will be set to 2147483647\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/vertica/VerticaTypeMapper.java","lineNumber":143,"sourceCode":"            case VERTICA_FLOAT:\n                return BasicType.FLOAT_TYPE;\n            case VERTICA_FLOAT_UNSIGNED:\n                LOG.warn(\"{} will probably cause value overflow.\", VERTICA_FLOAT_UNSIGNED);\n                return BasicType.FLOAT_TYPE;\n            case VERTICA_DOUBLE:\n                return BasicType.DOUBLE_TYPE;\n            case VERTICA_DOUBLE_UNSIGNED:\n                LOG.warn(\"{} will probably cause value overflow.\", VERTICA_DOUBLE_UNSIGNED);\n                return BasicType.DOUBLE_TYPE;\n            case VERTICA_CHAR:\n            case VERTICA_TINYTEXT:\n            case VERTICA_MEDIUMTEXT:\n            case VERTICA_TEXT:\n            case VERTICA_VARCHAR:\n            case VERTICA_JSON:\n                return BasicType.STRING_TYPE;\n            case VERTICA_LONGTEXT:\n                LOG.warn(\n                        \"Type '{}' has a maximum precision of 536870911 in Vertica. \"\n                                + \"Due to limitations in the seatunnel type system, \"\n                                + \"the precision will be set to 2147483647.\",\n                        VERTICA_LONGTEXT);\n                return BasicType.STRING_TYPE;\n            case VERTICA_DATE:\n                return LocalTimeType.LOCAL_DATE_TYPE;\n            case VERTICA_TIME:\n                return LocalTimeType.LOCAL_TIME_TYPE;\n            case VERTICA_DATETIME:\n            case VERTICA_TIMESTAMP:\n                return LocalTimeType.LOCAL_DATE_TIME_TYPE;\n\n            case VERTICA_TINYBLOB:\n            case VERTICA_MEDIUMBLOB:\n            case VERTICA_BLOB:\n            case VERTICA_LONGBLOB:\n            case VERTICA_VARBINARY:","sourceCodeStart":125,"sourceCodeEnd":161,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/vertica/VerticaTypeMapper.java#L125-L161","documentation":"Vertica LONG TEXT columns can have precision up to 536,870,911 (~512MB), but SeaTunnel's type system caps string precision at Integer.MAX_VALUE (2,147,483,647). The mapper logs this warning and returns STRING_TYPE with the capped precision. The data type is still STRING; only the declared precision differs.","triggerScenarios":"Catalog/schema evolution reads of a Vertica LONG TEXT (or LONG VARCHAR) column; the warning fires once per mapping of that type.","commonSituations":"Reading tables with large document/blob-in-text columns; downstream sinks that validate declared precision may reject or truncate.","solutions":["Ignore the warning if the downstream sink does not enforce precision","Reduce column size in Vertica to VARCHAR(n) within the representable precision","Cast the column to VARCHAR in the source query to control the declared precision"],"exampleFix":"// before: LONG TEXT column -> precision 536870911 warned/capped\n// after: query-side cast\nSELECT CAST(long_col AS VARCHAR(1000000)) AS long_col FROM t;","handlingStrategy":"fallback","validationCode":"// Pre-check LONG TEXT declared precision downstream:\nif (columnType.equals(\"LONG TEXT\") && sinkEnforcesPrecision(precision)) {\n    // cast to bounded VARCHAR in the source query\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Cast LONG TEXT to VARCHAR(n) in source SQL when downstream validates precision","Check sink connector precision handling for STRING types","Document expected precision cap when syncing large text columns","Keep text columns under ~2GB boundaries to avoid related limits"],"tags":["jdbc","vertica","precision","string-type"],"backgroundTag":"value-out-of-range","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"}