| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
The confirms will instead be sent when the message store syncs
to disk. The problem with doing confirms on remove is that it
happens far too often and it brings down the overall performance
despite sending the confirms earlier.
|
|\
| |
| | |
Fix channel crash when draining AMQP 1.0 credits from classic queue
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Classic queues used a different format for the `{send_drained, _}`
queue type action which was missed originally. This change handles both
formats in the channel for backwards compatibility
as well as changes classic queues to conform to the same format when
sending the queue event.
Whilst adding tests for this in the amqp10 plugin another issue around
the amqp10_client and filters was discovered and this commit also includes
improvements in this area. Such as more leninet support of source filters.
|
|\ \
| | |
| | | |
Forward-port dialyzer related rabbitmq_cli fixes from #7122
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Fix issue #7142
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The issue is that users retrieved with
the intention to list in the limits view
are not paged hence they are not wrapped
around a paging struct where users would be
under items attribute.
Pending selenium tests
|
|\ \ \
| | | |
| | | | |
Fix shell quoting in bazel rabbitmqctl helper
|
|/ / /
| | |
| | |
| | | |
E.g. any complex `rabbitmqctl eval` was not possible via `bazel run rabbitmqctl`.
|
|\ \ \
| |/ /
|/| | |
CQ: Fix performance regression after moving to v2 sets
|
| | |
| | |
| | |
| | |
| | | |
sets:from_list also must be told to use v2 otherwise
it will use v1.
|
|\ \ \
| |_|/
|/| | |
List CPU core count in 'rabbitmq-diagnostics cluster_status'
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Both to simplify troubleshooting in some cases and to make it
easier to spot licensing irregularities.
|
|\ \ \
| | | |
| | | | |
Activate stream delivery v2 correctly
|
| | | |
| | | |
| | | |
| | | |
| | | | |
As soon as v2 is supported, whatever the min supported
version is.
|
|\ \ \ \
| |_|/ /
|/| | | |
|
|/ / /
| | |
| | |
| | | |
(cherry picked from commit 5d8ba2f32ae012d883cc61d3e15593b67cf89e37)
|
|\ \ \
| | | |
| | | | |
3.10.17 release notes
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
rabbitmq/dependabot/github_actions/main/docker/build-push-action-4
Bump docker/build-push-action from 2 to 4
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2 to 4.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2...v4)
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
|
|\ \ \
| |/ /
|/| | |
Support OAuth 2.0 authentication in AMQP 1.0 plugin
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
when opening an internal amqp connection
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use the outcome from first authentication
stored in the #user.authz_backends to authenticate
subsequent attempts which occur when a session is
opened.
In particular, during the first authentication attempt
which occurs during the sasl handshake, the amqp 1.0
plugins reads and validates JWT token present in the
password field.
When a new AMQP 1.0 session is opened, the plugin creates
an internal AMQP connection which triggers a second/nth
authentication. For this second/nth authentication, the
plugin propagates as Authentication Credentials the outcome
from the first authentication which is stored in the
`#user.authz_backends`.
The Oauth2 backend first attempts to authenticate using
the password credentials else it uses the credential with the
key `rabbit_auth_backend_oauth2` which has a function which
returns the decoded token
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Mark AMQP 1.0 properties chunk as binary
It is marked as an UTF8 string, which is not, so
strict AMQP 1.0 codecs can fail.
* Re-use AMQP 1.0 binary chunks if available
Instead of converting from AMQP 091 back to AMQP 1.0.
This is for AMQP 1.0 properties, application properties,
and message annotations.
* Test AMQP 1.0 binary chunk reuse
* Support AMQP 1.0 multi-value body better
In the rabbit_msg_record module, mostly. Before this commit,
only one Data section was supported. Now multiple Data sections,
multiple Sequence sections, and an AMQP value section are supported.
* Add test for non-single-data-section AMQP 1.0 message
* Squash some Dialyzer warnings
* Silent dialyzer for a function for now
* Fix type declaration, use type, not atom
* Address review comments
|
|\ \ |
|
| |/ |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add rabbitmq_cli dialyze to bazel
and fix a number of warnings
Because we stop mix from recompiling rabbit_common in bazel, many
unknown functions are reported, so this dialyzer analysis is somewhat
incomplete.
* Use erlang dialyzer for rabbitmq_cli rather than mix dialyzer
Since this resolves all of the rabbit functions, there are far fewer
unknown functions.
Requires yet to be released rules_erlang 3.9.2
* Temporarily use pre-release rules_erlang
So that checks can run on this PR without a release
* Fix additional dialyzer warnings in rabbitmq_cli
* rabbitmq_cli: mix format
* Additional fixes for ignored return values
* Revert "Temporarily use pre-release rules_erlang"
This reverts commit c16b5b6815abd7e323fc28aa3ce8c8af255b70e5.
* Use rules_erlang 3.9.2
|
|\ |
|
|/ |
|
|\
| |
| | |
Remove MQTT processor field peer_addr
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
as it seems to always match peer_host.
Commit 7e09b85426959883c2cbe5f409aeaa299427fd8e adds peer address
provided by WebMQTT plugin.
However, this seems unnecessary since function rabbit_net:peername/1 on
the unwrapped socket provides the same address.
The peer address was the address of the proxy if the proxy protocol is
enabled.
This commit simplifies code and reduces memory consumption.
|
|\ \
| | |
| | |
| | | |
rabbitmq/dependabot/github_actions/main/actions/cache-3.2.4
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.3...v3.2.4)
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
|
|\ \
| |/
|/| |
3.10.16 release notes
|
|/
|
|
|
|
| |
3.10.15 never shipped due to a missing Debian package build time
dependency which was not practically possible to "retry".
Therefore we will be skipping that version.
|
|\
| |
| | |
Fix direct_exchange_routing_v2 migration
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Multiple users reported the following error when starting RabbitMQ in
containers:
```
Feature flags: failed to enable `direct_exchange_routing_v2`: {error,
{badarg,
[{ets,lookup,
[rabbit_exchange,
{resource,
<<"/">>,
exchange,
<<"messages">>}],
[{error_info,
#{cause =>
id,
module =>
erl_stdlib_errors}}]},
{rabbit_misc,
dirty_read,
1,
[{file,
"rabbit_misc.erl"},
{line,
372}]},
{rabbit_binding,
'-populate_index_route_table/0-fun-0-',
1,
[{file,
"rabbit_binding.erl"},
{line,
757}]},
...
```
Although Mnesia table rabbit_exchange is present when the migration
function for direct_exchange_routing_v2 runs, its ETS table is not yet
present because there is no table copy on the local node.
The table copy was added later after all feature flags were synced.
Fixes #7068.
|
|\
| |
| | |
Set MQTT max packet size
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In MQTT 3.1.1, the CONNECT packet consists of
1. 10 bytes variable header
2. ClientId (up to 23 bytes must be supported)
3. Will Topic
4. Will Message (maximum length 2^16 bytes)
5. User Name
6. Password
Restricting the CONNECT packet size to 2^16 = 65,536 bytes
seems to be a reasonalbe default.
The value is configurable via the MQTT app parameter
`max_packet_size_unauthenticated`.
(Instead of being called `max_packet_size_connect`) the
name `max_packet_size_unauthenticated` is generic
because MQTT 5 introduces an AUTH packet type.
|
|/ |
|
|\
| |
| | |
3.11.8 release notes
|
|/ |
|
|\
| |
| | |
3.10.15 release notes
|
| | |
|