Commit Graph

49842 Commits

Author SHA1 Message Date
Arnaud Cogoluègnes 147659093f
Add functions to create/delete super stream in manager 2021-10-11 16:50:01 +02:00
Karl Nilsson 92f83a1af0 Improve consuming from a stream using AMQP 1.0
Allow an offset spec to be used to attach at an appropriate point in the
stream. This is done by specifying a source filter with the key rabbitmq:stream-offset-spec.

The offset is also included as a message annotation with the key x-stream-offset.

When a link is detached we also issue a basic.cancel to the 0.9.1 channel. If this wasn't done
and you detached then re-attached a link for the same queue you'd get a consumer-tag offset
error from the 0.9.1 channel.
2021-10-11 13:32:38 +01:00
Vy Hong a1a22b2a3c Log response body of failed AWS requests 2021-10-08 14:48:40 -07:00
Karl Nilsson db3944cfc4 Stream queue: use local pid for offset listeners
When a consumer reaches the end of a stream it need to register an
offset listener with the local stream member so that it can be notified
when new stream messages are committed. The stream queue implementation
for some reason registered offset listeners with the leader, not the local
member.
2021-10-07 14:31:09 +01:00
Philip Kuryloski 49a47586b0 Simplify erlc opts for rabbitmq_peer_discovery_common 2021-10-07 09:53:11 +02:00
Michael Klishin 6a9790189c
Merge branch 'tvhong-amazon-tvhong/fix_type_specs' 2021-10-07 03:43:14 +03:00
Michael Klishin 798be7dcaf
Peer discovery AWS, K8S: more Dialyzer fixes 2021-10-07 03:42:44 +03:00
Michael Klishin d16037b419
Merge pull request #3545 from LuisCusihuaman/filter-exchanges-by-vhost-fix
fix: list exchanges in current virtual host in topic permissions
2021-10-07 03:04:52 +03:00
Luis Cusihuaman 5f81fff959 fix: list exchanges only by current vhost in topic-permissions 2021-10-06 19:06:00 -03:00
Philip Kuryloski 862917955b Adopt new default branch for ra 2021-10-06 13:36:32 +02:00
Philip Kuryloski 41d6172bf4 Adopt renamed default branch for osiris 2021-10-06 13:31:19 +02:00
GitHub 31aa5874e8 Adopt otp 24.1.2 for OCI workflow 2021-10-06 03:04:52 +00:00
Philip Kuryloski 9c6b85c98b Consume Ra as a bazel workspace
Since https://github.com/rabbitmq/ra/pull/227 has been merged
2021-10-05 11:04:12 +02:00
Philip Kuryloski 1ad2452e6e Fixup workflow syntax for update-* workflows 2021-10-04 11:19:56 +02:00
Philip Kuryloski aefb298021 Avoid force pushing in update-rbe-images workflow
The standard behavior of the action used in this automation is to
force push the branch if already exists. In this case we will just
short circuit our workflow. It will mean that the action can no longer
automatically close the PR if the diff has converged to zero, but that
seems worth the tradeoff.
2021-10-04 11:08:22 +02:00
Philip Kuryloski cccd1e151c Avoid force pushing in update-otp-for-oci workflow
The standard behavior of the action used in this automation is to
force push the branch if already exists. In this case we will just
short circuit our workflow. It will mean that the action can no longer
automatically close the PR if the diff has converged to zero, but that
seems worth the tradeoff.
2021-10-04 11:06:14 +02:00
Michael Klishin 26af1174c5
Merge pull request #3533 from GitHubPang/patch-1
Fix typo in UI help hint
2021-10-04 03:26:32 +03:00
GitHubPang 0f2a6123df
Fix typo in UI help hint 2021-10-04 08:01:43 +08:00
Philip Kuryloski a7e212d50e
Merge pull request #3529 from rabbitmq/bump-otp-for-oci
Adopt otp 24.1.1 for OCI workflow
2021-10-01 14:54:22 +02:00
Philip Kuryloski c9c6198455 Remove obsolete workflow
Now that the helpers have been merged in, there is no need for this
automation.
2021-10-01 08:34:50 +02:00
GitHub 59fb2afce9 Adopt otp 24.1.1 for OCI workflow 2021-10-01 03:04:56 +00:00
Michael Klishin 72c2e152ef
Merge pull request #3499 from rabbitmq/cla-url
Update CLA URL
2021-10-01 00:16:03 +03:00
Philip Kuryloski c14a6e87e4
Merge pull request #3525 from rabbitmq/pjk25/fix-external-dep-priv-folder-in-bazel
Fix handling of priv dirs for external deps
2021-09-30 16:49:50 +02:00
Philip Kuryloski 1d4ddceb5d Fix handling of priv dirs for external deps
These were placed incorrectly for rabbitmq_home rules in bazel
2021-09-30 16:26:33 +02:00
Alexey Lebedeff 8c243c592d
Merge pull request #3520 from rabbitmq/alebedeff/opp-92
Emit identity info in prometheus /metrics/detailed endpoint
2021-09-30 13:45:26 +02:00
Philip Kuryloski ab0a9cd700
Merge pull request #3516 from rabbitmq/move-ct-helpers-to-monorepo
Move CT helpers to monorepo
2021-09-30 11:29:26 +02:00
Alexey Lebedeff 46df4f1689 Update makefiles/bazel to reflect CT helpers repo merge-in 2021-09-30 10:48:11 +02:00
Philip Kuryloski 9c9fb7ffb0 Shard cluster_management_SUITE by testcase to better manage timeouts
The suite level timeout the .erl I've learned is actually per
case. By sharding bu testcase, we can better match the common test
level and bazel level timeouts, such that we can get logs from remote
test run failures.
2021-09-30 10:38:39 +02:00
Michael Klishin 94f139e6fe
Merge pull request #3517 from tvhong-amazon/tvhong/unlock_specific_nodes
Reuse list of nodes in peer discovery plugins that use Erlang global locks
2021-09-30 05:13:17 +03:00
Vy Hong 7090199330 Reuse list of nodes in peer discovery plugins that use Erlang global locks
AWS, Kubernetes and Classic peer discovery plugins use list_nodes and
Erlang global:set_lock to create a mutex lock. To unlock, these plugins
get the latest list with list_nodes and call global:del_lock.

