| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |/ / / |
|
| | | |
| | |
| | |
| | |
| | | |
... in `quorum_queue_leadership_transfer` if some `rabbit_fifo` machines
have different versions.
|
| | |/
|/|
| |
| |
| |
| |
| |
| | |
terminate
This is a follow-up to commit f95bb4a4b1468a05c69202a2e0e03d063bc248de
which did the same thing for just a few cases. Now all similar cases are
handled the same.
|
| |/ |
|
| |
|
|
|
| |
from a test. HTTP API test suites would greatly benefit
from this.
|
| | |
|
| |\
| |
| | |
Test with Erlang 22.3 and 23.0
|
| |/
|
|
| |
Replace the GitHub Actions workflow for 21.3 with 22.3
|
| | |
|
| | |
|
| |\
| |
| | |
Quorum queue peek
|
| | |
| |
| |
| | |
To pass dialyzer
|
| | | |
|
| |/
|
|
|
|
| |
Allow peeking of messages into a quorum queue. This uses a dedicated aux
command to peek at a message at the given 1-indexed position in the
queue.
|
| |
|
|
| |
as it cannot be made reliable.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
terminate
... `most_basic_cluster_connection_and_channel_count` testcases.
`amqp_channel:close()` is a synchronous call in the AMQP client. However
we verify the number of remaining channels/connections on the server
side. This explains the fact that there might be a window of time where
the server-side resources might not be completely cleaned up when the
client-side calls return.
|
| | |
|
| |
|
|
|
| |
Instead of the environment to avoid running incompatible mixed versions
tests.
|
| |\
| |
| | |
Quorum queue: API to reclaim quorum memory
|
| | |
| |
| |
| |
| | |
A full sweep GC does not always decrease process heap size
in the moment.
|
| | |
| |
| |
| |
| | |
Operator can choose to force a garbage collection and flush of the WAL
on a specific quorum queue
|
| | |
| |
| |
| | |
As they are not able to run.
|
| |\ \
| | |
| | | |
Increase aten poll interval
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| | |
A longer interval will reduce the likely hood that unnecessary leader
elections are triggered in quorum queues due to transient network
issues. This increases it from the default of 1s to 5s which increases
the time it takes to detect genuine network partitions somewhat. Ra still uses
monitors so connection failures will not have to wait this additional
time.
|
| | |
| |
| |
| | |
For mixed versions.
|
| |\ \
| |/
|/| |
Revert unintentional assertion
|
| |/
|
|
|
|
| |
PR #1818 introduced an unintended assertion here. Previously the record
was updated with the new queue pid. With the change, it became an
assertion.
|
| |\
| |
| | |
reject-publish strategy support for quorum queues
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
As the current default is way to large for queues that never empty but
only keep a small backlog.
|
| | |
| |
| |
| |
| |
| | |
The quorum queue will track the timestamp of whenever a consumer was removed and
periodically check if the queue should be deleted based on it's expiry
configuration.
|
| | |
| |
| |
| |
| | |
To allow for future extensions without necessitating a machine version
upgrade
|
| | |
| |
| |
| |
| | |
As depending on which is the current leader this may or may not be
returned.
|
| | | |
|
| | |
| |
| |
| | |
To v0 version which has an additional field.
|
| | | |
|
| | |
| |
| |
| | |
when the rabbit_fifo:version/0 function is missing.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Growing shrinking does not necessarily work in mixed versions.
|
| | |
| |
| |
| | |
As this works better with mixed Ra machine versions
|
| | |
| |
| |
| | |
that cannot pass due to Ra machine versioning restrictions.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
QQs cannot be declared in two node clusters with different machine
versions. This setup should be an anomaly so changing some suites to
better represent sensible conigurations. This should also allow some
mixed-versions tests to pass.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The reject publish overflow strategy for quorum queues is an inexact
implementation that relies on the cooperation of publishing channels.
When a channel first wants to publish to a quorum queue it first issues
a synchonous register_enqueuer command which will return the current
queue overflow state as reject_publish if the queue is full.
The queue will also notify any active enqueuers when it reaches the
limit but will continue to accept any enqueues it receives after that.
Once the queue size goes below 80% of the limit(s) the queue will again
notify enqueuers that they can resume publishin inte the queue.
|
| | | |
|
| | | |
|