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

Trigger are in inconsistent state with Channel #8317

Open
astelmashenko opened this issue Nov 8, 2024 · 2 comments
Open

Trigger are in inconsistent state with Channel #8317

astelmashenko opened this issue Nov 8, 2024 · 2 comments
Labels
kind/bug Categorizes issue or PR as related to a bug. triage/needs-user-input Issues which are waiting on a response from the reporter

Comments

@astelmashenko
Copy link

astelmashenko commented Nov 8, 2024

Describe the bug
We are using knative eventing and serving. Oeverall it is working properly, but there is an issue happened and I'm not sure how to resolve it.
It is related to MTBroker and Trigger. Channel implementation is eventing-natss. Let's consider setup:

  • Default broker
  • Around 20 triggers, [trigger1..triggerN]

We deleted several triggers trigger1..3, and at the same time webhook was not available (in some reason). Now I do not see those triggers if I get them with:

kubectl get trigger -n myns

Triggers were deleted.

But I noticed errors in broker-filters that trigger1..3 are not found. Then I checked channel, in my case it is NatsJetstreamChannel and there is Subscribers (if I get yaml) with deleted Triggers present. It seems because of broken communication with webhook (just an assumption) there inconsistent state of triggers and channel behind the broker.

How can I make it consistent again, should I some how trigger re-sync of the broker/channel with actual triggers I have?
Should I just edit NatsJetstreamChannel CRD, just remove non-existing subscribers.

Expected behavior
MTBroker should re-sync channel with actual state.

To Reproduce
Not sure how to do it.

Knative release version
1.12.6

@astelmashenko astelmashenko added the kind/bug Categorizes issue or PR as related to a bug. label Nov 8, 2024
@pierDipi
Copy link
Member

@astelmashenko is the issue reproducible with the latest release 1.16?

@pierDipi pierDipi added the triage/needs-user-input Issues which are waiting on a response from the reporter label Nov 19, 2024
@astelmashenko
Copy link
Author

We recently switched to 1.14.x, not yet on 1.16. I do not think there is something fundamentally changed. A state of a channel is based on events from MTBroker (AFAIU) and there is no way to re-read actual state from existing triggers and subscriptions.
What I'd like to bring up here is if there is such thing happens there is a way to synchronize channels with actual state of existing CRDs. It seems like to should be part of MTBroker since Triggers are managed by this project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. triage/needs-user-input Issues which are waiting on a response from the reporter
Projects
None yet
Development

No branches or pull requests

2 participants