However, if list_nodes within unlock fails, RabbitMQ will throw an
uncaught exception and the lock will not be released until the node
holding the lock is restarted. This prevents new nodes from joining the
cluster.

This failure can be avoided by passing the list of nodes from lock to
unlock. If a node goes away (and comes back) between the lock and unlock
calls, del_lock could still successfully remove the lock. Similarly, if
a new node starts up between the lock and unlock calls, del_lock
wouldn't need to inform the new node.
2021-09-29 16:22:37 -07:00
Philip Kuryloski 1d90939cd9 Adjust BuildBuddy RBE image auto-bump for Erlang 24.1 2021-09-29 15:49:51 +02:00
Alexey Lebedeff b9072b5ac8 Merge rabbitmq_ct_client_helpers1 into monorepo 2021-09-28 19:53:20 +02:00
Alexey Lebedeff c292d04384 Merge rabbitmq_ct_helpers into monorepo with the whole history 2021-09-28 19:47:51 +02:00
Alexey Lebedeff 989a299720 Emit identity info in prometheus /metrics/detailed endpoint
This is needed to make filtering metrics on a cluster name possible.
2021-09-28 19:35:02 +02:00
Arnaud Cogoluègnes e8d0d380a2
Bump dependencies in stream Java tests 2021-09-28 14:02:10 +02:00
Arnaud Cogoluègnes fc80138204
Fallback to rabbit_stream:host/0 if advertised_tls_host not set
The advertised_host must also be tried for TLS connections.

References #3514
2021-09-28 14:00:41 +02:00
Carl Hörberg 52791c677b
Support for advertising different hostname for TLS stream connections
Use case: Allow plain connections over one (internal IP), and TLS
connections over another IP (eg. internet routable IP). Without this
patch a cluster can only support access over one or the other IP, not
both.

(cherry picked from commit b9e6aad035)
2021-09-28 13:47:22 +02:00
Philip Kuryloski f932c3e0bc bump a test timeout 2021-09-28 11:27:45 +02:00
Philip Kuryloski c0f796048d Fix a minor github actions copy paste error 2021-09-28 11:14:08 +02:00
Michael Klishin 04ae4ede5b
Merge pull request #3509 from rabbitmq/rabbitmq-server-3508-web-stomp-stream-consuming
Handle no-context delivery in web stomp
2021-09-27 22:28:16 +03:00
Michael Klishin eac71e6aa6
Merge pull request #3511 from Ayanda-D/include-auth-backend-stacktraces
Preserve stacktraces in propagated internal auth backend exceptions
2021-09-27 22:02:22 +03:00
Ayanda Dube 3bce36b667 Preserve stacktraces in propagated unexpected internal auth backend
exceptions.
2021-09-27 19:19:30 +01:00
Michael Klishin 8a096d3533
Update 3.9.7 release notes 2021-09-27 21:14:59 +03:00
Arnaud Cogoluègnes b758edc642
Handle no-context delivery in web stomp
To support messages from streams, which do not have a
context (for credit flow).

References rabbitmq/rabbitmq-stomp#138

Fixes #3508
2021-09-27 09:52:48 +02:00
Michael Klishin c78b04307b
Merge pull request #3506 from Ayanda-D/redundant-code
Remove redundant code in internal auth backend and queue consumers modules
2021-09-25 01:38:25 +03:00
Ayanda Dube 78145d880a Extract SingleActiveConsumer channel-pid and consumer refs only once 2021-09-24 18:15:36 +01:00
Ayanda Dube fb0b1ec75a Remove code repetion in rabbit_auth_backend_internal catch statements
by matching and reusing the raised exception class
2021-09-24 18:15:36 +01:00
Michael Klishin 35a1a364bd
Wording 2021-09-24 12:46:04 +03:00
Karl Nilsson 227d319636 Update 3.8.23 release notes with quorum queue memory fix. 2021-09-24 10:42:31 +01:00
Philip Kuryloski d7e9729ef6 Avoid triggering update-otp-for-oci workflow from other automation
workflows
2021-09-24 09:15:45 +02:00