Commit Graph

49842 Commits

Author SHA1 Message Date
Philip Kuryloski f3ef80130d
Merge pull request #3763 from rabbitmq/pjk25/bazel-package-generic-unix
Add the bazel target :package-generic-unix
2021-11-18 12:34:42 -08:00
Philip Kuryloski 11fd866247 Add the bazel target :package-generic-unix
Which can be used to build the artifact with bazel
2021-11-18 14:38:41 +01:00
Philip Kuryloski eaa1370dc8
Merge pull request #3755 from rabbitmq/bump-bazel-erlang
Adopt latest bazel-erlang
2021-11-18 05:35:02 -08:00
Michael Klishin 665d100e39
Merge pull request #3752 from rabbitmq/stream-flakes
Stream flake fixes
2021-11-18 15:37:56 +03:00
Michael Klishin b9c7aa8709
Resolve 3.8 release note conflicts 2021-11-18 15:34:20 +03:00
Michael Klishin 7d497d5bb4
3.8.26 release notes
(cherry picked from commit 77d8b6a9e8)
2021-11-18 15:32:50 +03:00
Michael Klishin 5d91e958c2
Initial 3.8.25 release notes 2021-11-18 15:29:49 +03:00
Michael Klishin bd67a5af7b
Merge pull request #3759 from rabbitmq/oauth2-config-fix
Fix rabbitmq.conf translation rule for OAuth2 signing keys
2021-11-18 15:13:30 +03:00
Michal Kuratczyk acf474e056 Fix cuttlefish config for oauth2
The structure of the signing_keys map should be `<<"id">> => {pem, <<"key">>}`.
Previously it was mapped directly as `<<"id">> => <<"key">>`.
2021-11-18 12:58:57 +01:00
GitHub e11b344288 Adopt latest bazel-erlang
- bazel-erlang@5bf79d7fb9a2c8bf7bfb6a90f5104a10b5c9107b
2021-11-18 03:01:44 +00:00
Karl Nilsson 8542b54f7e Stream coordinator: only initialise queue record if stream id matches 2021-11-17 16:16:37 +00:00
Philip Kuryloski 5d579d1447 Fixup update-rbe-images workflow 2021-11-17 15:11:51 +01:00
Michael Klishin 6111029ceb
Initial 3.9.10 release notes 2021-11-17 12:06:33 +03:00
Karl Nilsson 3b62665b34 Stream coordinator: log member deletions 2021-11-17 09:04:35 +00:00
Philip Kuryloski e52a127ef9 Apply changes from #3748 to remaining workflows 2021-11-17 09:53:39 +01:00
Philip Kuryloski 4f05a58f3d
Merge pull request #3748 from siggisim/fix-keepalives
Further tweaks to GitHub Actions networking keep-alive
2021-11-17 00:03:17 -08:00
Siggi Simonarson ca129c87cf Further keepalive networking tweaks 2021-11-16 18:39:48 -08:00
dcorbacho a7c9b66653 Use own key to exclude queues 2021-11-16 16:53:17 +01:00
Luke Bakken 6aaf7ec597
Merge pull request #3740 from rabbitmq/rabbitmq-server-3739
Distribution listener settings support in rabbitmq.conf
2021-11-16 06:36:48 -08:00
Philip Kuryloski ae45ab54a5
Merge pull request #3738 from rabbitmq/cleanup-symlink-private-log-message
Fixup the "Failed to symlink private_log directory." error in bazel
2021-11-16 06:12:22 -08:00
Michael Klishin f47de00910
Merge pull request #3731 from rabbitmq/stream-mnesia-update
Stream coordinator: only update amqqueue record if stream id matches
2021-11-16 16:53:54 +03:00
Michael Klishin 8a30cf1c86
Distribution listener settings support in rabbitmq.conf
* distribution.listener.interface
 * distribution.listener.port_range.min
 * distribution.listener.port_range.max

Closes #3739
2021-11-16 16:37:28 +03:00
Karl Nilsson bc7b339e7a Stream coordinator: only update amqqueue record if stream id matches
From the coordinator's POV each stream has a unique id consisting of the
vhost, queuename and a high resolution timestamp even if several stream ids
relate to the same queue record.

When performing the mnesia update the coordinator now checks that the current stream id
matches that of the update_mnesia action and does not change the queue record if
the stream id is not the same.

