-
Notifications
You must be signed in to change notification settings - Fork 22
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
Beetle 5.0 #115
Beetle 5.0 #115
Conversation
Disable heartbeats by default.
* updated bunny to the latest version The tests are green, but we need to study the interplay between the various new timeout options in the multi threaded bunny implementation. This is still WIP!!! * turn on debug logging for the echo RPC * enable auto recovery to see whether this fixes the CI failures * Revert "enable auto recovery to see whether this fixes the CI failures" This reverts commit c7b4b0e. * don't wait when forcing a connection to close * try killing the reader loop hard * try to collect docker logs * learned how to ignore scenarios * improved logging * colored output * removed require that doesn't work anymore * upgraded bunny * Remove superfluous configuration * Run actions on PRs against every base branch * Update expectation to match new options * Expect logger correctly * Match only a subset of options we're interested in * Update to bunny 2.23 This brings updates to the heartbeat implementation which we should get in. --------- Co-authored-by: David Krentzlin <[email protected]>
@@ -40,7 +39,7 @@ jobs: | |||
run: bundle install && bundle exec appraisal generate | |||
|
|||
- name: Compile and test beetle go binary | |||
run: make && make test | |||
run: make # && make test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was that make test
commented out for a reason?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yepp, this is to test the gobeetle, which created problems and I don't want to invest the time to fix it.
class NoMessageSent < Error; end | ||
# logged when an RPC call timed outdated | ||
class RPCTimedOut < Error; end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where is this class used?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch. I also don't find a reference anywhere for this.
@@ -123,7 +132,10 @@ class Configuration | |||
# Write timeout for http requests to RabbitMQ HTTP API | |||
attr_accessor :rabbitmq_api_write_timeout | |||
|
|||
# the socket timeout in seconds for message publishing (defaults to <tt>0</tt>). | |||
# Returns the port on which the Rabbit API is hosted | |||
attr_accessor :api_port |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where is this used? could only find the release note for 4.0, that said it's dropped
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's not used anymore, and could potentially be removed. We decided in the 4.0 to leave it in to not break any code that sets it. However now this looks a bit different and xing-amqp is the only library we really care about that uses beetle, which is fully in our hands. I'll ponder removing it.
@@ -0,0 +1,9 @@ | |||
require 'beetle' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this file just for manual testing or should it be part of the github workflow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just a manual test that I conducted.
This now brings the new beetle major version 5.0.
It incorporates a couple of changes, which may be breaking existing applications, hence a new major version.
Note for potential upstream users
As was already the case for 4.x, there will be no public release of this version on rubygems.org.
If you're brave you can use this version from the github and reference the appropriate tag.
However, we currently can not support those versions outside of the use of our organization.
If you need stable operations, its best to stick with the 3.x versions for now.
Changes