summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Optimise user declare/update/import by reducing the number of operationskhepri-import-optimizationsdcorbacho2021-12-141-25/+99
| | | | | | User, tags and hashed password can be inserted/updated at once, increasing the performance of the storage backend - both for mnesia and khepri.
* Fix export topic permissions from management UIdcorbacho2021-12-091-1/+1
|
* WIP; Fix Khepri clustering, take #4Jean-Sébastien Pédron2021-12-091-47/+60
|
* WIP; Fix Khepri clustering, take #3Jean-Sébastien Pédron2021-12-073-85/+141
|
* WIPJean-Sébastien Pédron2021-12-061-1/+3
|
* WIP; Fix Khepri clustering againJean-Sébastien Pédron2021-12-061-16/+30
|
* Change find/1 to find/2Michal Kuratczyk2021-12-021-2/+2
| | | | | | `khepri:find/2` expects a path and condition. We may want to pre-populate the condition in the future, but for now - at least it works.
* WIP; Rework Khepri clusteringJean-Sébastien Pédron2021-12-014-55/+200
| | | | | In particular which node is picked while trying to make the Khepri cluster match the Mnesia one.
* WIP; Fix Khepri migrationJean-Sébastien Pédron2021-12-013-66/+135
| | | | ... when a Mnesia-based node joins a Khepri-based node.
* WIP; BazelJean-Sébastien Pédron2021-11-301-2/+2
|
* WIP; Update KhepriJean-Sébastien Pédron2021-11-301-1/+1
|
* WIP; Khepri metadata store - phase 1 (Bazel bits)Jean-Sébastien Pédron2021-11-303-0/+39
|
* WIP; Khepri metadata store - phase 1Jean-Sébastien Pédron2021-11-3014-276/+4857
|
* Use `stdlib/include/assert.hrl` where we need ?assert() macros onlyJean-Sébastien Pédron2021-11-302-2/+2
| | | | | | | ... and not other EUnit macros. Otherwise, this adds a dependency on EUnit. Also, `eunit.hrl` defines `TEST` which might defeat some `-ifdef(TEST)` we may use.
* Feature flags: Call the migration function after the flag is marked as enabledJean-Sébastien Pédron2021-11-302-11/+40
| | | | | | | This allows the migration function do perform some cleanup after the running code switched to the new thing. While here, fix a couple style issues in `rabbit_core_ff`.
* Feature flags: Only enable stable feature flags in enable_all/0Jean-Sébastien Pédron2021-11-301-2/+5
| | | | | | This makes the behavior consistent with the virgin node startup behavior. It also avoids users to be surprised with experimental features being enabled.
* Feature flags: Only enable stable feature flags on a virgin nodeJean-Sébastien Pédron2021-11-301-3/+19
| | | | | | | Before this change, all feature flags were enabled by default when a new node was started. Now, only the stable ones are enabled, not the experimental ones. In other words, experimental feature flags must be enabled explicitely.
* Merge pull request #3805 from tomyouyou/deativate_limit_of_qpidMichael Klishin2021-11-304-0/+32
|\ | | | | To deactivate limit of all QPids when the limiter has been changed from 'limit' to 'unlimit'.
| * To deactivate limit of all QPids when the limiter has been changed from ↵tomyouyou2021-11-274-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'limit' to 'unlimit'. Otherwise, the QPids will still to ask limiter whether it can be sent before delivering. This will degrade performance, especially when the limiter and QPid are on different nodes. When 'can_send' is deactivated, the test results are as follows: id: test-100147-150, time: 400.016s, sent: 17654 msg/s, returned: 0 msg/s, confirmed: 17658 msg/s, nacked: 0 msg/s, received: 17663 msg/s, min/median/75th/95th/99th consumer latency: 1775/5899/6486/7369/8440 μs, confirm latency: 2171/5581/6127/7026/7911 μs test stopped (Reached time limit) id: test-100147-150, sending rate avg: 17630 msg/s id: test-100147-150, receiving rate avg: 17630 msg/s When limiter and QPid are on the same node and 'can_send' is activated, the test results are as follows: id: test-095229-474, time: 400.015s, sent: 13246 msg/s, returned: 0 msg/s, confirmed: 13247 msg/s, nacked: 0 msg/s, received: 13245 msg/s, min/median/75th/95th/99th consumer latency: 3777/7316/8345/10447/11392 μs, confirm latency: 4074/7308/8257/10336/11341 μs test stopped (Reached time limit) id: test-095229-474, sending rate avg: 13317 msg/s id: test-095229-474, receiving rate avg: 13317 msg/s we have seen, for the message rate, the test showed a 24% drop.
* | Merge pull request #3806 from rabbitmq/rabbitmq-server-3803Michael Klishin2021-11-291-6/+25
|\ \ | | | | | | tcp_listener: avoid logging listener arguments on shutdown
| * | Log message wordingMichael Klishin2021-11-291-1/+1
| | |
| * | Simplify tcp_listener argument obfuscationrabbitmq-server-3803Michael Klishin2021-11-291-28/+11
| | | | | | | | | | | | Per suggestions from @lhoguin
| * | tcp_listener: only set credential obfuscation secret if necessaryMichael Klishin2021-11-281-2/+7
| | |
| * | tcp_listener: avoid logging listener arguments on shutdownMichael Klishin2021-11-281-5/+36
| | | | | | | | | | | | Closes #3803
* | | Add a bazel rule for generating erlang_ls.configPhilip Kuryloski2021-11-292-0/+40
| | | | | | | | | | | | | | | | | | If you are using bazel, you can switch to this with: 1. `bazelisk build //tools:erlang_ls.config` 2. `cp bazel-bin/tools/erlang_ls.config erlang_ls.config`
* | | Merge pull request #3781 from rabbitmq/bump-bazel-erlangPhilip Kuryloski2021-11-291-1/+1
|\ \ \ | |_|/ |/| | Adopt latest bazel-erlang
| * | Adopt latest bazel-erlangGitHub2021-11-271-1/+1
|/ / | | | | | | - bazel-erlang@050faedb2a3422a60d6b98678c714ed1a61ec71d
* | Add missing Ra commands to the logDavid Ansari2021-11-261-3/+3
|/ | | | | | | | Before this commit, the tests were not including any settle, return, or discard Ra commands. Do not pattern match against 'ra_event' because nowadays: _Opts = [local, ra_event]
* Merge pull request #3800 from tomyouyou/stop_statsMichael Klishin2021-11-251-0/+8
|\ | | | | To stop collect_statistics when rabbitmq_management_agent has been disabled
| * To stop collect_statistics when rabbitmq_management has been disabled.tomyouyou2021-11-251-0/+8
| | | | | | After stopping the 'rabbitmq_management', these statistics tables are still being refreshed.
* | Merge pull request #3746 from rabbitmq/lukebakken/gh-3729Michael Klishin2021-11-252-14/+75
|\ \ | |/ |/| Fix case where quorum queue consumer is cancelled while message is about to be delivered
| * quorum_queue_SUITE: bump some timeoutslukebakken/gh-3729Michael Klishin2021-11-241-5/+5
| |
| * quorum_queue_SUITE: drop a debug lineMichael Klishin2021-11-241-1/+0
| |
| * Fix quorum queue crash during consumer cancel with returnLuke Bakken2021-11-232-11/+73
| | | | | | | | Fixes #3729
* | Merge pull request #3798 from wrobell/rabbitmq-streams-doc-protocol-timestampMichael Klishin2021-11-241-2/+5
|\ \ | | | | | | Link to most recent description of Osiris chunk format
| * | Link to most recent description of Osiris chunk formatwrobell2021-11-241-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | The most recent description of Osiris chunk format does not reference the timestamp field to be "posix-ish" anymore. This was bit misleading as it is Erlang's system time. Add link to Erlang system time documentation to the subscription command description to avoid confusion about the timestamp field.
* | | Merge pull request #3779 from rabbitmq/vhost-exchange-countMichael Klishin2021-11-243-4/+152
|\ \ \ | |_|/ |/| | Add optional metrics for vhost and exchange count
| * | Use `rabbitmq_cluster_` prefix for cluster-wide metricsvhost-exchange-countAlexey Lebedeff2021-11-243-18/+20
| | |
| * | WordingMichael Klishin2021-11-241-2/+2
| | |
| * | WordingMichael Klishin2021-11-241-5/+4
| | |
| * | Add optional metrics for vhost and exchange countAlexey Lebedeff2021-11-243-2/+149
|/ / | | | | | | | | These can make sense in some scenarios, e.g. when vhost/exchanges are +created using self-service automation
* | Do not count unroutable message in global totalsMichael Klishin2021-11-232-2/+2
| |
* | Merge pull request #3708 from rabbitmq/filter-out-queues-from-global-statsMichael Klishin2021-11-236-44/+105
|\ \ | | | | | | Use a pattern to filter out some queues from global stats
| * | Compile the regexLuke Bakken2021-11-221-1/+2
| | |
| * | Use own key to exclude queuesdcorbacho2021-11-162-1/+3
| | |
| * | Exclude queues from aggregated metrics in prometheus collectordcorbacho2021-11-162-34/+77
| | | | | | | | | | | | Uses same exclusion pattern as the management agent
| * | Store collector pattern in process memorydcorbacho2021-11-151-18/+18
| | | | | | | | | | | | | | | | | | Avoids multiple calls to `application:get_env` which can be very expensive. Also limits filter to vhost_msg_stats, as queue_msg_stats are required for individual queue metrics
| * | Use a pattern to filter out some queues from global statsdcorbacho2021-11-123-5/+20
| | | | | | | | | | | | | | | | | | | | | Some plugins might create internal queues that should not be accounted for the total number of messages on the system. These can now be filtered out using a regular expression on the queue name. Individual queue stats are still available
* | | Merge pull request #3770 from easyteacher/systemd-hardeningMichael Klishin2021-11-191-0/+13
|\ \ \ | | | | | | | | Add systemd hardening parameters in rabbitmq-server.service.example
| * | | Add systemd hardening parameters in rabbitmq-server.service.exampleFushan Wen2021-11-191-0/+13
| | | | | | | | | | | | | | | | | | | | systemd offers various options to harden services. To see details please visit https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort