Thanks Cyrus! I think this change is a good step in hardening the API. I do believe that APIs should be defined by functionality and not performance characteristics, so I'd prefer using List<> over ArrayList<> (the alternative you mention in rejected). That also gives us leeway in the future to swap implementations without breaking compatibility (e.g. we want to pass an ImmutableList or Collections.unmodifiableList instead of ArrayList or discover some unknown more efficient implementation than ArrayList).
Almog On Sat, Aug 3, 2019 at 7:01 PM Cyrus Vafadari <cy...@confluent.io> wrote: > Hi all, > > I've written a KIP to update the SinkTask abstract class to specify that > the `put` method will take ArrayList. I think this will greatly simplify > connector development, so you aren't limited to the simplest iterations. It > will also harden the ordering guarantees of the API. > > Looking forward to the feedback! > > > https://cwiki.apache.org/confluence/display/KAFKA/KIP-502%3A+Connect+SinkTask.put%28...%29+to+specify+ArrayList%3CSinkRecord%3E+in+Signature > > Cyrus >