thealmightygrant opened a new pull request #7620:
URL: https://github.com/apache/pinot/pull/7620


   ## Description
   
   This is a WIP for adding a Stream Decoder that can read Thrift. I used the 
[SimpleAvroMessageDecoder](https://github.com/apache/pinot/blob/9275a430049ff0d2888cb353fc7ef369d53a171c/pinot-plugins/pinot-input-format/pinot-avro/src/main/java/org/apache/pinot/plugin/inputformat/avro/SimpleAvroMessageDecoder.java),
 the 
[JSONMessageDecoder](https://github.com/apache/pinot/blob/7e9ca6a5a4afe0d4e283ac1307c45430e474cbf2/pinot-plugins/pinot-input-format/pinot-json/src/main/java/org/apache/pinot/plugin/inputformat/json/JSONMessageDecoder.java),
 and the 
[ThriftDeserialization](https://github.com/apache/druid/blob/df4894afff5efb31264e98f39f4f14dd934ecc3d/extensions-contrib/thrift-extensions/src/main/java/org/apache/druid/data/input/thrift/ThriftDeserialization.java#L106)
 code from Apache Druid as a basis for getting this first pass together.
   
   I am working on some tests, but it may be a few weeks until I get back to 
this PR, so if anyone has some time between now and then to give me some notes 
or to get this over the finish line, then please do so. 
   
   ## Upgrade Notes
   Does this PR prevent a zero down-time upgrade? (Assume upgrade order: 
Controller, Broker, Server, Minion)
   * [ ] Yes (Please label as **<code>backward-incompat</code>**, and complete 
the section below on Release Notes)
   
   Does this PR fix a zero-downtime upgrade introduced earlier?
   * [ ] Yes (Please label this as **<code>backward-incompat</code>**, and 
complete the section below on Release Notes)
   
   Does this PR otherwise need attention when creating release notes? Things to 
consider:
   * [x] Yes (Please label this PR as **<code>release-notes</code>** and 
complete the section on Release Notes)
   ## Release Notes
   There is a new props configuration named 
`stream.kafka.decoder.prop.thrift.class`. One way in which you can include this 
class is by placing it in the `CLASSPATH` by adding it to the [plugins 
folder](https://github.com/apache/pinot/blob/0500c121a115b4412b7a5b08452359e76d93b095/pinot-tools/src/main/resources/appAssemblerScriptTemplate#L110-L141).
 In the default case, this will be at :`/opt/pinot/plugins`.
   
   ## Documentation
   I have not adding this to the documentation yet. I will do it on my next 
pass.


-- 
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