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

What are the timeouts (read/write on the HTTP server on the ingress) & calls to RMQ #645

Closed
1 of 2 tasks
Tracked by #540
xtreme-sameer-vohra opened this issue Mar 15, 2022 · 7 comments
Closed
1 of 2 tasks
Tracked by #540
Assignees
Labels
lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.
Projects
Milestone

Comments

@xtreme-sameer-vohra
Copy link
Contributor

xtreme-sameer-vohra commented Mar 15, 2022

This covers

@gab-satchi
Copy link
Contributor

/assign

@xtreme-sameer-vohra xtreme-sameer-vohra added this to the MVP milestone Mar 17, 2022
@xtreme-sameer-vohra xtreme-sameer-vohra added this to TODO in RabbitMQ Mar 17, 2022
@gab-satchi gab-satchi moved this from TODO to In Progress in RabbitMQ Apr 7, 2022
@gab-satchi
Copy link
Contributor

Moving this out of MVP as ingress timeouts aren't currently part of the eventing spec. Will work on driving the change through core eventing before implementing here.

@gab-satchi gab-satchi modified the milestones: MVP, Next Apr 18, 2022
@gab-satchi gab-satchi moved this from In Progress to TODO in RabbitMQ Apr 20, 2022
@github-actions
Copy link

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

@github-actions github-actions bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 18, 2022
@embano1
Copy link
Contributor

embano1 commented Aug 4, 2022

Just checked the code (please correct me if I'm wrong) so that anyone interested in this topic has a better understanding of the connection handling from the ingress to the RMQ Cluster (via amqp091-go).

Note Evaluation done on the following commit of this repo:

git rev-parse head
dfd65c5bec16c4758218b67fe2095f2055fdfdeb

It seems for establishing the initial net.Conn to RMQ, the amqp091-go defaults are used:

https://github.com/knative-sandbox/eventing-rabbitmq/blob/dfd65c5bec16c4758218b67fe2095f2055fdfdeb/vendor/github.com/rabbitmq/amqp091-go/connection.go#L25

The connection is periodically probed/checked via the Heartbeat interval, which also seems to be using the default:

https://github.com/knative-sandbox/eventing-rabbitmq/blob/dfd65c5bec16c4758218b67fe2095f2055fdfdeb/vendor/github.com/rabbitmq/amqp091-go/connection.go#L24

tl;dr: During network/server issues, those affect any publisher, i.e. ingress.

Another issue IMHO is a forever blocking (deadlocking?) event publishing call:

https://github.com/knative-sandbox/eventing-rabbitmq/blob/dfd65c5bec16c4758218b67fe2095f2055fdfdeb/cmd/ingress/main.go#L201

Recently, a PR was added to amqp091-go which allows passing a context.Context when publishing to avoid this scenario: rabbitmq/amqp091-go#96

Might be a good one to implement on pkg bump and using a sane context timeout. cc/ @gab-satchi @salaboy

@github-actions github-actions bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Aug 5, 2022
@github-actions
Copy link

github-actions bot commented Nov 3, 2022

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

@github-actions github-actions bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 3, 2022
@knative-prow-robot
Copy link

This issue or pull request is stale because it has been open for 90 days with no activity.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle rotten
  • Close this issue or PR with /close

/lifecycle stale

@github-actions github-actions bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 4, 2022
@github-actions
Copy link

github-actions bot commented Mar 4, 2023

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

@github-actions github-actions bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 4, 2023
@github-actions github-actions bot closed this as completed Apr 4, 2023
RabbitMQ automation moved this from TODO to Done Apr 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale.
Projects
RabbitMQ
  
Done
Development

No branches or pull requests

4 participants