apache/seatunnel · error · SeaTunnelRuntimeException

COMMON-17

COMMON-17

Error message

'${identifier}' unsupported convert type '${dataType}' of '${field}' to SeaTunnel data type.

What it means

VerticaTypeMapper.mapping() maps a Vertica column type to a SeaTunnel type while reading. Spatial types (VERTICA_GEOMETRY), VERTICA_UNKNOWN and any unrecognized type hit the default branch and throw CommonError.convertToSeaTunnelTypeError with the type and column name.

Source

Thrown at seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/dialect/vertica/VerticaTypeMapper.java:170

                return LocalTimeType.LOCAL_TIME_TYPE;
            case VERTICA_DATETIME:
            case VERTICA_TIMESTAMP:
                return LocalTimeType.LOCAL_DATE_TIME_TYPE;

            case VERTICA_TINYBLOB:
            case VERTICA_MEDIUMBLOB:
            case VERTICA_BLOB:
            case VERTICA_LONGBLOB:
            case VERTICA_VARBINARY:
            case VERTICA_BINARY:
                return PrimitiveByteArrayType.INSTANCE;

                // Doesn't support yet
            case VERTICA_GEOMETRY:
            case VERTICA_UNKNOWN:
            default:
                final String jdbcColumnName = metadata.getColumnName(colIndex);
                throw CommonError.convertToSeaTunnelTypeError(
                        DatabaseIdentifier.VERTICA, type, jdbcColumnName);
        }
    }
}

View on GitHub (pinned to cf67b549a7)

Solutions

  1. Cast spatial columns to text in the query: SELECT ST_AsText(geom) AS geom_wkt FROM t.
  2. Create a view excluding/casting unsupported columns and read from the view.
  3. Restrict the query to supported columns only.
  4. Add a mapper case for the type if it can be represented and contribute upstream.

Example fix

// before: SELECT * FROM shapes (has GEOMETRY col)
// after
SELECT id, ST_AsText(shape) AS shape_wkt FROM shapes
Defensive patterns

Strategy: validation

Validate before calling

-- Find spatial/unsupported Vertica columns before reading
SELECT column_name, data_type
FROM v_catalog.columns
WHERE table_name = 'my_table'
  AND data_type IN ('GEOMETRY','GEOGRAPHY');

Try / catch

try {
    sourceReader.read();
} catch (SeaTunnelRuntimeException e) {
    if (e.getMessage().contains("unsupported convert type")) {
        // rewrite query with ST_AsText(geom) or a view, then retry
    } else { throw e; }
}

Prevention

When it happens

Trigger: Reading a Vertica table containing GEOMETRY/GEOGRAPHY columns, or columns whose reported type is unknown/unrecognized by the mapper.

Common situations: GIS workloads with spatial columns in Vertica; tables created by third-party tools with exotic types; connector version lacking mappings for newer Vertica types.

Related errors


AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10). Data as JSON: /api/errors/415305cae910a1b3. Report an issue: GitHub.