DanielCarter-stack commented on issue #10425: URL: https://github.com/apache/seatunnel/issues/10425#issuecomment-3831160575
<!-- code-pr-reviewer --> Thanks for raising this feature request. I've verified that the 14 listed source connectors (Cassandra, Elasticsearch, Hudi, InfluxDB, IoTDB, MongoDB, Neo4j, OpenMldb, Pulsar, RabbitMQ, Redis, RocketMQ, AmazonDynamoDB) are indeed missing multi-table support. **Implementation references:** - Kafka connector provides the standard pattern for `TABLE_CONFIGS` usage in `KafkaSourceFactory.optionRule()` and `KafkaSourceConfig.createMapConsumerMetadata()` (connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/) - API definition: `TableSchemaOptions.TABLE_CONFIGS` in `seatunnel-api/src/main/java/org/apache/seatunnel/api/options/table/TableSchemaOptions.java` (L36-L42) **Key requirements for implementation:** 1. Add `TABLE_CONFIGS` option to connector's `optionRule()` (preferably with `exclusive` constraint against single-table options) 2. Modify source constructor to accept `List<CatalogTable>` 3. Implement `getProducedCatalogTables()` to return multi-table metadata 4. Handle multiple table/collection/topic configurations in source reader initialization **Note:** `TABLE_LIST` (deprecated, see `CatalogOptions.TABLE_LIST`) should not be used for new implementations. For contributors: please reference the existing RabbitMQ (connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/source/RabbitmqSourceFactory.java) and similar connectors as starting points. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
