Jackie-Jiang commented on code in PR #12813:
URL: https://github.com/apache/pinot/pull/12813#discussion_r1558283670


##########
pinot-spi/src/main/java/org/apache/pinot/spi/stream/StreamMessageDecoder.java:
##########
@@ -44,9 +45,10 @@ public interface StreamMessageDecoder<T> {
    * @param fieldsToRead The fields to read from the source stream. If blank, 
reads all fields (only for AVRO/JSON
    *                     currently)
    * @param topicName Topic name of the stream
+   * @param tableSchema Pinot schema of the table
    * @throws Exception If an error occurs
    */
-  void init(Map<String, String> props, Set<String> fieldsToRead, String 
topicName)
+  void init(Map<String, String> props, Set<String> fieldsToRead, String 
topicName, Schema tableSchema)

Review Comment:
   This is changing a stable interface which is designed for user to plug-in 
custom 
   implementations.
   I'm thinking maybe we can provide a new `void init(TableConfig tableConfig, 
Schema schema)`, and make it unsupported by default. Then we mark the current 
one as deprecated, and in the `StreamDecoderProvider` first try to init with 
the new API, and fallback to the old one if the new one is not supported yet.



-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to