Repository: risingwavelabs/risingwave (language: rust)

Issue:
feat(source): enable csv for kinesis connector
### Is your feature request related to a problem? Please describe.

We have a use case where we are streaming Snowplow User Behaviour events from a Kinesis source in CSV/TSV format.

### Describe the solution you'd like

Allow CSV format for the Kinesis source connector.

### Describe alternatives you've considered

We cannot change the format of the data in the Kinesis stream.

### Additional context

We have been maintaining an internal patch to RisingWave for some months and it has been working fine.


Discussion / hints:

Fix patch:
diff --git a/src/frontend/src/handler/create_source/validate.rs b/src/frontend/src/handler/create_source/validate.rs
index d20f6656ebead..0447faa72a26f 100644
--- a/src/frontend/src/handler/create_source/validate.rs
+++ b/src/frontend/src/handler/create_source/validate.rs
@@ -51,7 +51,7 @@ static CONNECTORS_COMPATIBLE_FORMATS: LazyLock<HashMap<String, HashMap<Format, V
                     Format::Canal => vec![Encode::Json],
                 ),
                 KINESIS_CONNECTOR => hashmap!(
-                    Format::Plain => vec![Encode::Json, Encode::Protobuf, Encode::Avro, Encode::Bytes],
+                    Format::Plain => vec![Encode::Json, Encode::Protobuf, Encode::Avro, Encode::Bytes, Encode::Csv],
                     Format::Upsert => vec![Encode::Json, Encode::Avro],
                     Format::Debezium => vec![Encode::Json],
                     Format::Maxwell => vec![Encode::Json],


Test patch: