risingwavelabs/risingwave · error
additional column is not supported for connector {}, accepta
Error message
additional column is not supported for connector {}, acceptable connectors: {:?} What it means
When creating a source/table with additional columns (e.g. #partition, #offset, message headers), build_additional_column_desc looks up the connector in COMPATIBLE_ADDITIONAL_COLUMNS. If the connector supports no additional columns at all and it is a CDC backfill table (None, true branch), creation fails naming the connector and the acceptable connectors list.
Source
Thrown at src/connector/src/parser/additional_columns.rs:163
pub fn build_additional_column_desc(
column_id: ColumnId,
connector_name: &str,
additional_col_type: &str,
column_alias: Option<String>,
inner_field_name: Option<&str>,
data_type: Option<&DataType>,
reject_unknown_connector: bool,
is_cdc_backfill_table: bool,
) -> ConnectorResult<ColumnDesc> {
let compatible_columns = match (
get_supported_additional_columns(connector_name, is_cdc_backfill_table),
reject_unknown_connector,
) {
(Some(compat_cols), _) => compat_cols,
(None, false) => &COMMON_COMPATIBLE_ADDITIONAL_COLUMNS,
(None, true) => {
bail!(
"additional column is not supported for connector {}, acceptable connectors: {:?}",
connector_name,
COMPATIBLE_ADDITIONAL_COLUMNS.keys(),
);
}
};
if !compatible_columns.contains(additional_col_type) {
bail!(
"additional column type {} is not supported for connector {}, acceptable column types: {:?}",
additional_col_type,
connector_name,
compatible_columns
);
}
let column_name = column_alias.unwrap_or_else(|| {
gen_default_addition_col_name(
connector_name,View on GitHub (pinned to 6469eb736d)
Solutions
- Use a supported connector (check the acceptable connectors list in the message)
- Remove the additional column from the table definition
- Upgrade RisingWave — connector support for additional columns grows over time
Example fix
// before CREATE TABLE t (...) WITH (connector='my_connector', include offset AS #offset); // after CREATE TABLE t (...) WITH (connector='kafka', include offset AS #offset);
Defensive patterns
Strategy: validation
Validate before calling
const SUPPORTED = ['kafka','pulsar','kinesis','nats','mqtt','google_pubsub'];
function canAddColumns(connector) {
if (!SUPPORTED.includes(connector)) throw new Error(`additional column unsupported for ${connector}`);
} Try / catch
try {
await rw.query(ddl);
} catch (e) {
if (/additional column is not supported for connector/.test(e.message)) {
// drop INCLUDE clauses or switch connector and retry
} else throw e;
} Prevention
- Only add INCLUDE columns on connectors listed in docs as supporting them
- Verify connector name spelling in WITH options
- For CDC backfill tables, confirm the connector supports offset columns
When it happens
Trigger: CREATE TABLE ... WITH (connector='<name>', ...) requesting an additional column (or using CDC backfill which implicitly adds offset columns) for a connector not present in COMPATIBLE_ADDITIONAL_COLUMNS.
Common situations: Using additional columns like #key or #timestamp with a connector that doesn't support them (e.g. some CDC or custom connectors); typo in the connector name; using a CDC backfill table with an incompatible connector.
Related errors
- additional column type {} is not supported for connector {},
- unsupported encoding for Upsert
- Unsupported combination of format {:?} and encode {:?}
- Nats connection status is not connected, current status is {
- Unknown source connector: {connector_name}
AI-assisted analysis of risingwavelabs/risingwave@6469eb736d (2026-09-11).
Data as JSON: /api/errors/4b539d21bbc18d32.
Report an issue: GitHub.