This should avoid "old" incarnations of a stream queue updating newer ones
with incorrect information.
2021-11-16 12:32:33 +00:00
Philip Kuryloski 3b48ebabf7 Fixup the "Failed to symlink private_log directory." error in bazel
While it doesn't cause any tests to fail, it's confusing to see it in
the logs
2021-11-16 13:25:53 +01:00
Philip Kuryloski e5a4907a60 Update exchange_SUITE timeouts
When the suite passes, it's about 120 seconds total, so 5 minutes per
case seems to be too much. Additionally, if the suite times out at the
bazel level, we get no logs, so the cause of the timeout is unclear.
2021-11-16 12:03:20 +01:00
dcorbacho 242cb539b3 Exclude queues from aggregated metrics in prometheus collector
Uses same exclusion pattern as the management agent
2021-11-16 10:23:39 +01:00
Philip Kuryloski fb251abdb2
Merge pull request #3735 from rabbitmq/use-remote-download-minimal
Use --remote_download_minimal and Actions Cache
2021-11-16 00:56:52 -08:00
Philip Kuryloski 470c94692c Use the GitHub Actions Cache in conjuction with buildbuddy 2021-11-16 09:45:29 +01:00
Philip Kuryloski 74ae98473e Use ubuntu-latest for all github actions workflows 2021-11-16 09:39:35 +01:00
Philip Kuryloski 943949d509 Use --remote_download_minimal try see if that helps with GH Actions 2021-11-16 09:39:11 +01:00
Luke Bakken 939673b31d
Merge pull request #3685 from rabbitmq/lukebakken/core-started-before-postlaunch-phase
Set core_started before running postlaunch phase
2021-11-15 07:04:25 -08:00
dcorbacho e299178471 Store collector pattern in process memory
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
2021-11-15 11:53:50 +01:00
Philip Kuryloski 1f7db0fa35 Update rabbit_ct_broker_helpers:force_vhost_failure/4 for erpc
https://www.erlang.org/doc/man/erpc.html#call-5
2021-11-15 10:53:10 +01:00
Philip Kuryloski d3dcc782f2
Merge pull request #3722 from rabbitmq/use-bazel-toolchains-v2
Use externailzed rbe config in bazel
2021-11-15 00:19:43 -08:00
Philip Kuryloski df0fa0ce60 Use externailzed rbe config in bazel 2021-11-15 09:12:23 +01:00
Michael Klishin 01f68b80c9
Merge pull request #3723 from wrobell/rabbitmq-streams-doc-protocol-deliver-fix
Fix description of "deliver" command in RabbitMQ Streams protocol documentation
2021-11-14 21:59:12 +03:00
wrobell b4f39031f6 Fix description of "deliver" command in RabbitMQ Streams protocol documentation
Add missing fields - chunk type, timestamp, trailer length and reserved.
The fields are added after looking at

    3fd348d225/src/main/java/com/rabbitmq/stream/impl/ServerFrameHandler.java (L267)
    https://github.com/qweeze/rstream/blob/master/rstream/schema.py#L376

Change type of "version" field - it shall be uint16 like in other
commands.
2021-11-14 14:51:35 +00:00
Michael Klishin 38982e2c67
Merge pull request #3714 from rabbitmq/mqtt-crash-log
Prevent crash logs when mqtt user is missing permissions
2021-11-13 04:28:57 +03:00
Michael Klishin 98f9b126af
Merge pull request #3716 from rabbitmq/stream-coordinator-delete-stream-fix
Stream coordinator: reset reply_to for delete_stream command
2021-11-13 04:28:39 +03:00
Philip Kuryloski 983afafdee Additional ci tweak based on buildbuddy's input
Based on https://github.com/actions/virtual-environments/issues/1187
and per buildbuddy's suggestion
2021-11-12 23:37:50 +01:00
Philip Kuryloski 2a5d680ee2 Revert "Merge pull request #3683 from rabbitmq/use-bazel-toolchains"
This reverts commit 82508ba167, reversing
changes made to 115b951b9c.
2021-11-12 23:30:42 +01:00
Philip Kuryloski 88e241cb12 Limit AWS integration tests to main branches
As they can be run manually if needed on PR branches
2021-11-12 23:29:50 +01:00
Karl Nilsson 7e4a33708b Stream coordinator: reset reply_to for delete_stream command
So that a reply is sent to the caller immediately after the command has
been processed as intended. Previously it was possible if reply_to was
already set that a reply never was sent to the caller and the caller
times out. This should improve some flakyness in the rabbit_stream_queue suite
as well.

Strictly this is a change that introduces indeterminism in the coordinator
state machine as during an upgrade different members may run different code
for this command. But as this state only affects side effects (replies) and
the state for the streams affected will shortly be removed this is very
unlikely to cause any real issues.
2021-11-12 17:27:34 +00:00
Philip Kuryloski 82508ba167
Merge pull request #3683 from rabbitmq/use-bazel-toolchains
Use externailzed rbe config in bazel
2021-11-12 09:15:39 -08:00
Alexey Lebedeff e0723d5e66 Prevent crash logs when mqtt user is missing permissions
Fixes #2941

This adds proper exception handlers in the right places. And tests
ensure that it indeed provides nice neat logs without large
stacktraces for every amqp operation.

Unnecessary checking for subscribe permissions on topic was dropped,
as `queue.bind` does exactly the same check. Topic permissions tests
were also added, and they indeed confirm that there was no change in
behaviour.

Ideally the same explicit topic permission check should be dropped for
publishing, but it's more complicated - so for now there only a
detailed comment in the source code explaining it.

A few other things were also optimized away:
- Using amqp client to test for queue existence
- Creating queues/starting consumptions too eagerly, even if not yet
  requested by client
2021-11-12 18:03:05 +01:00
Philip Kuryloski 115b951b9c
Merge pull request #3710 from rabbitmq/generate-rabbitmqadmin-cli-bazel
Generate the rabbitmqadmin cli under bazel
2021-11-12 07:24:37 -08:00
Michael Klishin 9fc298dffa
Merge pull request #3656 from rabbitmq/qq-messages-pending-fixes
Expose pending enqueues in quorum queue overview
2021-11-12 17:08:16 +03:00
Karl Nilsson bf6c747607 Expose pending enqueues in overview output to allow
debugging of situation where messages may be stuck.

Also cancel rabbit_fifo_client timer after message resend to avoid
resending them again when the timer triggers.
2021-11-12 13:37:15 +00:00
Michael Klishin 267558b9eb
Merge pull request #3676 from rabbitmq/qq-init-opts
Avoid slow mnesia transaction on QQ init
2021-11-12 15:52:02 +03:00
dcorbacho 055581f33d Use a pattern to filter out some queues from global stats
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
2021-11-12 13:07:19 +01:00