Skip to content

NIFI-9770 - Add CQL (Cassandra and ScyllaDB) support to NiFi 2.X - #11595

Open
MikeThomsen wants to merge 2 commits into
apache:mainfrom
MikeThomsen:NIFI-9770
Open

NIFI-9770 - Add CQL (Cassandra and ScyllaDB) support to NiFi 2.X#11595
MikeThomsen wants to merge 2 commits into
apache:mainfrom
MikeThomsen:NIFI-9770

Conversation

@MikeThomsen

Copy link
Copy Markdown
Contributor

Summary

NIFI-00000

Tracking

Please complete the following tracking steps prior to pull request creation.

Issue Tracking

Pull Request Tracking

  • Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
  • Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000
  • Pull request contains commits signed with a registered key indicating Verified status

Pull Request Formatting

  • Pull Request based on current revision of the main branch
  • Pull Request refers to a feature branch with one commit containing changes

Verification

Please indicate the verification steps performed prior to pull request creation.

Build

  • Build completed using ./mvnw clean install -P contrib-check
    • JDK 21
    • JDK 25

Licensing

  • New dependencies are compatible with the Apache License 2.0 according to the License Policy
  • New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

  • Documentation formatting appears as expected in rendered files

…d ScyllaDB.

Generated-by: ChatGPT
(Generated code is two Cassandra "codec" files in the mappings package)

NIFI-9770 Massive refactoring supported with Anthropic Claude.

Generated-by: Anthropic Claude

This commit is a human-AI hybrid work with substantial human original input, organization and revision of machine-generated contributions.
@MikeThomsen

Copy link
Copy Markdown
Contributor Author

Still needs a manual L&N review.

This bundle adds the core CRUD functionality for both Cassandra and ScyllaDB simultaneously through a shared controller service and strategic dependency management between the NARs given the identical Java interfaces between the two client drivers.

It provides PutCQLRecord and ExecuteCQLRecord. I have a DistributedMapCacheClient ready for review, but I held that back to reduce the size of this PR.

The test coverage was generated mainly by Claude with input from me. I ran scanoss on it, and the results came back clean for the entire bundle.

@exceptionfactory exceptionfactory left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for revisiting this issue and proposing the addition of these Processors @MikeThomsen.

There is a lot here, and having the tests is helpful for verification.

I have not evaluated the implementation details, but I highlighted a handful of initial recommendations.

Given the amount of code involved, and the need for ongoing maintenance, I would also look for some additional reviews of this pull request to provide sufficient confirmation interest and availability for updates going forward.

Comment thread nifi-extension-bundles/nifi-cql-bundle/nifi-cql-services-api/pom.xml Outdated
NIFI-9770 Made several requested changes.
NIFI-9770 Removed hard-coded test passwords and unused yaml.
NIFI-9770 Moved the PropertyDescriptors.
NIFI-9770 Changed to SSLContextProvider.
NIFI-9770 Added comments explaining why the Shade plugin is called for the ScyllaDB session provider

Generated-by: Anthropic Claude
@MikeThomsen

Copy link
Copy Markdown
Contributor Author

@exceptionfactory should be good on those changes now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants