{"record":{"id":"21457cb7cfff51fb","repo":"apache/seatunnel","slug":"common-17-21457c","errorCode":"COMMON-17","errorMessage":"'${identifier}' unsupported convert type '${dataType}' of '${field}' to SeaTunnel data type.","messagePattern":"'(.+?)' unsupported convert type '(.+?)' of '(.+?)' to SeaTunnel data type\\.","errorType":"error_code","errorClass":"SeaTunnelRuntimeException","httpStatus":null,"severity":"error","filePath":"seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/catalog/StarRocksDataTypeConvertor.java","lineNumber":149,"sourceCode":"                return BasicType.STRING_TYPE;\n            case BINARY:\n            case VARBINARY:\n            case TINYBLOB:\n            case BLOB:\n            case MEDIUMBLOB:\n            case LONGBLOB:\n            case GEOMETRY:\n                return PrimitiveByteArrayType.INSTANCE;\n            case BIGINT_UNSIGNED:\n            case DECIMAL:\n            case DECIMAL_UNSIGNED:\n                Integer precision =\n                        MapUtils.getInteger(dataTypeProperties, PRECISION, DEFAULT_PRECISION);\n                Integer scale = MapUtils.getInteger(dataTypeProperties, SCALE, DEFAULT_SCALE);\n                return new DecimalType(precision, scale);\n                // TODO: support 'SET' & 'YEAR' type\n            default:\n                throw CommonError.convertToSeaTunnelTypeError(\n                        \"StarRocks\", mysqlType.toString(), field);\n        }\n    }\n\n    @Override\n    public MysqlType toConnectorType(\n            String field,\n            SeaTunnelDataType<?> seaTunnelDataType,\n            Map<String, Object> dataTypeProperties) {\n        SqlType sqlType = seaTunnelDataType.getSqlType();\n        // todo: verify\n        switch (sqlType) {\n            case ARRAY:\n            case MAP:\n            case ROW:\n            case STRING:\n                return MysqlType.VARCHAR;\n            case BOOLEAN:","sourceCodeStart":131,"sourceCodeEnd":167,"githubUrl":"https://github.com/apache/seatunnel/blob/cf67b549a7a6c35fa0beb12d83c62892427ea919/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/catalog/StarRocksDataTypeConvertor.java#L131-L167","documentation":"StarRocks catalog converter's toSeaTunnelType() throws this when a StarRocks (MySQL-protocol) column type has no SeaTunnel mapping. SET and YEAR are explicitly unsupported (TODO), and any other unmapped MysqlType reaches the default throw.","triggerScenarios":"toSeaTunnelType() is called for a StarRocks column whose MysqlType is SET, YEAR, or another type without a switch case — typically when reading StarRocks catalogs or schema sync.","commonSituations":"Tables using StarRocks SET or YEAR columns; catalog-based source ingestion of such tables; type list changes between StarRocks versions.","solutions":["Change the table schema or query to avoid SET/YEAR columns (e.g. cast SET to VARCHAR via group_concat, YEAR to INT)","Exclude those columns from the read/catalog sync","Add mapping cases for SET/YEAR in StarRocksDataTypeConvertor.toSeaTunnelType()"],"exampleFix":"-- before: SELECT y_col FROM t -- y_col YEAR\n-- after\nSELECT CAST(y_col AS INT) AS y_col FROM t","handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try {\n    SeaTunnelDataType<?> t = converter.toSeaTunnelType(field, mysqlType, props);\n} catch (SeaTunnelConvertException e) {\n    LOG.warn(\"Unmapped StarRocks type {} for {}\", mysqlType, field);\n    // fallback: skip column or cast to VARCHAR upstream\n}","preventionTips":["Report all unmapped columns in one pass instead of failing on the first one"],"tags":["starrocks","type-conversion","catalog"],"backgroundTag":"unsupported-dtype","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"}