Commit Graph

31144 Commits

Author SHA1 Message Date
Michal Kuratczyk 02df90c490
Trigger CI
Peer Discovery AWS Integration Test / Integration Test (push) Waiting to run Details
2025-07-16 15:10:19 +02:00
Michal Kuratczyk 4f3f4b085d
[skip ci] Code formatting 2025-07-16 00:31:42 +02:00
Michal Kuratczyk d2b5384e3f
Remove test for rabbit_log:log/4 2025-07-16 00:31:42 +02:00
Michal Kuratczyk 7e7116ae7e
rabbit_log -> logger in MQTT test 2025-07-16 00:31:42 +02:00
Michal Kuratczyk be69ab278e
Remove rabbit_log from Makefile 2025-07-16 00:31:42 +02:00
Michal Kuratczyk abe7de2460
rabbit_log -> logger in CLI tests 2025-07-16 00:31:42 +02:00
Michal Kuratczyk 6c5c9280ff
Don't meck rabbit_log 2025-07-16 00:31:42 +02:00
Michal Kuratczyk e1bae51974
rabbit_log -> logger in dynamic calls 2025-07-16 00:31:42 +02:00
Michal Kuratczyk d0b5f487cd
Make dialyzer happy 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 4fc00c4aaa
Add exchange name back to the log 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 1c5f3abf55
Add missing includes 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 7ac117e133
Add missing include 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 82e285c71e
Remove incorrect include 2025-07-16 00:31:41 +02:00
Michal Kuratczyk d21de3991f
Fix AMQP-0.8 :) 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 12db921b61
[skip ci] fix AMQP-1.0 DBG macro 2025-07-16 00:31:41 +02:00
Michal Kuratczyk c876c31283
[skip ci] Remove rabbit_log_shovel, use LOG_ macros directly 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 78df47b2fe
[skip ci] Remove redundant pid metadata in LOG_ macros 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 09a73910c2
[skip ci] Set logging domain to `?RMQLOG_DOMAIN_GLOBAL` on startup
`?RMQLOG_DOMAIN_GLOBAL` used to be added by a now deleted logging
module rabbit_log.
2025-07-16 00:31:41 +02:00
Michal Kuratczyk 24e0d0434a
[skip ci] Simplify logging around peer discovery 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 052ca3bb5a
[skip ci] Remove rabbit_log_ldad and use LOG_ macros 2025-07-16 00:31:41 +02:00
Michal Kuratczyk d92be18f2f
[skip ci] Remove rabbit_log_connection and use LOG_ macros 2025-07-16 00:31:41 +02:00
Michal Kuratczyk 3003c5b10f
[skip ci] Remove rabbit_log_federation and use LOG_ macros 2025-07-16 00:31:41 +02:00
Michal Kuratczyk bfedcbbe43
[skip ci] Remove `pid` from logger process metadata
It's added automatically by logger
2025-07-16 00:31:41 +02:00
Michal Kuratczyk 26b8494627
[skip ci] Remove rabbit_log_prelaunch 2025-07-16 00:31:40 +02:00
Michal Kuratczyk f5c03263b9
[skip ci] Remove rabbit_log_mirroring 2025-07-16 00:31:40 +02:00
Michal Kuratczyk 183513145d
[skip ci] Remove rabbit_log_channel and use LOG_ macros directly 2025-07-16 00:31:40 +02:00
Michal Kuratczyk 65defd5419
[skip ci] Remove rabbit_log_queue, replace with LOG_ macros 2025-07-16 00:31:40 +02:00
Michal Kuratczyk a31e59abda
[skip ci] Replace logger: calls is LOG_ macros 2025-07-16 00:31:40 +02:00
Michal Kuratczyk 44cf0892d8
[skip ci] Remove rabbit_log and switch to LOG_ macros 2025-07-16 00:31:40 +02:00
Arnaud Cogoluègnes ff98f6fc1e
Fix flake in stream plugin test suite
The closing sequence must account for consumer update and metadata
update frames the broker sends when a consumer group changes and when a
stream is deleted.
2025-07-15 15:51:02 +02:00
Michal Kuratczyk e7c2dc5aff
Show current state of deprecated features 2025-07-14 15:56:28 +02:00
dependabot[bot] a014788271
[skip ci] Bump the dev-deps group across 3 directories with 2 updates
Bumps the dev-deps group with 1 update in the /deps/rabbit/test/amqp_jms_SUITE_data directory: [com.google.googlejavaformat:google-java-format](https://github.com/google/google-java-format).
Bumps the dev-deps group with 1 update in the /deps/rabbitmq_stream/test/rabbit_stream_SUITE_data directory: [com.google.googlejavaformat:google-java-format](https://github.com/google/google-java-format).
Bumps the dev-deps group with 2 updates in the /deps/rabbitmq_stream_management/test/http_SUITE_data directory: [com.google.googlejavaformat:google-java-format](https://github.com/google/google-java-format) and [com.squareup.okhttp3:okhttp-jvm](https://github.com/square/okhttp).


Updates `com.google.googlejavaformat:google-java-format` from 1.27.0 to 1.28.0
- [Release notes](https://github.com/google/google-java-format/releases)
- [Commits](https://github.com/google/google-java-format/compare/v1.27.0...v1.28.0)

Updates `com.google.googlejavaformat:google-java-format` from 1.27.0 to 1.28.0
- [Release notes](https://github.com/google/google-java-format/releases)
- [Commits](https://github.com/google/google-java-format/compare/v1.27.0...v1.28.0)

Updates `com.google.googlejavaformat:google-java-format` from 1.27.0 to 1.28.0
- [Release notes](https://github.com/google/google-java-format/releases)
- [Commits](https://github.com/google/google-java-format/compare/v1.27.0...v1.28.0)

Updates `com.squareup.okhttp3:okhttp-jvm` from 5.0.0 to 5.1.0
- [Changelog](https://github.com/square/okhttp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/square/okhttp/compare/parent-5.0.0...parent-5.1.0)

---
updated-dependencies:
- dependency-name: com.google.googlejavaformat:google-java-format
  dependency-version: 1.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-deps
- dependency-name: com.google.googlejavaformat:google-java-format
  dependency-version: 1.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-deps
- dependency-name: com.google.googlejavaformat:google-java-format
  dependency-version: 1.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-deps
- dependency-name: com.squareup.okhttp3:okhttp-jvm
  dependency-version: 5.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-13 00:57:02 +00:00
dependabot[bot] 50348ab6ed
[skip ci] Bump the prod-deps group across 4 directories with 1 update
Bumps the prod-deps group with 1 update in the /deps/rabbit/test/amqp_jms_SUITE_data directory: [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless).
Bumps the prod-deps group with 1 update in the /deps/rabbitmq_mqtt/test/java_SUITE_data directory: [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless).
Bumps the prod-deps group with 1 update in the /deps/rabbitmq_stream/test/rabbit_stream_SUITE_data directory: [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless).
Bumps the prod-deps group with 1 update in the /deps/rabbitmq_stream_management/test/http_SUITE_data directory: [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless).


Updates `com.diffplug.spotless:spotless-maven-plugin` from 2.44.5 to 2.45.0
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.44.5...lib/2.45.0)

Updates `com.diffplug.spotless:spotless-maven-plugin` from 2.44.5 to 2.45.0
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.44.5...lib/2.45.0)

Updates `com.diffplug.spotless:spotless-maven-plugin` from 2.44.5 to 2.45.0
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.44.5...lib/2.45.0)

Updates `com.diffplug.spotless:spotless-maven-plugin` from 2.44.5 to 2.45.0
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.44.5...lib/2.45.0)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-version: 2.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-deps
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-version: 2.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-deps
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-version: 2.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-deps
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-version: 2.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-12 18:33:43 +00:00
Michael Klishin 5345b647df
Merge pull request #14211 from cloudamqp/type_state_undef
Trigger a 4.2.x alpha release build / trigger_alpha_build (push) Has been cancelled Details
Test (make) / Build and Xref (1.18, 26) (push) Has been cancelled Details
Test (make) / Build and Xref (1.18, 27) (push) Has been cancelled Details
Test (make) / Build and Xref (1.18, 28) (push) Has been cancelled Details
Test (make) / Test (1.18, 28, khepri) (push) Has been cancelled Details
Test (make) / Test (1.18, 28, mnesia) (push) Has been cancelled Details
Test (make) / Test mixed clusters (1.18, 28, khepri) (push) Has been cancelled Details
Test (make) / Test mixed clusters (1.18, 28, mnesia) (push) Has been cancelled Details
Test (make) / Type check (1.18, 28) (push) Has been cancelled Details
Handle type state being undefined for very old queues
2025-07-11 11:54:11 -04:00
David Ansari 250be2c6fb
Merge pull request #14209 from rabbitmq/amqp-decimal
Trigger a 4.2.x alpha release build / trigger_alpha_build (push) Waiting to run Details
Test (make) / Build and Xref (1.18, 26) (push) Waiting to run Details
Test (make) / Build and Xref (1.18, 27) (push) Waiting to run Details
Test (make) / Build and Xref (1.18, 28) (push) Waiting to run Details
Test (make) / Test (1.18, 28, khepri) (push) Waiting to run Details
Test (make) / Test (1.18, 28, mnesia) (push) Waiting to run Details
Test (make) / Test mixed clusters (1.18, 28, khepri) (push) Waiting to run Details
Test (make) / Test mixed clusters (1.18, 28, mnesia) (push) Waiting to run Details
Test (make) / Type check (1.18, 28) (push) Waiting to run Details
Fix AMQP crashes for approximate numbers
2025-07-11 10:21:54 +02:00
Péter Gömöri cc95d37718 Handle type state being undefined for very old queues
Field #amqqueue.type_state can be undefined for queues declared on old
RabbitMQ versions before 3.8.0. Ensure `amqqueue:get_type_state/1`
always returns a map according to its type spec to make life of
calling code easier.
2025-07-11 09:29:58 +02:00
Péter Gömöri 7d4ecb5e82 Refactor mqtt_processor get_vhost functions
In order to clarify preference of different methods. This commit oes
not change functionality.

This highlights some inconsistences:

- If both User/Password and SslLogin are provided, in
  `check_credentials` User/Password takes precedence while in
  `get_vhost` SslLogin

- If SslLogin is provided (but no mapping is found) vhost from port
  mapping has precedence over vhost from UserName, while in case of
  no ssl it is the other way around.
2025-07-11 09:16:26 +02:00
David Ansari 5c318c8e38 Fix AMQP crashes for approximate numbers
This commit fixes several crashes:
1. Serialising IEEE 754-2008 decimals as well as
   NaN and +-Inf for float and doubles crashed
2. Converting IEEE 754-2008 decimals as well as NaN and +-Inf
   for float and dobules from amqp to amqpl crashed

The 2nd crash looks as follows:
```
exception exit: {function_clause,
                    [{mc_amqpl,to_091,
                         [<<"decimal-32">>,{as_is,116,<<124,0,0,0>>}],
                         [{file,"mc_amqpl.erl"},{line,747}]},
                     {mc_amqpl,'-convert_from/3-lc$^2/1-2-',1,
                         [{file,"mc_amqpl.erl"},{line,155}]},
                     {mc_amqpl,convert_from,3,
                         [{file,"mc_amqpl.erl"},{line,155}]},
                     {mc,convert,3,[{file,"mc.erl"},{line,358}]},
                     {rabbit_channel,outgoing_content,2,
                         [{file,"rabbit_channel.erl"},{line,2649}]},
                     {rabbit_channel,handle_basic_get,7,
                         [{file,"rabbit_channel.erl"},{line,2636}]},
                     {rabbit_channel,handle_cast,2,
                         [{file,"rabbit_channel.erl"},{line,617}]},
                     {gen_server2,handle_msg,2,
                         [{file,"gen_server2.erl"},{line,1056}]}]}
```
The 2nd crash is fixed by omitting any `{as_is, _TypeCode, _Binary}`
values during AMQP 1.0 -> AMQP 0.9.1 conversion.
This will be documented in the conversion table.

In addition to fixing these crashes, this commit adds tests that
RabbitMQ is able to store and forward IEEE 754-2008 decimals.
IEEE 754-2008 decimals can be parsed and serialsed by RabbitMQ.
However, RabbitMQ doesn't support interpreting this values. For example,
they can't be used on the headers exchange or for AMQP filter
expressions.
2025-07-10 21:14:26 +02:00
Péter Gömöri 10f1ea1bac Don't use Mnesia in rabbitmq_mqtt/test/processor_SUITE
Soon Mnesia will be gone from RabbitMQ, so better make the test suite
metadata store agnostic.
2025-07-10 15:52:53 +02:00
Michal Kuratczyk 05b44129c4
quorum_queue_SUITE: fixes for 3.13 compatibility 2025-07-08 10:52:24 +02:00
Michal Kuratczyk c35395ecc6
skip dead_letter_headers_should_not_be_appended_for_republish with 3.13 2025-07-08 10:52:24 +02:00
Michal Kuratczyk 966cc05408
amqp_client_SUITE: skip some tests in mixed-version with 3.13 2025-07-08 10:52:24 +02:00
Michal Kuratczyk ab75d84d8e
Skip Khepri-specific tests when 3.13 is in the mix 2025-07-08 10:52:24 +02:00
Michal Kuratczyk cb6ecb7195
Disable forget_cluster_node test (not supported by 3.13) 2025-07-08 10:52:24 +02:00
Michal Kuratczyk 48f335b0f8
Use ra:member_overview instead of rabbit_fifo:overview
member_overview works better with different machine versions
2025-07-08 10:52:24 +02:00
Michal Kuratczyk e3df8bcd61
Enable FFs required by 4.0 2025-07-08 10:52:24 +02:00
Michal Kuratczyk e99018c25f
feature flags: skip tests for recently fixed bugs
These tests fail in a mixed-version cluster with 3.13
2025-07-08 10:52:24 +02:00
Michal Kuratczyk 3b453abced
QQ: disable some tests in 3.13/mixed version situations 2025-07-08 10:52:24 +02:00
Michal Kuratczyk 2808154f39
CLI: ignore the exact error message
There error is slightly different for different Elixir versions
2025-07-08 10:52:24 +02:00
Michal Kuratczyk e459b2d14a
Skip async_notify_unsettled_classic_queue on 3.13 2025-07-08 10:52:24 +02:00