Commit Graph

57202 Commits

Author SHA1 Message Date
Michael Klishin c3dd32fe8e 4.0 release notes: one more typo 2024-07-18 21:32:42 -04:00
Johan Rhodin a931cec76e fix typos 2024-07-18 21:32:42 -04:00
Michael Klishin c66e5ea058 Update 4.0.0 release notes 2024-07-18 21:32:42 -04:00
Karl Nilsson b3be7ceff3 Ra 2.13.1
This release contains improvements to the checkpointing feature
needed for quorum queues v4 and the following fixes:

* Add read to file:open/2 options in ra_lib:sync_file/1
* Emit the new local_query tuple only if query options are set
* bug fixes for checkpoints
2024-07-18 21:32:42 -04:00
Michael Klishin 625bb5f604
Merge pull request #11750 from rabbitmq/dependabot/maven/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot/main/org.springframework.boot-spring-boot-starter-parent-3.3.2
build(deps): bump org.springframework.boot:spring-boot-starter-parent from 3.3.1 to 3.3.2 in /deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot
2024-07-18 15:48:06 -04:00
Michael Klishin e2af359238
Merge pull request #11746 from rabbitmq/mk-rabbitmq-server-11743
Prometheus: expose memory breakdown metrics
2024-07-18 15:47:21 -04:00
dependabot[bot] 5b3716323a
build(deps): bump org.springframework.boot:spring-boot-starter-parent
Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.3.1...v3.3.2)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 18:50:58 +00:00
Michael Klishin c361eddad9 Assertions for #11743 2024-07-18 14:36:19 -04:00
Michael Klishin c98ac4d72b
Merge pull request #11747 from rabbitmq/dependabot/maven/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot_kotlin/main/org.springframework.boot-spring-boot-starter-parent-3.3.2
build(deps): bump org.springframework.boot:spring-boot-starter-parent from 3.3.1 to 3.3.2 in /deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot_kotlin
2024-07-18 14:30:43 -04:00
dependabot[bot] 1d31a436db
build(deps): bump org.springframework.boot:spring-boot-starter-parent
Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.3.1...v3.3.2)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 18:26:35 +00:00
Michael Klishin 5dad0f8c2a Prometheus: expose memory breakdown metrics
Closes #11743.
2024-07-18 14:18:10 -04:00
Diana Parra Corbacho cdff2ae66a Handle timeout_waiting_for_khepri_projections on cli commands 2024-07-18 16:08:21 +02:00
Gabriele Santomaggio 93946eeda0
Handle the rabbitmqqueue:declare
The rabbitmqqueue:declare is handled, and in case of known errors, the correct error code is sent back.

Signed-off-by: Gabriele Santomaggio <g.santomaggio@gmail.com>
2024-07-18 12:00:52 +02:00
Arnaud Cogoluègnes 58d835ba5d
MQTT auth_SUITE: terminate setup process
Configuring the mock authentication backend blocks
and generates an error in the test process when the
broker goes down. The error report makes the test fail
in some environments.

The process where the setup takes place must stay up
otherwise the ETS table used will go away.

This commit makes sure the broker-side authentication backend
setup returns at the end of the test. This way the calling
process terminates in a normal way.
2024-07-17 15:36:20 +02:00
Diana Parra Corbacho 992c260c56 Catch throw:timeout as returned from Khepri 0.14.0 2024-07-17 15:26:24 +02:00
Diana Parra Corbacho f257e1181f rabbit_khepri: Retry register_projections during boot
Gives some time to form a majority during the boot process,
allowing nodes to boot more easily
2024-07-17 13:17:33 +02:00
Michael Klishin 2c96bccc08 4.0 release notes: one more typo 2024-07-16 23:05:53 -04:00
Michael Klishin 249fb85330
Merge pull request #11732 from johanrhodin/patch-13
fix typos
2024-07-16 17:52:20 -04:00
Johan Rhodin c86a0be5c6
fix typos 2024-07-16 16:13:16 -05:00
Michael Klishin 2c753f66b1 Update 4.0.0 release notes 2024-07-16 14:16:01 -04:00
Karl Nilsson 2679649ac5
Merge pull request #11698 from rabbitmq/ra-2.13.0
Ra 2.13.1
2024-07-16 15:22:44 +01:00
Lois Soto Lopez bb93e718c2 Prometheus: some per-exchange/per-queue metrics aggregated per-channel
Add copies of some per-object metrics that are labeled per-channel
aggregated to reduce cardinality. These metrics are valuable and
easier to process if exposed on per-exchange and per-queue basis.
2024-07-16 14:30:25 +02:00
Diana Parra Corbacho e856a6cc21 rabbit_mnesia: Emit notify_left_cluster from forget_cluster_node
This function is called directly from CLI commands, skipping the `rabbit_db_cluster` layer
2024-07-16 12:48:29 +02:00
Diana Parra Corbacho db03d8c6cb rabbit_db_cluster: generate left cluster notifications
They must be sent during reset and when leaving the cluster for
any metadata store
2024-07-16 12:48:29 +02:00
Diana Parra Corbacho 19a71d8d28 rabbit_node_monitor: use a leader query for cluster members on node_added event
If the membership hasn't been updated locally yet, the event is never generated
2024-07-16 12:48:29 +02:00
Michael Klishin 82d6709f91
Merge pull request #11724 from rabbitmq/gazelle-main
bazel run gazelle
2024-07-16 06:46:01 -04:00
GitHub c3beec2d32 bazel run gazelle 2024-07-16 04:02:25 +00:00
Michael Klishin 69b6ed4a67
Merge pull request #11720 from SimonUnge/empty_body_json_decode
Handle empty HTTP body in response from AWS JSON
2024-07-15 19:40:32 -04:00
Simon Unge c32e0d647f Handle empty HTTP body in response (as some AWS 200 reponse will have an empty body for some reason) 2024-07-15 22:59:20 +00:00
Michael Klishin ff5a324564
Merge pull request #11716 from rabbitmq/cmq-cleanup
CMQ cleanup
2024-07-15 13:39:09 -04:00
Michael Klishin 5346339655 Squash two more deprecated CMQ-related CLI command warnings 2024-07-15 12:38:01 -04:00
Michael Klishin 8de26fbc03 Fix two warnings in a deprecated CMQ-related CLI command 2024-07-15 12:38:01 -04:00
Michal Kuratczyk 9debca24d8 Remove HA policy example from OpenStack script 2024-07-15 12:38:01 -04:00
Michal Kuratczyk e1b649c0c6 check_if_node_is_mirror_sync_critical is no-op
Make `check_if_node_is_mirror_sync_critical` a no-op
with a deprecation warning. Since this command is commonly used
as part of the node shutdown process (eg. by Cluster Operator),
making it a no-op instead of removing completly will make the
transition to 4.0 easier for users.
2024-07-15 12:38:01 -04:00
Michal Kuratczyk 6b1377163d Remove sync_queue and cancel_sync_queue from man page 2024-07-15 12:38:01 -04:00
Michael Klishin c34faf9e12
Merge pull request #11423 from rabbitmq/bump-oidc-client-ts
OAuth 2, breaking change: upgrade oidc-client-ts library to a new major
2024-07-15 12:11:47 -04:00
Karl Nilsson c0c6029938 Ra 2.13.1
This release contains improvements to the checkpointing feature
needed for quorum queues v4 and the following fixes:

