Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NIFI-13868: add pg-delete command to Nifi Toolkit #9387

Open
wants to merge 3 commits into
base: support/nifi-1.x
Choose a base branch
from

Conversation

grishick
Copy link
Contributor

@grishick grishick commented Oct 14, 2024

Summary

NIFI-13868

Adding pg-delete command to Nifi Toolkit. The command works the same way as deleting a process group via UI. If there are messages in PG queue, deletion will fail. I ported this change from Anetac's Nifi fork where I made it a while ago. We have been using this feature in production at Anetac for months now.

PR with the same feature for main branch: #9388
The change for support/nifi-1.x branch is larger than for main, because the support branch does not have changes for NIFI-12898

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 Formatting

  • Pull Request based on current revision of the support/nifi-1.x 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 mvn clean install -P contrib-check
    • JDK 21

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

Copy link
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

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

Thanks for the contribution @grishick. The general implementation looks good, just one functional note on returning the deleted entity instead of void.

Also, please submit new features to the main branch first. Once that is approved and merged, then submitting a separate pull request for the support branch would be helpful if it is desirable to have this functionality on the support branch.

@grishick
Copy link
Contributor Author

Thanks for the contribution @grishick. The general implementation looks good, just one functional note on returning the deleted entity instead of void.

Also, please submit new features to the main branch first. Once that is approved and merged, then submitting a separate pull request for the support branch would be helpful if it is desirable to have this functionality on the support branch.

Got it. Here is the PR for main branch: #9388

Copy link
Contributor

@pvillard31 pvillard31 left a comment

Choose a reason for hiding this comment

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

Thanks for the improvement. I'd recommend adding more details in the helper text for this command. For this command to be successful, three actions would need to be taken before:

  • stop the processors in the process group (pg-stop)
  • disable the controller services in the process group (pg-disable-services)
  • empty all queues in the process group (we don't have a CLI command for that now, would certainly be a nice addition)

I didn't test the current PR but would be good to confirm that everything works fine especially when having nested process groups with controller services at multiple levels, etc.

@grishick
Copy link
Contributor Author

Sounds good. I'll try to make the changes asap.

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.

3 participants