Skip to content

4.5.0

Compare
Choose a tag to compare
@acogoluegnes acogoluegnes released this 26 Feb 09:51
· 1830 commits to main since this release

Changes between 4.4.2 and 4.5.0

This is a maintenance release that includes new features and bug fixes. This release is backward-compatible with 4.4.0. Users of the 4.x.x and 3.6.x series are encouraged to use this release.

Introduce CredentialsProvider interface for authentication

This can be used to provide different credentials between re-connection.

Thanks to @spatula75 for this contribution.

GitHub PR: #350

Add excludeQueueFromRecovery method

This adds a public method to AutorecoveringConnection to allow for removal of a queue from recorded queues (and its related bindings) without having to call Channel#queueDelete.

Thanks to @vikinghawk for this contribution.

GitHub PR: #346

Trigger recovery if a socket write fails

Detecting connection failure on reading can take a lot of time (even forever if the reading thread is stuck), so connection recovery can now be triggered when a write operation fails. This can make the client more reactive to detect TCP connection failure.

GitHub issue: #341

Add RpcClient doCall/responseCall/primitiveCall overloads which include timeout

Thanks to @AndreasPresthammer for this contribution.

GitHub PR: #338

Fix a potential race condition between channel recovery and acknowledgement offset

During recovery, when attempting to acknowledge a delivery the channel could be closed with
reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 0, class-id=60, method-id=80) and messages would stop being delivered.

Thanks to @vikinghawk for this contribution.

GitHub PR: #343