* Add read to file:open/2 options in ra_lib:sync_file/1
* Emit the new local_query tuple only if query options are set
* bug fixes for checkpoints
2024-07-15 15:08:35 +01:00
Karl Nilsson 131379a483 mc: increase utf8 scanning limit for longstr conversions.
The AMQP 0.9.1 longstr type is problematic as it can contain arbitrary
binary data but is typically used for utf8 by users.

The current conversion into AMQP avoids scanning arbitrarily large
longstr to see if they only contain valid utf8 by treating all
longstr data longer than 255 bytes as binary. This is in hindsight
too strict and thus this commit increases the scanning limit to
4096 bytes - enough to cover the vast majority of AMQP 0.9.1 header
values.

This change also conversts the AMQP binary types into longstr to
ensure that existing data (held in streams for example) is converted
to an AMQP 0.9.1 type most likely what the user intended.
2024-07-15 14:07:19 +02:00
Marcial Rosales ee52464ade Merge changes from main 2024-07-15 02:33:27 -04:00
Marcial Rosales 5b6d0ecb7e Do not test against UAA 2024-07-15 02:33:27 -04:00
Marcial Rosales b110be5cb7 Replace oidc-client-ts dependencies 2024-07-15 02:33:27 -04:00
Michael Klishin c902bfc853 Make it clear that 4.0.0 will go through betas and RCs first 2024-07-15 01:34:44 -04:00
Michael Klishin fe4087f72e
Merge pull request #11713 from rabbitmq/mk-4.0.0-release-notes
Initial (very brief) 4.0.0 release notes
2024-07-15 01:08:11 -04:00
Michael Klishin fca9d9131c Initial (very brief) 4.0.0 release notes 2024-07-15 01:07:43 -04:00
Michael Klishin aeeb990e57
Merge pull request #11709 from rabbitmq/gazelle-main
bazel run gazelle
2024-07-13 01:49:50 -04:00
Michael Klishin 6f67a85ad9
Merge pull request #11705 from rabbitmq/amqp-consumer-priority
Support consumer priority in AMQP
2024-07-13 00:11:42 -04:00
GitHub e74ecff203 bazel run gazelle 2024-07-13 04:02:17 +00:00
Michael Klishin bd5e9fa2ac
Merge pull request #11700 from rabbitmq/md/khepri/projections-ets-try-catch
Use 'try'/'catch' rather than 'ets:whereis/1' for Khepri projections
2024-07-12 17:09:02 -04:00
David Ansari e6587c6e45 Support consumer priority in AMQP
Arguments
* `rabbitmq:stream-offset-spec`,
* `rabbitmq:stream-filter`,
* `rabbitmq:stream-match-unfiltered`
are set in the `filter` field of the `Source`.
This makes sense for these consumer arguments because:
> A filter acts as a function on a message which returns a boolean result
> indicating whether the message can pass through that filter or not.

Consumer priority is not really such a predicate.
Therefore, it makes more sense to set consumer priority in the
`properties` field of the `Attach` frame.

We call the key `rabbitmq:priority` which maps to consumer argument
`x-priority`.

While AMQP 0.9.1 consumers are allowed to set any integer data
type for the priority level, this commit decides to enforce an `int`
value (range -(2^31) to 2^31 - 1 inclusive).
Consumer priority levels outside of this range are not needed in
practice.
2024-07-12 20:31:01 +02:00
Michael Klishin f20f5beece
Merge pull request #11701 from rabbitmq/consumer-args
Fix queue type consumer arguments
2024-07-12 12:52:56 -04:00