Commit Graph

58467 Commits

Author SHA1 Message Date
dependabot[bot] c2c6748847
build(deps): bump kotlin.version
Bumps `kotlin.version` from 2.0.20 to 2.0.21.

Updates `org.jetbrains.kotlin:kotlin-test` from 2.0.20 to 2.0.21
- [Release notes](https://github.com/JetBrains/kotlin/releases)
- [Changelog](https://github.com/JetBrains/kotlin/blob/v2.0.21/ChangeLog.md)
- [Commits](https://github.com/JetBrains/kotlin/compare/v2.0.20...v2.0.21)

Updates `org.jetbrains.kotlin:kotlin-maven-allopen` from 2.0.20 to 2.0.21

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin:kotlin-test
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-maven-allopen
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-10 19:00:23 +00:00
Diana Parra Corbacho 7d45609b1a Tests: wait until stats are published, not just collected on the agent 2024-10-10 12:57:14 +02:00
Diana Parra Corbacho 45718fbcf6 Tests: wait until stats are published, not just collected on the agent 2024-10-10 12:34:59 +02:00
Michal Kuratczyk 6a7f8d0d1e Remove redundant copy of adjust_for_message_handling_proc/0 2024-10-09 20:08:34 -04:00
Karl Nilsson 465b19e8e8 Adjust vheap sizes for message handling processes in OTP 27
OTP 27 reset all assumptions on how the vm reacts to processes that
buffer and process a lot of large binaries.

Substantially increasing the vheap sizes for such process restores
most of the same performance by allowing processes to hold more binary
data before major garbage collections are triggered.

This introduces a new module to capture process flag configurations.

The new vheap sizes are only applied when running on OTP 27 or
above.
2024-10-09 20:08:34 -04:00
Michael Klishin 2eeac4ba59
4.0.1 release notes: wording 2024-10-09 11:54:26 -04:00
Michael Klishin 9893a2bd48
Merge pull request #12399 from rabbitmq/deprecate-oauth2-settings
Deprecate two OAuth2 settings: auth_oauth2.jwks_url and management.metadata_url
2024-10-09 11:46:58 -04:00
Michael Klishin 6c50ce27f8
Merge pull request #12439 from rabbitmq/support-scope-aliases-in-cuttlefish-style
OAuth 2: support scope aliases in rabbitmq.conf
2024-10-09 11:45:25 -04:00
Marcial Rosales 0f1b8760a4 Fix issue 2024-10-09 11:01:09 -04:00
Marcial Rosales 0c8dadd662 Fix failing test cases 2024-10-09 11:01:09 -04:00
Marcial Rosales 0835c7ecf4 Resolve merge conflicts 2024-10-09 11:01:09 -04:00
Marcial Rosales c9d5ddf89f Deprecate oauth_metadata_url
If oauth_metadata_url is configured, RabbitMQ uses it.
Else it uses the discovery_endpoint url calculated from
issuer and discovery_endpoint_path
2024-10-09 11:01:09 -04:00
Marcial Rosales ee8d5f7fb0 Deprecate jwks_url but it is still supported
jwks_uri takes precedence when both are set
2024-10-09 11:01:09 -04:00
Marcial Rosales 322a9a9f9f Rename jkws_url to jwks_uri 2024-10-09 11:01:09 -04:00
Marcial Rosales b21a222abd Remove management.oauth_metadata_url 2024-10-09 11:01:09 -04:00
Marcial Rosales 423b591310 Fix failing test cases 2024-10-09 10:57:38 -04:00
Marcial Rosales ebc3dea971 Minor formatting improvement 2024-10-09 10:57:38 -04:00
Marcial Rosales b966ab7b72 Configure scope_aliases also per resource_server 2024-10-09 10:57:38 -04:00
Marcial Rosales 3e81cfa89d Handle wrong scope_aliases configuration 2024-10-09 10:57:38 -04:00
Marcial Rosales 48670a0ecf Support two modes of configuring
scope_aliases using cuttlefish
2024-10-09 10:57:38 -04:00
Marcial Rosales a30c829ec5 Test translation function of scope_aliases 2024-10-09 10:57:38 -04:00
Marcial Rosales dcb52638ab Minor refactoring 2024-10-09 10:57:38 -04:00
Marcial Rosales 5841e37804 Fix schema translation for
scope_aliases
2024-10-09 10:57:38 -04:00
Marcial Rosales cd46b406df Modify schema to include scope_aliases
WIP Add translation function
2024-10-09 10:57:38 -04:00
Michael Klishin b5c252e261
Merge pull request #12500 from rabbitmq/loic-disable-27-ci-tmp
4.1/main: Make CI: Temporarily disable tests with OTP-27
2024-10-09 10:57:08 -04:00
Michael Klishin d7e656cf05
Merge pull request #12498 from rabbitmq/gazelle-main
bazel run gazelle
2024-10-09 08:29:41 -04:00
Loïc Hoguin 299373fa17
Make CI: Temporarily disable tests with OTP-27
There are two known OTP-27 bugs making tests fail.
Until they are fixed (OTP-27.1.2 most likely) we
disable OTP-27 for tests.
2024-10-09 13:55:37 +02:00
David Ansari 320d8aeaf6 Add AMQP 0.9.1 x-death header to breaking changes
Starting with RabbitMQ 4.0, the AMQP 0.9.1 x-death header won't be
interpreted anymore by RabbitMQ when clients publish new messages to RabbitMQ.

Relates to
* https://github.com/rabbitmq/rabbitmq-server/issues/10709
* https://github.com/rabbitmq/rabbitmq-server/issues/11331
* https://github.com/rabbitmq/rabbitmq-server/pull/11339
2024-10-09 10:15:41 +02:00
GitHub 5ae16631e9 bazel run gazelle 2024-10-09 04:02:38 +00:00
Michael Klishin 692f299284
Merge pull request #12258 from rabbitmq/make-some-oauth2-settings-optional
Make some OAuth2 settings optional
2024-10-08 08:23:02 -04:00
Michael Klishin c15f19fe83 OAuth 2: CLI is a build time dependency, not a runtime one 2024-10-08 07:11:43 -04:00
Michael Klishin e7f82a53ba OAuth 2: add a missing dependency on rabbitmq_cli 2024-10-08 07:09:08 -04:00
GitHub d63d70c36c bazel run gazelle 2024-10-08 07:09:08 -04:00
Simon Unge 541f053979 Dependency Recon updated from 2.5.3 to 2.5.6 2024-10-08 07:09:08 -04:00
Loïc Hoguin 545abce10f CQ: Fix shared store scanner missing messages
It was still possible, although rare, to have message store
files lose message data, when the following conditions were
met:

 * the message data contains byte values 255
   (255 is used as an OK marker after a message)
 * the message is located after a 0-filled hole in the file
 * the length of the data is at least 4096 bytes and
   if we misread it (as detailed below) we encounter
   a 255 byte where we expect the OK marker

The trick for the code to previously misread the length can
be explained as follow:

A message is stored in the following format:

  <<Len:64, MsgIdAndMsg:Len/unit:8, 255>>

With MsgId always being 16 bytes in length. So Len is always
at least 16, if the message data Msg is empty. But technically
it never is.

Now if we have a zero filled hole just before this message,
we may end up with this:

  <<0, Len:64, MsgIdAndMsg:Len/unit:8, 255>>

When we are scanning we are testing bytes to see if there is
a message there or not. We look for a Len that gives us byte
255 after MsgIdAndMsg.

Len of value 4096 looks like this in binary:

  <<0:48, 16, 0>>

Problem is if we have leading zeroes, Len may look like this:

  <<0, 0:48, 16, 0>>

If we take the first 64 bits we get a potential length of 16.
We look at the byte after the next 16 bytes. If it is 255, we
think this is a message and skip by this amount of bytes, and
mistakenly miss the real message.

Solving this by changing the file format would be simple enough,
but we don't have the luxury to afford that. A different solution
was found, which is to combine file scanning with checking that
the message exists in the message store index (populated from
queues at startup, and kept up to date over the life time of
the store). Then we know for sure that the message above
doesn't exist, because the MsgId won't be found in the index.
If it is, then the file number and offset will not match,
and the check will fail.

There remains a small chance that we get it wrong during dirty
recovery. Only a better file format would improve that.
2024-10-08 07:09:08 -04:00
Michael Klishin 5f87cc9c4f
Merge pull request #12487 from rabbitmq/gazelle-main
bazel run gazelle
2024-10-08 06:55:42 -04:00
Michael Klishin f922832906
Merge pull request #12479 from rabbitmq/su_aws/update_dependency_recon
4.1: update Recon to 2.5.6
2024-10-08 06:55:00 -04:00
Michael Klishin 6feca5f72b
Merge pull request #12392 from rabbitmq/loic-fix-cq-scan
CQ: Fix shared store scanner missing messages
2024-10-08 06:49:24 -04:00
Marcial Rosales d98eb17c2c Move also selenium authz tests to Makefile 2024-10-08 08:17:48 +02:00
Marcial Rosales e1e101db9b Fix issue with docker image name 2024-10-08 08:17:48 +02:00
Marcial Rosales 21a4a250d5 Run selenium job with Makefile 2024-10-08 08:17:48 +02:00
Marcial Rosales 743f663520 Fix bazel configuration 2024-10-08 08:17:48 +02:00
Marcial Rosales 0ec415a419 Fix bazel misconfiguration 2024-10-08 08:17:48 +02:00
Marcial Rosales d25e0f8e88 Refactoring
- Use rabbit_oauth2 prefix for modules which do not have it
- Ensure most lines stick to 80 column
2024-10-08 08:17:48 +02:00
Michael Klishin ea6f194eb3 OAuth 2 client: sync option/1 with rabbit_types, add a comment 2024-10-08 08:17:48 +02:00
Marcial Rosales f56324e72c Remove wrong file 2024-10-08 08:17:48 +02:00
Marcial Rosales 16cccd3181 Remove some spaces 2024-10-08 08:17:48 +02:00
Marcial Rosales a882f8a37c Fix error 2024-10-08 08:17:48 +02:00
Marcial Rosales 252b02c0eb Remove unnecessary log statements 2024-10-08 08:17:48 +02:00
Marcial Rosales 4142b73738 Fix issue initializing oidc-client 2024-10-08 08:17:48 +02:00