{"record":{"id":"fbe60ad699e7df7d","repo":"risingwavelabs/risingwave","slug":"multi-line-string-type-not-supported","errorCode":null,"errorMessage":"MULTI LINE STRING type not supported","messagePattern":"MULTI LINE STRING type not supported","errorType":"validation","errorClass":"ConnectorError","httpStatus":null,"severity":"error","filePath":"src/connector/src/source/cdc/external/mysql.rs","lineNumber":438,"sourceCode":"            return Err(anyhow!(\"SET type not supported\").into());\n        }\n        ColumnType::Geometry(_) => {\n            return Err(anyhow!(\"GEOMETRY type not supported\").into());\n        }\n        ColumnType::Point(_) => {\n            return Err(anyhow!(\"POINT type not supported\").into());\n        }\n        ColumnType::LineString(_) => {\n            return Err(anyhow!(\"LINE string type not supported\").into());\n        }\n        ColumnType::Polygon(_) => {\n            return Err(anyhow!(\"POLYGON type not supported\").into());\n        }\n        ColumnType::MultiPoint(_) => {\n            return Err(anyhow!(\"MULTI POINT type not supported\").into());\n        }\n        ColumnType::MultiLineString(_) => {\n            return Err(anyhow!(\"MULTI LINE STRING type not supported\").into());\n        }\n        ColumnType::MultiPolygon(_) => {\n            return Err(anyhow!(\"MULTI POLYGON type not supported\").into());\n        }\n        ColumnType::GeometryCollection(_) => {\n            return Err(anyhow!(\"GEOMETRY COLLECTION type not supported\").into());\n        }\n        ColumnType::Unknown(_) => {\n            return Err(anyhow!(\"Unknown MySQL data type\").into());\n        }\n    };\n\n    Ok(dtype)\n}\n\npub struct MySqlExternalTableReader {\n    rw_schema: Schema,\n    pk_indices: Vec<usize>,","sourceCodeStart":420,"sourceCodeEnd":456,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/connector/src/source/cdc/external/mysql.rs#L420-L456","documentation":"MULTILINESTRING is not representable in RisingWave's CDC schema mapping, so the mapper raises this error during type conversion. It prevents the table/source from being created with unsupported geometry.","triggerScenarios":"parse_schema_change or connect sees a MULTILINESTRING column in the MySQL table schema.","commonSituations":"Route networks, river/highway sets in GIS tables; CDC pipeline fails at creation or when such a column is added upstream.","solutions":["Drop the column from the replicated table.","Serialize to WKT text upstream and replicate the text form.","Use a batch/non-CDC connector for geometry-heavy tables.","Check RisingWave releases for spatial support."],"exampleFix":"// before\nCREATE TABLE networks (id INT PRIMARY KEY, lines MULTILINESTRING);\n// after\nCREATE TABLE networks (id INT PRIMARY KEY, lines_wkt TEXT AS (ST_AsText(lines)));","handlingStrategy":"validation","validationCode":"if col.data_type.eq_ignore_ascii_case(\"MULTILINESTRING\") {\n    return Err(format!(\"column '{}' is MULTILINESTRING; unsupported for MySQL CDC\", col.name));\n}","typeGuard":null,"tryCatchPattern":"match create_mysql_cdc_table().await {\n    Err(e) if e.to_string().contains(\"MULTI LINE STRING\") => eprintln!(\"Convert MULTILINESTRING to WKT text upstream\"),\n    other => other?,\n}","preventionTips":["Audit GIS tables before enabling CDC.","Store line networks as WKT text when replication is needed.","Watch RisingWave changelog for spatial CDC support."],"tags":["cdc","mysql","unsupported-type","spatial"],"backgroundTag":"unsupported-enum-value","analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}