Hi Ashwin,

Thanks for the clarification, which is certainly useful. However, it's not
an actual use case. What will users try to do now that would have been
difficult/impossible in the future because of this ambiguity? I ask because
the Jira ticket linked in the KIP is very old and may be obsolete, and
there seems to be a much simpler way to address the edge case of a class
implementing multiple plugin interfaces: we can just expose each type in
the REST API, instead of picking one at random.

Cheers,

Chris

On Thu, Jun 23, 2022 at 12:55 AM Ashwin <apan...@confluent.io.invalid>
wrote:

> Hi Chris,
>
> Thanks for the quick response.
>
> > It seems pretty straightforward to get this via client-side filtering
>
> I assume that you meant  GET /collector-plugins + jq filtering on type
> attribute.
>
> One issue that I see with that approach is that we cannot filter plugins if
> they implement more than one of Converter, HeaderConverter, Sink, Source
> interfaces.
>
> The type field in PluginDesc field is set based on the order of enum values
> in PluginType -
>
> https://github.com/apache/kafka/blob/22534424d22e5a4d4d512b0ac1b5f312b867a5bf/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/isolation/PluginType.java#L49
> .
>
> Eg: org.apache.kafka.connect.json.JsonConverter implements both Converter
> and HeaderConverter interfaces, but the type value is always set to
> Converter as that value is defined first in PluginType enum.
>
> The new API will list JsonConverter when we query either for
> HeaderConverter or Converter plugin types.
>
> Thanks,
> Ashwin
>
>
> On Thu, Jun 23, 2022 at 12:03 AM Chris Egerton <fearthecel...@gmail.com>
> wrote:
>
> > Hi Ashwin,
> >
> > Can you provide a use case for this new behavior? It seems pretty
> > straightforward to get this via client-side filtering, I'm a little
> > skeptical that we need to implement it server-side.
> >
> > Cheers,
> >
> > Chris
> >
> > On Wed, Jun 22, 2022 at 4:25 AM Ashwin <apan...@confluent.io.invalid>
> > wrote:
> >
> > > Hello Folks,
> > >
> > > I have picked up a newbie task and request you provide your valuable
> > > feedback.
> > >
> > > KIP:
> > >
> > >
> >
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-850%3A+REST+API+for+filtering+Connector+plugins+by+type
> > > Initial PR: https://github.com/apache/kafka/pull/12330
> > >
> > > Though https://issues.apache.org/jira/browse/KAFKA-4279 was for an
> > > endpoint
> > > to list converter plugins, I propose that we implement a generic
> "filter"
> > > API which will list connector plugins matched by type (one of
> > > SOURCE,SINK,CONVERTER,HEADER_CONVERTER).
> > >
> > >
> > > Thanks,
> > > Ashwin
> > >
> >
>

Reply via email to