{"record":{"id":"16efe16ed1a580d8","repo":"risingwavelabs/risingwave","slug":"unsupported-sink-connector-16efe1","errorCode":null,"errorMessage":"unsupported sink connector {}","messagePattern":"unsupported sink connector (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/stream/src/from_proto/sink.rs","lineNumber":265,"sourceCode":"\n        let connector = {\n            let sink_type = properties_with_secret\n                .get(CONNECTOR_TYPE_KEY)\n                .ok_or_else(|| {\n                    StreamExecutorError::from((\n                        SinkError::Config(anyhow!(\"missing config: {}\", CONNECTOR_TYPE_KEY)),\n                        sink_id,\n                    ))\n                })?;\n\n            let sink_type_str = sink_type.to_lowercase();\n            match_sink_name_str!(\n                sink_type_str.as_str(),\n                SinkType,\n                Ok(SinkType::SINK_NAME),\n                |other: &str| {\n                    Err(StreamExecutorError::from((\n                        SinkError::Config(anyhow!(\"unsupported sink connector {}\", other)),\n                        sink_id,\n                    )))\n                }\n            )?\n        };\n\n        let (sink_param, columns) = build_sink_param(sink_desc, properties_with_secret, connector)?;\n\n        let sink_write_param = SinkWriterParam {\n            executor_id: params.executor_id,\n            vnode_bitmap: params.vnode_bitmap.clone(),\n            meta_client: params.env.meta_client().map(SinkMetaClient::MetaClient),\n            extra_partition_col_idx: sink_desc.extra_partition_col_idx.map(|v| v as usize),\n\n            actor_id: params.actor_context.id,\n            sink_id,\n            sink_name,\n            connector: connector.to_owned(),","sourceCodeStart":247,"sourceCodeEnd":283,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/stream/src/from_proto/sink.rs#L247-L283","documentation":"The `connector` property was present but its value does not match any registered sink connector name, so the `match_sink_name_str!` macro's fallback returns this error. The sink executor cannot build an unknown connector type and fails the executor at startup.","triggerScenarios":"`new_boxed_executor` parses the `connector` property and the resulting string is not one of the compiled-in connector names — e.g. `connector = 'kafaka'`, a connector name from a different RisingWave edition/build, or extra whitespace/casing that still fails the match.","commonSituations":"Misspelled connector names; using a connector available only in a commercial/newer build on an OSS build; copy-pasted config from another system; case/whitespace issues beyond the macro's lowercasing.","solutions":["Use a valid connector name (e.g. `kafka`, `redis`, `elasticsearch`, `iceberg`, `snowflake`, `pubsub`, `kinesis`, etc.) — check the docs for the exact list.","Fix typos in the `connector` value and recreate the sink.","Verify the connector is supported in your RisingWave build/edition; upgrade if using a newer connector.","Trim whitespace and use lowercase for the connector value."],"exampleFix":"-- before\nCREATE SINK s FROM t WITH (connector = 'kafaka', ...);\n-- after\nCREATE SINK s FROM t WITH (connector = 'kafka', ...);","handlingStrategy":"validation","validationCode":"-- List supported connectors (docs / SHOW) and validate the value before creating the sink\nSELECT name FROM rw_catalog.rw_connectors; -- or consult supported-sinks documentation","typeGuard":null,"tryCatchPattern":"// Catch the unsupported-connector error at sink creation and suggest valid names\ntry {\n    createSink({ connector: 'kafaka' });\n} catch (e) {\n    if (String(e).includes('unsupported sink connector')) {\n        // fall back to a valid connector name from the supported list\n    }\n}","preventionTips":["Copy connector names from the official supported-sinks list rather than typing them.","Use lowercase names with no surrounding whitespace.","Confirm the connector exists in your build/edition (OSS vs feature-gated).","Keep RisingWave upgraded if you depend on newly added connectors."],"tags":["sink","configuration","connector","unsupported"],"backgroundTag":"unsupported-config-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"}