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

CNF-16727: improve alarms notification reliability with an outbox and event-driven with pg listen/notify #573

Merged
merged 1 commit into from
Feb 25, 2025

Conversation

pixelsoccupied
Copy link
Collaborator

@pixelsoccupied pixelsoccupied commented Feb 20, 2025

  • alarms events are now handled with a transaction outbox table. this allows us to make sure every change is detected and handled as a unique notification, improving overall reliability
  • each outbox entry will now trigger a function automatically with PG listen/notify feature to forward the notifications, adhering to more event-driven design
  • new set of manager functions exposed to easily register listen/notify functions

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 20, 2025
Copy link

openshift-ci bot commented Feb 20, 2025

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@pixelsoccupied pixelsoccupied force-pushed the outbox branch 2 times, most recently from 6015945 to 654a7ba Compare February 20, 2025 22:08
@pixelsoccupied
Copy link
Collaborator Author

/test

Copy link

openshift-ci bot commented Feb 20, 2025

@pixelsoccupied: The /test command needs one or more targets.
The following commands are available to trigger required jobs:

/test ci-bundle-operator-bundle
/test ci-job
/test images
/test markdownlint
/test scorecard

Use /test all to run the following jobs that were automatically triggered:

pull-ci-openshift-kni-oran-o2ims-main-ci-bundle-operator-bundle
pull-ci-openshift-kni-oran-o2ims-main-ci-job
pull-ci-openshift-kni-oran-o2ims-main-images

In response to this:

/test

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@pixelsoccupied
Copy link
Collaborator Author

/test all

@pixelsoccupied pixelsoccupied force-pushed the outbox branch 2 times, most recently from ad3486b to 3c6c368 Compare February 24, 2025 16:50
@pixelsoccupied pixelsoccupied changed the title [wip] improve alarms notification reliability with an outbox and event-driven with pg listen/notify CNF-16727: improve alarms notification reliability with an outbox and event-driven with pg listen/notify Feb 24, 2025
@openshift-ci-robot
Copy link
Collaborator

openshift-ci-robot commented Feb 24, 2025

@pixelsoccupied: This pull request references CNF-16727 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set.

In response to this:

  • alarms events are now handled with a transaction outbox table. this allows us to make sure every change is detected and handled as a unique notification, improving overall reliability
  • each outbox entry will now trigger a function automatically with PG listen/notify feature to forward the notifications, adhering to more event-driven design
  • new set of manager functions exposed to easily register listen/notify functions

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@pixelsoccupied pixelsoccupied marked this pull request as ready for review February 24, 2025 17:13
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 24, 2025
@pixelsoccupied
Copy link
Collaborator Author

/cc @alegacy
/uncc @edcdavid
/uncc @irinamihai

@openshift-ci openshift-ci bot requested review from alegacy and removed request for irinamihai and edcdavid February 24, 2025 17:13
@alegacy
Copy link
Collaborator

alegacy commented Feb 25, 2025

Mostly minor comments; otherwise, looks great!

@pixelsoccupied
Copy link
Collaborator Author

/label tide/merge-method-rebase
/cc @alegacy

should be good for another pass!

@openshift-ci openshift-ci bot requested a review from alegacy February 25, 2025 15:28
@openshift-ci openshift-ci bot added the tide/merge-method-rebase Denotes a PR that should be rebased by tide when it merges. label Feb 25, 2025
@pixelsoccupied
Copy link
Collaborator Author

/remove-label tide/merge-method-rebase

@openshift-ci openshift-ci bot removed the tide/merge-method-rebase Denotes a PR that should be rebased by tide when it merges. label Feb 25, 2025
@alegacy
Copy link
Collaborator

alegacy commented Feb 25, 2025

/lgtm
/approve

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Feb 25, 2025
Copy link

openshift-ci bot commented Feb 25, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: alegacy

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 25, 2025
@openshift-merge-bot openshift-merge-bot bot merged commit 5cd9880 into openshift-kni:main Feb 25, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants