Hi Maxim,

Thanks for the KIP!

This is not my area, but I have some questions/comments:

1. CMIIW, but I believe that specifying this custom parser class should be done 
via configuration, not system properties or environment variables, right?
2. What happens if the custom parser can’t be loaded? Say the class isn’t found 
on the classpath, etc.?
3. What is the behavior around exception handling? Right now the parser handles 
malformed data, but what if the custom parser wants to enforce a policy 
requirement?
4. Given the above, I do believe there are some additional cases that deserve 
mentioning in the test plan section.

Thanks,
Kirk

> On Aug 29, 2024, at 7:25 AM, Maxim Fortun <m...@maxf.net> wrote:
> 
> Hi all,
> I would like to introduce a minor code change to allow custom produce request 
> parsers. 
> 
> KIP: 
> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=318606528
> JIRA: https://issues.apache.org/jira/browse/KAFKA-17348
> PR: https://github.com/apache/kafka/pull/16812
> 
> There are many potential benefits for this feature. A custom produce request 
> parser would allow to intercept all incoming messages before they get into 
> the broker and apply broker wide logic to the messages. This could be a 
> trace, a filter, a transform(such as lineage), forcing required headers 
> across all messages, compression, signing, encryption, or any other message 
> manipulation before it gets into the broker. 
> 
> Please take a look.
> Any and all feedback is greatly appreciated.
> Thanks,
> Max
> 
> 
> 
> 

Reply via email to