Mike,

The bundles we include cannot have libs with know vulns and that last a
very long time.  That is a more pressing blocker.

As noted top of thread we all recognize the importance of being able to
integrate with Cassandra but including that must come with active mx
especially as it relates to vulns.

Thanks
Joe

On Fri, Mar 22, 2024 at 11:42 AM Mike Thomsen <mikerthom...@gmail.com>
wrote:

> The scope tag was probably copy pasta. You raise a valid point about the
> processor dependencies that completely slipped my mind. That said, I think
> it's premature to remove the cassandra bundle until we have a working
> replacement. I would consider that support a blocker for 2.X.
>
> On Fri, Mar 22, 2024 at 12:00 PM Matt Burgess <mattyb...@gmail.com> wrote:
>
> > David beat me to it :) IMO the only NAR that should have any dependencies
> > on Cassandra is the services NAR, not the processors or services API.
> >
> > On Fri, Mar 22, 2024 at 11:10 AM David Handermann <
> > exceptionfact...@apache.org> wrote:
> >
> > > Mike,
> > >
> > > Thanks for sharing the branch, it is helpful to have that as a
> > > reference example. Have you been able to exercise any of that approach
> > > at runtime?
> > >
> > > Based on what is there right now, attempting to mark the DataStax
> > > java-driver-core as provided does not look like it will work. It may
> > > pass unit tests, but runtime NAR class loading requires that classes
> > > be available in the same NAR, or in a parent NAR. That means when NiFi
> > > tries to load the Controller Service interface, it must have access to
> > > a version of the relevant Cassandra driver classes. By marking the
> > > dependency as provided, it will not be available in the API NAR, and
> > > thus not available when loading the service interface. Including it in
> > > the API NAR won't work either, because it conflicts with the ScyllaDB
> > > java-driver-core in the implementation NAR.
> > >
> > > This is the reason Matt and I highlighted for providing a layer of
> > > abstraction at the Controller Service API level.
> > >
> > > Regards,
> > > David Handermann
> > >
> > > On Fri, Mar 22, 2024 at 8:13 AM Mike Thomsen <mikerthom...@gmail.com>
> > > wrote:
> > > >
> > > > Work so far: https://github.com/MikeThomsen/nifi/tree/cql-changes
> > > >
> > > > On Thu, Mar 21, 2024 at 9:52 AM Mike Thomsen <mikerthom...@gmail.com
> >
> > > wrote:
> > > >
> > > > > Matt/David,
> > > > >
> > > > > By this evening, I should be at a point where I can share my
> branch.
> > It
> > > > > should be far enough along that y'all can see what I mean about how
> > > most of
> > > > > the changes really weren't that complicated. My sense is that if we
> > > > > collaborate on it, we can probably get it ready for a PR within a
> > week
> > > or
> > > > > two.
> > > > >
> > > > > It would probably be a good idea to plan to revisit the Cassandra
> > DMC's
> > > > > design and make it more flexible.
> > > > >
> > > > > One nice thing about the new DataStax driver is that it supports
> > > > > configuration by a very detailed configuration file format, so we
> can
> > > give
> > > > > users that option + combine it with EL/parameters (I envision an
> > option
> > > > > where the user puts EL in the file, we load the file, preprocess
> the
> > > EL and
> > > > > load that into the driver)
> > > > >
> > > > > On Wed, Mar 20, 2024 at 4:01 PM Mike Thomsen <
> mikerthom...@gmail.com
> > >
> > > > > wrote:
> > > > >
> > > > >> If it were that simple, they would probably have just gone with
> that
> > > > >> solution. That said, the API is functionally vendor agnostic at
> this
> > > point
> > > > >> at the Java API level. So I see no need to add abstraction above
> > > that. I've
> > > > >> got probably 2/3 of nifi-cassandra-bundle converted. Hitting a few
> > > pain
> > > > >> points where I'm having to dig deep into the docs to make
> progress,
> > > but so
> > > > >> far, so good.
> > > > >>
> > > > >> On Wed, Mar 20, 2024 at 2:38 PM Matt Burgess <
> mattyb...@apache.org>
> > > > >> wrote:
> > > > >>
> > > > >>> It would be interesting to see if you exclude the Scylla API JAR
> > > from the
> > > > >>> Scylla implementation and instead include DataStax's, if that
> > works.
> > > > >>> However I'm still leaning towards a vendor-agnostic API.
> > > > >>>
> > > > >>> On Wed, Mar 20, 2024 at 11:26 AM Mike Thomsen <
> > > mikerthom...@gmail.com>
> > > > >>> wrote:
> > > > >>>
> > > > >>> > At first glance, the package names look identical to me:
> > > > >>> >
> > > > >>> >
> > > https://java-driver.docs.scylladb.com/scylla-4.15.0.x/api/index.html
> > > > >>> >
> > > > >>> > So I see no reason to not take them at their word that it's
> > drop-in
> > > > >>> >
> > > > >>> > On Wed, Mar 20, 2024 at 11:04 AM David Handermann <
> > > > >>> > exceptionfact...@apache.org> wrote:
> > > > >>> >
> > > > >>> > > Mike,
> > > > >>> > >
> > > > >>> > > One important thing to mention about the DataStax vs ScyllaDB
> > > driver
> > > > >>> > > is that the Maven coordinates are different, and managing the
> > > > >>> > > dependencies correctly will make or break the implementation.
> > > > >>> > >
> > > > >>> > > In other words, if it is possible to use the DataStax 4 core
> > JAR
> > > in
> > > > >>> > > the Controller Service API, but use the ScyllaDB 3 query JAR
> in
> > > the
> > > > >>> > > ScyllaDB implementation, then that could avoid the need for
> > > > >>> additional
> > > > >>> > > abstraction. Without taking a closer look, however, I would
> be
> > > > >>> > > surprised if this worked.
> > > > >>> > >
> > > > >>> > > Although ScyllaDB highlights their forked driver as a drop-in
> > > > >>> > > replacement for the DataStax version, and maintains the same
> > Java
> > > > >>> > > package names, there is a difference between a complete
> > > replacement
> > > > >>> > > and a shared API JAR. Without a common API JAR, that both
> > > > >>> > > implementations can use, it will be necessary to provide an
> > > > >>> > > abstraction in NiFi that avoids depending on either library
> at
> > > the
> > > > >>> > > Controller Service API level.
> > > > >>> > >
> > > > >>> > > Regards,
> > > > >>> > > David Handermann
> > > > >>> > >
> > > > >>> > > On Wed, Mar 20, 2024 at 8:25 AM Mike Thomsen <
> > > mikerthom...@gmail.com
> > > > >>> >
> > > > >>> > > wrote:
> > > > >>> > > >
> > > > >>> > > > Matt/David,
> > > > >>> > > >
> > > > >>> > > > I got some time this morning to take a crack at directly
> > > migrating
> > > > >>> it
> > > > >>> > > over
> > > > >>> > > > to the DataStax 4.17 driver. Definitely got a lot of work
> to
> > > do,
> > > > >>> but so
> > > > >>> > > far
> > > > >>> > > > I haven't hit any real snags. This is a branch that reverts
> > the
> > > > >>> commit
> > > > >>> > to
> > > > >>> > > > remove the cassandra bundle and reuses the existing
> features
> > > as a
> > > > >>> > > > foundation. From what I'm seeing so far (feels like I'm
> about
> > > 25%
> > > > >>> done)
> > > > >>> > > it
> > > > >>> > > > should be doable to reuse the existing bundle, but rename
> it
> > > to the
> > > > >>> > "CQL
> > > > >>> > > > Bundle" and just add a second controller service for Scylla
> > > that is
> > > > >>> > > > otherwise 100% the same codewise.
> > > > >>> > > >
> > > > >>> > > > On Tue, Mar 19, 2024 at 6:41 PM Mike Thomsen <
> > > > >>> mikerthom...@gmail.com>
> > > > >>> > > wrote:
> > > > >>> > > >
> > > > >>> > > > > A cursory look at the Cassandra 5 stuff didn’t indicate
> any
> > > > >>> > > > > incompatibility. So yeah, I think we are likely pretty
> safe
> > > to
> > > > >>> use
> > > > >>> > the
> > > > >>> > > 4.17
> > > > >>> > > > > driver
> > > > >>> > > > > Sent from my iPhone
> > > > >>> > > > >
> > > > >>> > > > > > On Mar 19, 2024, at 3:35 PM, Matt Burgess <
> > > > >>> mattyb...@apache.org>
> > > > >>> > > wrote:
> > > > >>> > > > > >
> > > > >>> > > > > > Is it likely now (due to the refactor) that we will
> > > simply be
> > > > >>> able
> > > > >>> > > to
> > > > >>> > > > > > upgrade the driver when Cassandra 5 is GA? Also does
> > > anyone use
> > > > >>> > > Netflix's
> > > > >>> > > > > > Astyanax [1]?
> > > > >>> > > > > >
> > > > >>> > > > > > [1]
> > > > >>> > > > > >
> > > > >>> > > > >
> > > > >>> > >
> > > > >>> >
> > > > >>>
> > >
> >
> https://cassandra.apache.org/doc/stable/cassandra/getting_started/drivers.html#java
> > > > >>> > > > > >
> > > > >>> > > > > >> On Tue, Mar 19, 2024 at 3:10 PM Mike Thomsen <
> > > > >>> > > mikerthom...@gmail.com>
> > > > >>> > > > > wrote:
> > > > >>> > > > > >>
> > > > >>> > > > > >> Realistically, I think we are only likely to see two
> > > drivers:
> > > > >>> > > > > >>
> > > > >>> > > > > >> * DataStax
> > > > >>> > > > > >> * ScyllaDB
> > > > >>> > > > > >>
> > > > >>> > > > > >> The latter makes a selling point of being a binary
> > > compatible,
> > > > >>> > > drop-in
> > > > >>> > > > > >> replacement for the former.
> > > > >>> > > > > >>
> > > > >>> > > > > >> That's why I don't see a need to have an abstraction
> > > layer per
> > > > >>> > se. I
> > > > >>> > > > > think
> > > > >>> > > > > >> we only need "DataStaxConnectionProviderImpl" and
> > > > >>> > > > > >> "ScyllaDBConnectionProviderImpl" with the difference
> > being
> > > > >>> which
> > > > >>> > > jar is
> > > > >>> > > > > >> imported by maven.
> > > > >>> > > > > >>
> > > > >>> > > > > >> On Tue, Mar 19, 2024 at 2:59 PM David Handermann <
> > > > >>> > > > > >> exceptionfact...@apache.org> wrote:
> > > > >>> > > > > >>
> > > > >>> > > > > >>> Mike,
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> Thanks for the reply and clarification.
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> I agree there is no need to maintain support for the
> > > > >>> DataStax 3
> > > > >>> > > driver
> > > > >>> > > > > >>> and Java API, any new components should be built on
> the
> > > > >>> latest
> > > > >>> > > version
> > > > >>> > > > > >>> of the driver.
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> What we do need going forward is to avoid, if at all
> > > > >>> possible,
> > > > >>> > > having
> > > > >>> > > > > >>> a DataStax 4 dependency in the Controller Service
> API.
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> One example of this is the WebClientServiceProvider
> > > > >>> interface.
> > > > >>> > That
> > > > >>> > > > > >>> Controller Service API does not have any third-party
> > > > >>> > dependencies.
> > > > >>> > > The
> > > > >>> > > > > >>> Controller Service implementation,
> > > > >>> > > StandardWebClientServiceProvider,
> > > > >>> > > > > >>> has a dependency on OkHttp to implement HTTP
> > > communication.
> > > > >>> That
> > > > >>> > is
> > > > >>> > > > > >>> the kind of abstraction that would be ideal, and I
> > > believe
> > > > >>> that
> > > > >>> > > also
> > > > >>> > > > > >>> aligns with what Matt has described.
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> Regards,
> > > > >>> > > > > >>> David Handermann
> > > > >>> > > > > >>>
> > > > >>> > > > > >>> On Tue, Mar 19, 2024 at 1:45 PM Mike Thomsen <
> > > > >>> > > mikerthom...@gmail.com>
> > > > >>> > > > > >>> wrote:
> > > > >>> > > > > >>>>
> > > > >>> > > > > >>>> ** we can dump v3 **DRIVER** compatibility, since
> > later
> > > 4.X
> > > > >>> Java
> > > > >>> > > > > >> drivers
> > > > >>> > > > > >>>> are backward compatible with Cassandra 3
> > > > >>> > > > > >>>>
> > > > >>> > > > > >>>> On Tue, Mar 19, 2024 at 2:43 PM Mike Thomsen <
> > > > >>> > > mikerthom...@gmail.com>
> > > > >>> > > > > >>> wrote:
> > > > >>> > > > > >>>>
> > > > >>> > > > > >>>>> David,
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>> Before we proceed, I think we should make sure
> we're
> > > all
> > > > >>> > > > > >> understanding
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>> same problem here. Starting with this:
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>>> I believe the CQL protocol is backwards compatible
> > > but the
> > > > >>> > Java
> > > > >>> > > API
> > > > >>> > > > > >>> is
> > > > >>> > > > > >>>>> not.
> > > > >>> > > > > >>>>>> For example "com.datastax.driver.core.Session" is
> > now
> > > > >>> > > > > >>>>>> "com.datastax.oss.driver.api.core.session.Session"
> > and
> > > > >>> there
> > > > >>> > is
> > > > >>> > > no
> > > > >>> > > > > >>> more
> > > > >>> > > > > >>>>>> "Cluster" class. Might be fairly trivial to fix
> > > though, if
> > > > >>> > > that's
> > > > >>> > > > > >> the
> > > > >>> > > > > >>>>> path
> > > > >>> > > > > >>>>>> of least resistance.
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>> From what I've learned using Cassandra 3 and 4 in
> my
> > > day
> > > > >>> job
> > > > >>> > and
> > > > >>> > > > > >>> reading
> > > > >>> > > > > >>>>> up on this stuff for the sake of discussion, that
> all
> > > > >>> tracks.
> > > > >>> > We
> > > > >>> > > used
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>> ~4.11 driver in Spring Boot on both v3 and v4
> > clusters
> > > > >>> without
> > > > >>> > > issue
> > > > >>> > > > > >>> during
> > > > >>> > > > > >>>>> an upgrade. So I don't see any reason to factor in
> > the
> > > > >>> "changes
> > > > >>> > > from
> > > > >>> > > > > >>>>> DataStax 3 to 4" since the changes were likely a
> > > one-off
> > > > >>> > decision
> > > > >>> > > > > >>> meant to
> > > > >>> > > > > >>>>> position the driver for better future support and
> > > > >>> stability.
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>> TL;DR, we can dump v3 compatibility and the only
> > thing
> > > our
> > > > >>> > users
> > > > >>> > > will
> > > > >>> > > > > >>>>> notice is if we make the controller service totally
> > > > >>> > incompatible
> > > > >>> > > with
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>> one they're already using which is something we can
> > > > >>> actively
> > > > >>> > > avoid.
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>> On Tue, Mar 19, 2024 at 2:00 PM David Handermann <
> > > > >>> > > > > >>>>> exceptionfact...@apache.org> wrote:
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>>>> All,
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>> I support a Controller Service API abstraction
> > around
> > > the
> > > > >>> > > Cassandra
> > > > >>> > > > > >>>>>> Driver. The changes from DataStax 3 to 4 already
> > > > >>> highlight the
> > > > >>> > > need
> > > > >>> > > > > >>>>>> for that abstraction. The donation of the DataStax
> > > Java
> > > > >>> driver
> > > > >>> > > to
> > > > >>> > > > > >>>>>> Apache [1] also shows the value of providing some
> > > level of
> > > > >>> > > > > >> isolation,
> > > > >>> > > > > >>>>>> if at all possible.
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>> I have not taken a close look at the Matt's
> branch,
> > > and
> > > > >>> the
> > > > >>> > > details
> > > > >>> > > > > >> of
> > > > >>> > > > > >>>>>> the abstraction are important, but having the
> > > abstraction
> > > > >>> can
> > > > >>> > be
> > > > >>> > > > > >>>>>> useful to avoid getting back to this same
> situation.
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>> Regards,
> > > > >>> > > > > >>>>>> David Handermann
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>> [1]
> > https://github.com/apache/cassandra-java-driver/
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>> On Tue, Mar 19, 2024 at 12:37 PM Mike Thomsen <
> > > > >>> > > > > >> mikerthom...@gmail.com
> > > > >>> > > > > >>>>
> > > > >>> > > > > >>>>>> wrote:
> > > > >>> > > > > >>>>>>>
> > > > >>> > > > > >>>>>>> Matt,
> > > > >>> > > > > >>>>>>>
> > > > >>> > > > > >>>>>>> I got that. My point was that the Java changes
> > > appear to
> > > > >>> be a
> > > > >>> > > one
> > > > >>> > > > > >>> time
> > > > >>> > > > > >>>>>>> thing that DataStax did to make a better driver
> > with
> > > a
> > > > >>> much
> > > > >>> > > more
> > > > >>> > > > > >>>>>>> future-proof API. Since Scylla tracks them as
> > > closely as
> > > > >>> > > > > >> possible, I
> > > > >>> > > > > >>>>>>> suspect that we don't need to plan for a bunch of
> > > > >>> abstraction
> > > > >>> > > to
> > > > >>> > > > > >>> isolate
> > > > >>> > > > > >>>>>>> Java changes.
> > > > >>> > > > > >>>>>>>
> > > > >>> > > > > >>>>>>> On Tue, Mar 19, 2024 at 11:07 AM Steven Matison <
> > > > >>> > > > > >>>>>> steven.mati...@gmail.com>
> > > > >>> > > > > >>>>>>> wrote:
> > > > >>> > > > > >>>>>>>
> > > > >>> > > > > >>>>>>>> That was kinda where i got stuck and fell out on
> > my
> > > > >>> > > branch/jira.
> > > > >>> > > > > >>>>>> Mike and
> > > > >>> > > > > >>>>>>>> I wanted to make a new controller service ,
> > without
> > > > >>> backward
> > > > >>> > > > > >>>>>> compatibility;
> > > > >>> > > > > >>>>>>>> and remove the duplicate driver/connection
> > > properties
> > > > >>> found
> > > > >>> > in
> > > > >>> > > > > >>> some
> > > > >>> > > > > >>>>>> of the
> > > > >>> > > > > >>>>>>>> processors.
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>>> I agree taking out all old stuff and making new
> > > > >>> controller
> > > > >>> > > > > >> service
> > > > >>> > > > > >>>>>> makes
> > > > >>> > > > > >>>>>>>> most sense.  4.x and 5.x should be mostly
> > backwards
> > > > >>> > compatible
> > > > >>> > > > > >> to
> > > > >>> > > > > >>>>>> 2&3.x
> > > > >>> > > > > >>>>>>>> with how it’s used within current processors.
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>>> On Tue, Mar 19, 2024 at 10:49 AM Matt Burgess <
> > > > >>> > > > > >>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>>>> The abstraction is to isolate Java API changes,
> > not
> > > > >>> > protocol
> > > > >>> > > > > >>>>>>>> compatibility
> > > > >>> > > > > >>>>>>>>> Changing to the java-driver comes with a number
> > of
> > > > >>> changes
> > > > >>> > to
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>>> code
> > > > >>> > > > > >>>>>>>> (see
> > > > >>> > > > > >>>>>>>>> Steven's and my branches), if we can abstract
> > that
> > > API
> > > > >>> it
> > > > >>> > > > > >> should
> > > > >>> > > > > >>>>>> lead to
> > > > >>> > > > > >>>>>>>>> more maintainable code in the future by not
> > having
> > > to
> > > > >>> > change
> > > > >>> > > > > >> any
> > > > >>> > > > > >>>>>>>>> processors, just the controller service
> > > implementation.
> > > > >>> > > > > >>>>>>>>>
> > > > >>> > > > > >>>>>>>>>
> > > > >>> > > > > >>>>>>>>> On Tue, Mar 19, 2024 at 10:14 AM Mike Thomsen <
> > > > >>> > > > > >>>>>> mikerthom...@gmail.com>
> > > > >>> > > > > >>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>
> > > > >>> > > > > >>
> > > > >>> > > > >
> > > > >>> > >
> > > > >>> >
> > > > >>>
> > >
> >
> https://opensource.docs.scylladb.com/stable/using-scylla/drivers/cql-drivers/scylla-java-driver.html
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>> Directly quoting Scylla docs here:
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>> The Scylla Java Driver is a drop-in
> replacement
> > > for
> > > > >>> the
> > > > >>> > > > > >>>>>> DataStax Java
> > > > >>> > > > > >>>>>>>>>> Driver. As such, no code changes are needed to
> > use
> > > > >>> this
> > > > >>> > > > > >>> driver.
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>> On Tue, Mar 19, 2024 at 10:13 AM Mike Thomsen
> <
> > > > >>> > > > > >>>>>> mikerthom...@gmail.com>
> > > > >>> > > > > >>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>> Matt,
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>> I don't think we need to really "abstract
> > above"
> > > the
> > > > >>> > > > > >> drivers
> > > > >>> > > > > >>>>>> because
> > > > >>> > > > > >>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>> Java DataStax driver appears to support 4.X
> all
> > > the
> > > > >>> way
> > > > >>> > > > > >>> back to
> > > > >>> > > > > >>>>>> 2.X,
> > > > >>> > > > > >>>>>>>> as
> > > > >>> > > > > >>>>>>>>>>> well as the enterprise versions from DataStax
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>
> > > > >>> > >
> > > https://docs.datastax.com/en/driver-matrix/docs/java-drivers.html
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>> Similar situation with Scylla. When I looked
> at
> > > the
> > > > >>> > > > > >> driver,
> > > > >>> > > > > >>> it
> > > > >>> > > > > >>>>>>>> appeared
> > > > >>> > > > > >>>>>>>>>> to
> > > > >>> > > > > >>>>>>>>>>> copy verbatim the entire public API of that
> > > driver.
> > > > >>> So I
> > > > >>> > > > > >>> think
> > > > >>> > > > > >>>>>> before
> > > > >>> > > > > >>>>>>>>> we
> > > > >>> > > > > >>>>>>>>>>> dive into abstractions, it's worth doing a
> bit
> > > more
> > > > >>> > > > > >>> validation
> > > > >>> > > > > >>>>>> of
> > > > >>> > > > > >>>>>>>> these
> > > > >>> > > > > >>>>>>>>>>> details. IMHO, this might be a much lighter
> > lift
> > > than
> > > > >>> > > > > >>>>>> anticipated.
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>> On Mon, Mar 18, 2024 at 4:30 PM Matt Burgess
> <
> > > > >>> > > > > >>>>>> mattyb...@gmail.com>
> > > > >>> > > > > >>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>> Totally agree, that's what my branch does
> (see
> > > link
> > > > >>> in
> > > > >>> > > > > >>> previous
> > > > >>> > > > > >>>>>>>>> email).
> > > > >>> > > > > >>>>>>>>>>>> The
> > > > >>> > > > > >>>>>>>>>>>> more I work with it, the more I think I can
> > > > >>> abstract it
> > > > >>> > > > > >>>>>> further from
> > > > >>> > > > > >>>>>>>>>> their
> > > > >>> > > > > >>>>>>>>>>>> JDBC-like API but I started with a bunch of
> > > delegate
> > > > >>> > > > > >>> classes
> > > > >>> > > > > >>>>>> then I
> > > > >>> > > > > >>>>>>>>>> figure
> > > > >>> > > > > >>>>>>>>>>>> I'll see where I can consolidate to more
> > > abstract
> > > > >>> > > > > >>> concepts. If
> > > > >>> > > > > >>>>>> I
> > > > >>> > > > > >>>>>>>> don't
> > > > >>> > > > > >>>>>>>>>>>> have
> > > > >>> > > > > >>>>>>>>>>>> to support Cassandra 3 with the new API, so
> > > much the
> > > > >>> > > > > >>> better.
> > > > >>> > > > > >>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>> Regards,
> > > > >>> > > > > >>>>>>>>>>>> Matt
> > > > >>> > > > > >>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>> On Mon, Mar 18, 2024 at 4:14 PM David
> > > Handermann <
> > > > >>> > > > > >>>>>>>>>>>> exceptionfact...@apache.org> wrote:
> > > > >>> > > > > >>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> Matt et al,
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> It is good to see the background effort on
> > > moving
> > > > >>> > > > > >>> Cassandra
> > > > >>> > > > > >>>>>>>>>>>>> capabilities in a supportable direction.
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> I think new Cassandra components will
> > require a
> > > > >>> > > > > >>> significant
> > > > >>> > > > > >>>>>>>>> departure
> > > > >>> > > > > >>>>>>>>>>>>> from current Controller Service
> abstractions.
> > > Right
> > > > >>> > > > > >> now,
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>>>>>> existing
> > > > >>> > > > > >>>>>>>>>>>>> service interface does not provide a clean
> > > > >>> abstraction
> > > > >>> > > > > >>> from
> > > > >>> > > > > >>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>> Cassandra library, which is part of the
> > reason
> > > for
> > > > >>> the
> > > > >>> > > > > >>>>>> current
> > > > >>> > > > > >>>>>>>>>>>>> coupling to the legacy driver version.
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> Following up from Joe's comments, it seems
> > > like the
> > > > >>> > > > > >>> cleanest
> > > > >>> > > > > >>>>>> way
> > > > >>> > > > > >>>>>>>>>>>>> forward is to deprecate the current bundle
> on
> > > the
> > > > >>> 1.x
> > > > >>> > > > > >>>>>> branch, and
> > > > >>> > > > > >>>>>>>>>>>>> remove the current bundle from the main
> > branch.
> > > > >>> That
> > > > >>> > > > > >> will
> > > > >>> > > > > >>>>>> provide
> > > > >>> > > > > >>>>>>>> a
> > > > >>> > > > > >>>>>>>>>>>>> clean slate for new Service and Processor
> > > > >>> > > > > >>> implementations,
> > > > >>> > > > > >>>>>> without
> > > > >>> > > > > >>>>>>>>>>>>> concern for uncertain compatibility
> > questions.
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> Regards,
> > > > >>> > > > > >>>>>>>>>>>>> David Handermann
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>> On Mon, Mar 18, 2024 at 2:35 PM Matt
> Burgess
> > <
> > > > >>> > > > > >>>>>>>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>> What do y'all think about removing the
> > > individual
> > > > >>> > > > > >>>>>> connection
> > > > >>> > > > > >>>>>>>>>>>> properties
> > > > >>> > > > > >>>>>>>>>>>>>> from the Cassandra processors for NiFi 2.0
> > and
> > > > >>> > > > > >>> requiring a
> > > > >>> > > > > >>>>>>>>>>>>>> CassandraSessionProvider instead? I think
> we
> > > > >>> started
> > > > >>> > > > > >>> doing
> > > > >>> > > > > >>>>>> that
> > > > >>> > > > > >>>>>>>>>>>> elsewhere
> > > > >>> > > > > >>>>>>>>>>>>>> (Elasticsearch maybe?), I noticed
> duplicate
> > > code
> > > > >>> in
> > > > >>> > > > > >> the
> > > > >>> > > > > >>>>>>>>>>>>>> CassandraSessionProvider and
> > > > >>> > > > > >>> AbstractCassandraProcessor,
> > > > >>> > > > > >>>>>> if we
> > > > >>> > > > > >>>>>>>>> keep
> > > > >>> > > > > >>>>>>>>>>>> those
> > > > >>> > > > > >>>>>>>>>>>>>> properties I can refactor them into a
> > utility
> > > > >>> class.
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>> Thanks,
> > > > >>> > > > > >>>>>>>>>>>>>> Matt
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 2:44 PM Steven
> > > Matison <
> > > > >>> > > > > >>>>>>>>>>>> steven.mati...@gmail.com
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>> I got through quite a bit of work to
> enable
> > > 4.x…
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>> The 3.x pieces that were not backwards
> > > compatible
> > > > >>> > > > > >> is
> > > > >>> > > > > >>>>>> very edge
> > > > >>> > > > > >>>>>>>>> use
> > > > >>> > > > > >>>>>>>>>>>>> case and
> > > > >>> > > > > >>>>>>>>>>>>>>> could have been done slightly differently
> > but
> > > > >>> with
> > > > >>> > > > > >>> work
> > > > >>> > > > > >>>>>>>> around.
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>
> > https://github.com/steven-matison/nifi/tree/nifi-10120-1
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 2:30 PM Matt
> > Burgess
> > > <
> > > > >>> > > > > >>>>>>>>>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>> Oops used the wrong email address so if
> > > there
> > > > >>> > > > > >> have
> > > > >>> > > > > >>> been
> > > > >>> > > > > >>>>>>>>>> responses
> > > > >>> > > > > >>>>>>>>>>>> to
> > > > >>> > > > > >>>>>>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>>>>> Cassandra thread since mine I missed
> them,
> > > my
> > > > >>> > > > > >> bad!
> > > > >>> > > > > >>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 2:00 PM Matt
> > > Burgess <
> > > > >>> > > > > >>>>>>>>>> mattyb...@gmail.com
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>> I believe the CQL protocol is backwards
> > > > >>> > > > > >>> compatible
> > > > >>> > > > > >>>>>> but the
> > > > >>> > > > > >>>>>>>>>> Java
> > > > >>> > > > > >>>>>>>>>>>>> API is
> > > > >>> > > > > >>>>>>>>>>>>>>>>> not. For example
> > > > >>> > > > > >>> "com.datastax.driver.core.Session"
> > > > >>> > > > > >>>>>> is now
> > > > >>> > > > > >>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>> "com.datastax.oss.driver.api.core.session.Session"
> > > > >>> > > > > >>>>>> and
> > > > >>> > > > > >>>>>>>> there
> > > > >>> > > > > >>>>>>>>>> is
> > > > >>> > > > > >>>>>>>>>>>> no
> > > > >>> > > > > >>>>>>>>>>>>> more
> > > > >>> > > > > >>>>>>>>>>>>>>>>> "Cluster" class. Might be fairly
> trivial
> > > to fix
> > > > >>> > > > > >>>>>> though, if
> > > > >>> > > > > >>>>>>>>>>>> that's
> > > > >>> > > > > >>>>>>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>>>>> path
> > > > >>> > > > > >>>>>>>>>>>>>>>>> of least resistance.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 1:40 PM Joe
> Witt
> > <
> > > > >>> > > > > >>>>>>>>> joe.w...@gmail.com>
> > > > >>> > > > > >>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> Matt
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> I dont know a ton about Cassandra but
> > > when I
> > > > >>> > > > > >>> looked
> > > > >>> > > > > >>>>>> at
> > > > >>> > > > > >>>>>>>>>>>>> client/driver
> > > > >>> > > > > >>>>>>>>>>>>>>>> notes
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> for 4+ it said it was compatible all
> the
> > > way
> > > > >>> > > > > >>> back
> > > > >>> > > > > >>>>>> to 3.x.
> > > > >>> > > > > >>>>>>>>>> Not
> > > > >>> > > > > >>>>>>>>>>>>> sure
> > > > >>> > > > > >>>>>>>>>>>>>>>> what
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> that means but it surely seems worth
> > > > >>> > > > > >> exploring.
> > > > >>> > > > > >>>>>> Also I
> > > > >>> > > > > >>>>>>>>> dont
> > > > >>> > > > > >>>>>>>>>>>> know
> > > > >>> > > > > >>>>>>>>>>>>> if
> > > > >>> > > > > >>>>>>>>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> 4.x drivers get rid of the vulnerable
> > > bits.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> Thanks
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 10:39 AM Matt
> > > Burgess
> > > > >>> > > > > >> <
> > > > >>> > > > > >>>>>>>>>>>>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> At the very least we should upgrade
> to
> > > > >>> > > > > >>> Cassandra
> > > > >>> > > > > >>>>>>>> 3.11.6:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>
> > > > >>> > >
> > > > >>>
> > > https://github.com/apache/cassandra/blob/cassandra-3.11.16/CHANGES.txt
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 1:31 PM Matt
> > > > >>> > > > > >> Burgess <
> > > > >>> > > > > >>>>>>>>>>>>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>> If the community agrees to get rid
> of
> > > > >>> > > > > >>> Cassandra
> > > > >>> > > > > >>>>>> 3
> > > > >>> > > > > >>>>>>>>> that'll
> > > > >>> > > > > >>>>>>>>>>>>> save me
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> effort
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>> on the refactor after I add
> Cassandra
> > 4
> > > :)
> > > > >>> > > > > >>>>>> Otherwise
> > > > >>> > > > > >>>>>>>>>> those
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>> vulnerabilities would only be in a
> > "new"
> > > > >>> > > > > >>>>>> Cassandra 3
> > > > >>> > > > > >>>>>>>>>>>> services
> > > > >>> > > > > >>>>>>>>>>>>> NAR
> > > > >>> > > > > >>>>>>>>>>>>>>>> that
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>> would not be included in the
> > convenience
> > > > >>> > > > > >>> binary.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 1:28 PM Joe
> > > Witt <
> > > > >>> > > > > >>>>>>>>>>>> joe.w...@gmail.com>
> > > > >>> > > > > >>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Mike, Matt,
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Happy to hear you both have active
> > > > >>> > > > > >> efforts
> > > > >>> > > > > >>> or
> > > > >>> > > > > >>>>>> are
> > > > >>> > > > > >>>>>>>>>>>> interested
> > > > >>> > > > > >>>>>>>>>>>>> in
> > > > >>> > > > > >>>>>>>>>>>>>>>> doing
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> so.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Can you help me understand more
> > > > >>> > > > > >>> specifically
> > > > >>> > > > > >>>>>> what
> > > > >>> > > > > >>>>>>>> that
> > > > >>> > > > > >>>>>>>>>>>> means
> > > > >>> > > > > >>>>>>>>>>>>> for
> > > > >>> > > > > >>>>>>>>>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> current set of components?
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> The CVE hits are concerning and
> long
> > > > >>> > > > > >>> standing.
> > > > >>> > > > > >>>>>>>>>> Supporting
> > > > >>> > > > > >>>>>>>>>>>>>>>> Cassandra
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> 3
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> implies the current set of
> > dependencies
> > > > >>> > > > > >>> would
> > > > >>> > > > > >>>>>> remain
> > > > >>> > > > > >>>>>>>>> too
> > > > >>> > > > > >>>>>>>>>>>>> right?
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Is the current set of components we
> > > have
> > > > >>> > > > > >>> ones
> > > > >>> > > > > >>>>>> we
> > > > >>> > > > > >>>>>>>> want
> > > > >>> > > > > >>>>>>>>> to
> > > > >>> > > > > >>>>>>>>>>>>> retain?
> > > > >>> > > > > >>>>>>>>>>>>>>>> We
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> certainly need Cassandra
> components -
> > > but
> > > > >>> > > > > >>> are
> > > > >>> > > > > >>>>>> the
> > > > >>> > > > > >>>>>>>> ones
> > > > >>> > > > > >>>>>>>>>> we
> > > > >>> > > > > >>>>>>>>>>>>> have
> > > > >>> > > > > >>>>>>>>>>>>>>> now
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> right ones?
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Thanks
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> Joe
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 10:25 AM
> Matt
> > > > >>> > > > > >>> Burgess <
> > > > >>> > > > > >>>>>>>>>>>>>>>> mattyb...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> I'm actively working this, I
> pushed
> > my
> > > > >>> > > > > >>>>>> branch up
> > > > >>> > > > > >>>>>>>> in
> > > > >>> > > > > >>>>>>>>>> case
> > > > >>> > > > > >>>>>>>>>>>>> anyone
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> wants
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> to
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> take a look [1]. The idea is to
> > > > >>> > > > > >> abstract
> > > > >>> > > > > >>> the
> > > > >>> > > > > >>>>>>>>> Cassandra
> > > > >>> > > > > >>>>>>>>>>>> API
> > > > >>> > > > > >>>>>>>>>>>>> "up
> > > > >>> > > > > >>>>>>>>>>>>>>> a
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> couple
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> levels" and provide
> implementations
> > > for
> > > > >>> > > > > >>>>>> Cassandra
> > > > >>> > > > > >>>>>>>> 3,
> > > > >>> > > > > >>>>>>>>>> 4,
> > > > >>> > > > > >>>>>>>>>>>> and
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> eventually
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> 5.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> For JDBC-like interfaces this is a
> > > PITA
> > > > >>> > > > > >>>>>> because of
> > > > >>> > > > > >>>>>>>>> the
> > > > >>> > > > > >>>>>>>>>>>> API
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> (Statement,
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> PreparedStatement, BoundStatement,
> > > > >>> > > > > >>> ResultSet,
> > > > >>> > > > > >>>>>>>> etc.)
> > > > >>> > > > > >>>>>>>>>> but
> > > > >>> > > > > >>>>>>>>>>>> I'm
> > > > >>> > > > > >>>>>>>>>>>>>>>> hoping
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> we
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> can
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> find a common pattern for
> > abstracting
> > > > >>> > > > > >> the
> > > > >>> > > > > >>>>>>>>> third-party
> > > > >>> > > > > >>>>>>>>>>>>> library
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> implementation and API from the
> NiFi
> > > > >>> > > > > >>>>>> component
> > > > >>> > > > > >>>>>>>>>>>> (Processor,
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> ControllerService, etc.) API. I
> > think
> > > > >>> > > > > >>> we're
> > > > >>> > > > > >>>>>> doing
> > > > >>> > > > > >>>>>>>>>>>> something
> > > > >>> > > > > >>>>>>>>>>>>>>>> similar
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> for
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> Kafka?
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> Regards,
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> Matt
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> [1]
> > > > >>> > > > > >>>>>> https://github.com/mattyb149/nifi/tree/cassy4
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> On Fri, Mar 15, 2024 at 8:43 AM
> Mike
> > > > >>> > > > > >>> Thomsen
> > > > >>> > > > > >>>>>> <
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> mikerthom...@gmail.com>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> That’s been on my todo list for a
> > > > >>> > > > > >>> little
> > > > >>> > > > > >>>>>> while
> > > > >>> > > > > >>>>>>>> but
> > > > >>> > > > > >>>>>>>>>>>> things
> > > > >>> > > > > >>>>>>>>>>>>>>> kept
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> coming
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> up.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> I think I could get started on
> that
> > > > >>> > > > > >>> now.
> > > > >>> > > > > >>>>>> Based
> > > > >>> > > > > >>>>>>>> on
> > > > >>> > > > > >>>>>>>>> my
> > > > >>> > > > > >>>>>>>>>>>>> initial
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> research
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> it
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> appears that scylla uses the
> exact
> > > > >>> > > > > >> same
> > > > >>> > > > > >>>>>> api as
> > > > >>> > > > > >>>>>>>>>>>> datastax
> > > > >>> > > > > >>>>>>>>>>>>> so
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> supporting
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> both
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> in a cql bundle should
> > theoretically
> > > > >>> > > > > >> be
> > > > >>> > > > > >>>>>> fairly
> > > > >>> > > > > >>>>>>>>> easy.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> Sent from my iPhone
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> On Mar 14, 2024, at 6:18 PM, Joe
> > > > >>> > > > > >>> Witt <
> > > > >>> > > > > >>>>>>>>>>>>> joew...@apache.org>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> wrote:
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> Team,
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> Cassandra remains a really
> > > > >>> > > > > >> important
> > > > >>> > > > > >>>>>> system to
> > > > >>> > > > > >>>>>>>>> be
> > > > >>> > > > > >>>>>>>>>>>> able
> > > > >>> > > > > >>>>>>>>>>>>> to
> > > > >>> > > > > >>>>>>>>>>>>>>>> send
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> data
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> to.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> However, it seems like we've not
> > > > >>> > > > > >>>>>> maintained
> > > > >>> > > > > >>>>>>>>> these
> > > > >>> > > > > >>>>>>>>>>>>> well.  We
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> have
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> what
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> appears to be at least a full
> > > > >>> > > > > >>> generation
> > > > >>> > > > > >>>>>>>> behind
> > > > >>> > > > > >>>>>>>>> on
> > > > >>> > > > > >>>>>>>>>>>>> client
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> versions
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> (we
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> are
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> on 3x vs 4x which is the latest
> > > > >>> > > > > >>> stable
> > > > >>> > > > > >>>>>> with 5x
> > > > >>> > > > > >>>>>>>>>>>>> apparently
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> coming
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> shortly).
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> We have components to send data,
> > > > >>> > > > > >>> query
> > > > >>> > > > > >>>>>> data,
> > > > >>> > > > > >>>>>>>> and
> > > > >>> > > > > >>>>>>>>>> use
> > > > >>> > > > > >>>>>>>>>>>>>>>> Cassandra
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> as
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> a
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> cache
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> store.  We have older mechanisms
> > > > >>> > > > > >> for
> > > > >>> > > > > >>>>>> json/avro
> > > > >>> > > > > >>>>>>>>> and
> > > > >>> > > > > >>>>>>>>>>>>> publish
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> mechanisms
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> for
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> records.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> The libraries we do have depend
> on
> > > > >>> > > > > >>>>>> outdated
> > > > >>> > > > > >>>>>>>>>>>> versions of
> > > > >>> > > > > >>>>>>>>>>>>>>> Guava
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> and
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> result
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> in
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> many CVE hits.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> I am inclined to think we should
> > > > >>> > > > > >>>>>> deprecate the
> > > > >>> > > > > >>>>>>>>> 1.x
> > > > >>> > > > > >>>>>>>>>>>>>>> components
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> and
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> remove
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> them as-is from the 2.x line.
> > Then
> > > > >>> > > > > >>>>>>>> re-introduce
> > > > >>> > > > > >>>>>>>>>>>> them
> > > > >>> > > > > >>>>>>>>>>>>> with
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> record
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>> only
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> interfaces and built against the
> > > > >>> > > > > >>> latest
> > > > >>> > > > > >>>>>> stable
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>> Cassandra/Datastax/ScyllaDB
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> interfaces.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> I'd love to hear thoughts from
> > > > >>> > > > > >> those
> > > > >>> > > > > >>>>>> closer to
> > > > >>> > > > > >>>>>>>>>> this
> > > > >>> > > > > >>>>>>>>>>>>> space
> > > > >>> > > > > >>>>>>>>>>>>>>>> both
> > > > >>> > > > > >>>>>>>>>>>>>>>>>> as
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>> a
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>> user
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> and developer so we can make
> good
> > > > >>> > > > > >>> next
> > > > >>> > > > > >>>>>> steps.
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>> Thanks
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>>
> > > > >>> > > > > >>>>>>>>>
> > > > >>> > > > > >>>>>>>>
> > > > >>> > > > > >>>>>>
> > > > >>> > > > > >>>>>
> > > > >>> > > > > >>>
> > > > >>> > > > > >>
> > > > >>> > > > >
> > > > >>> > >
> > > > >>> >
> > > > >>>
> > > > >>
> > >
> >
>

Reply via email to