summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Quorum queue: fix crash bug after reconnectionkjnilsson2018-12-182-24/+36
| | | | | | | | | | | When a consumer node is disconnected the quorum queue will return all outstanding messages for the consumer to the queue as it cannot know if the consumer will ever come back or not and cannot leave things checked out forever. If the consumer node then reconnectes and the consumer channel is still alive it may try to query for missing deliveries and this previously crashed if the messages had been returned to the main queue. This fix makes the query safer as well as handling missing messages better.
* Quorum queue: return messages in orderkjnilsson2018-12-175-36/+60
| | | | | | | | | Fixes bug that muddled up the checkout order when a consumer is cancelled with more than 32 messages checked out. Dialyzer fixes. [#162698673]
* Bug fixeskjnilsson2018-12-172-23/+38
| | | | | | | | | 1. rabbit_quorum_queue:update_metrics/2 used calls to remote processes. To avoid this blocking the ra server in a partition we now spawn a new process for this. 2. Due to a refactoring miss commands over the soft limit where never formatted successfully.
* Merge pull request #1796 from rabbitmq/report-message-bytesKarl Nilsson2018-12-143-30/+165
|\ | | | | Report message bytes in quorum queue stats
| * Report message bytes in quorum queue statsDiana Corbacho2018-12-143-30/+165
|/ | | | [#161505138]
* Merge pull request #1801 from rabbitmq/qq-list-consumersArnaud Cogoluègnes2018-12-148-296/+480
|\ | | | | Implement consumer listing for quorum queues
| * fix rabbit_fifo SUITEkjnilsson2018-12-141-5/+7
| |
| * Implement consumer listing for quorum queueskjnilsson2018-12-148-292/+474
| | | | | | | | | | | | | | | | Refactor rabbit_fifo internal commands to use records instead of plain tuples to provide a little bit more compile time safety and make it easier to extend in the future. [#162584074]
* | Merge pull request #1800 from rabbitmq/qq-ghost-consumer-fixD Corbacho2018-12-143-49/+29
|\ \ | |/ | | Ensure quorum queue consumers are cleaned up
| * Ensure quorum queue consumers are cleaned upkjnilsson2018-12-123-49/+29
| | | | | | | | | | | | | | | | | | Fixes a bug where the consumer_created metrics table wasn't cleared when a consumer was cancelled. Also removing some injected handlers from rabbit_fifo [#162583758]
* | Merge pull request #1798 from rabbitmq/remove-unused-truncate-moduleMichael Klishin2018-12-122-197/+0
|\ \ | | | | | | Remove the unused truncate module
| * | Remove the unused truncate moduleLoïc Hoguin2018-12-112-197/+0
| |/ | | | | | | This kind of truncation is done automatically by lager now.
* | Merge pull request #1791 from rabbitmq/wal-roll-overKarl Nilsson2018-12-112-2/+103
|\ \ | |/ |/| Roll wal on memory alarm
| * Roll wal on memory alarmDiana Corbacho2018-12-052-2/+103
| | | | | | | | [#161408569]
* | Merge pull request #1792 from rabbitmq/qq-dlx-fixKarl Nilsson2018-12-101-3/+7
|\ \ | | | | | | Ignore error when dead letter exchange cannot be found
| * | Ignore error when dead letter exchange cannot be foundDiana Corbacho2018-12-061-2/+1
| | | | | | | | | | | | | | | Avoids swamping the log, same as classic queues [#162411672]
| * | Log a warning if dead letter exchange cannot be foundDiana Corbacho2018-12-061-3/+8
| |/ | | | | | | [#162411672]
* | rabbit_channel: Import `queue_fold()` from rabbit_miscJean-Sébastien Pédron2018-12-101-1/+7
| | | | | | | | | | | | ... and modify it to use `lqueue`. The copy in `rabbit_misc` assumes the use of regular `queue:queue()`.
* | Merge pull request #1795 from rabbitmq/rabbitmq-website-633Michael Klishin2018-12-073-1/+7
|\ \ | | | | | | Document new cli switches
| * | Add awk rule for new mandoc "Bd Bd-indent" classLuke Bakken2018-12-071-0/+1
| | |
| * | Document new cli switchesLuke Bakken2018-12-062-1/+6
| | | | | | | | | | | | | | | | | | Fixes rabbitmq/rabbitmq-website#633 Also includes minor fix for -detached argument
* | | Merge pull request #1794 from rabbitmq/rabbitmq-server-1783Michael Klishin2018-12-072-33/+81
|\ \ \ | | | | | | | | Implement node health check timeouts
| * | | Add code to enforce deadline when getting channel info items. Standardize ↵Luke Bakken2018-12-061-9/+54
| | | | | | | | | | | | | | | | return value from info gen_server handler
| * | | Replace a couple instances of queue with lqueueLuke Bakken2018-12-052-24/+27
| | |/ | |/|
* | | Add rabbit_fifo snapshot property testkjnilsson2018-12-074-74/+468
| | | | | | | | | | | | And fix various subtle bugs around snapshotting.
* | | Explain how man pages are generatedMichael Klishin2018-12-071-0/+17
| |/ |/| | | Per discussion with @lukebakken.
* | Update rabbitmq-components.mkMichael Klishin2018-12-061-6/+0
|/
* Merge pull request #1747 from rabbitmq/ranch_proxy_headerMichael Klishin2018-12-054-30/+34
|\ | | | | Use the built-in Ranch PROXY protocol support
| * Merge branch 'master' into ranch_proxy_headerMichael Klishin2018-12-054-14/+79
| |\ | |/ |/|
* | Merge pull request #1787 from rabbitmq/dialyze-qqMichael Klishin2018-12-054-14/+79
|\ \ | | | | | | Fix dialyzer warnings
| * | Minor improvements to test stabilityMichael Klishin2018-12-052-2/+13
| | | | | | | | | | | | Per discussion with @dcorbacho.
| * | Merge branch 'master' into dialyze-qqMichael Klishin2018-12-056-97/+347
| |\ \ | |/ / |/| |
| * | CompileMichael Klishin2018-12-051-1/+1
| | |
| * | Merge branch 'master' into dialyze-qqMichael Klishin2018-12-0511-43/+193
| |\ \ | | | | | | | | | | | | | | | | Conflicts: test/quorum_queue_SUITE.erl
| * \ \ Merge branch 'master' into dialyze-qqDiana Corbacho2018-12-047-50/+307
| |\ \ \
| * | | | Give valid cluster name to rabbit_fifo_clientDiana Corbacho2018-12-041-2/+4
| | | | |
| * | | | Implement delete_immediately_by_resourceDiana Corbacho2018-12-033-8/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | delete_immediately doesn't work for qq as we cannot easily retrieve resource name from qpid. Instead, delete_immediately_by_resource receives a resource record which should make it easier for both users and developers. Usage: `rabbitmqctl eval 'rabbit_amqqueue:delete_immediately([rabbit_misc:r(<<"VHOST_NAME">>, queue, <<"QUEUE_NAME">>)]).'`
| * | | | Use ra nodes to intialise rabbit_fifo_clientDiana Corbacho2018-12-031-1/+1
| | | | |
| * | | | Fix rabbit_quorum_queue:status type specDiana Corbacho2018-12-031-1/+1
| | | | |
| | | | * Merge branch 'master' into ranch_proxy_headerMichael Klishin2018-12-0510-133/+500
| | | | |\ | |_|_|_|/ |/| | | |
* | | | | Fix test to account for new eventkjnilsson2018-12-051-4/+10
| | | | |
* | | | | Merge pull request #1782 from rabbitmq/qq-confirm-availabilityD Corbacho2018-12-055-93/+337
|\ \ \ \ \ | |_|_|/ / |/| | | | Quorum queue confirm availability
| * | | | rabbit_channel: revert changes to IS_QUORUM macrokjnilsson2018-12-041-1/+1
| | | | |
| * | | | uncomment commented gc callkjnilsson2018-12-041-1/+1
| | | | |
| * | | | Better handle changing quorum queue leaderskjnilsson2018-12-045-64/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All maps that track queues inside the channel should use the queue name atom rather than the server id as they key so that leader changes don't impact this tracking.
| * | | | Notify all enqueuers and consuers on leader changekjnilsson2018-12-042-26/+89
| | | | | | | | | | | | | | | | | | | | | | | | | This should ensure liveness and avoid missed confirms when the leader changes.
| * | | | rabbit_fifo: ensure credit is regainedkjnilsson2018-12-041-19/+41
| | | | | | | | | | | | | | | | | | | | When returning a $prefix_msg
| * | | | Use correct key for recording quorum queue confirmskjnilsson2018-12-045-22/+106
| | | | |
* | | | | Merge pull request #1774 from noxdafox/masterMichael Klishin2018-12-052-32/+37
|\ \ \ \ \ | |/ / / / |/| | | | RFC rabbit_amqqueue_process: improve message duplicates handling
| * | | | Merge branch 'master' of github.com:rabbitmq/rabbitmq-serverMatteo Cafasso2018-11-2447-423/+6699
| |\ \ \ \