RabbitMQ for Pivotal Platform Release Notes

Note: Pivotal has renamed RabbitMQ for Pivotal Cloud Foundry to RabbitMQ for Pivotal Platform.

Note: Pivotal has renamed Pivotal Cloud Foundry to Pivotal Platform.

Breaking Change: In RabbitMQ v1.18.2 and later, users are no longer automatically logged in when navigating to the URL for the RabbitMQ Management UI. Instead, users must enter their username and password on the RabbitMQ Management UI login page. This is because usernames and passwords are removed from the RabbitMQ dashboard URL located in service bindings because of a potential XSS vector. For more information, see the pull request Remove direct login route in GitHub.

Upgrade to the Latest Version

For RabbitMQ v1.15 and v1.16, you can skip a minor version when you upgrade.

See the following table to find your upgrade path:

If you are on… Upgrade to…
v1.16 v1.18.4 or later patches
v1.15 v1.17.3 or later patches

If you are upgrading a version other than v1.16 or v1.15, do not skip minor versions.

For product versions and upgrade paths, see Upgrade Planner.

v1.18.9

Release Date: September 23, 2020

Features

New features and changes in this release:

  • Erlang: Upgraded to v23.0.3.

Resolved Issues

This release has the following fix:

  • The on-demand adapter cleanly exits the drain script when the credentials are not present in UAA: The drain script now has the correct output for success (0) and failure (non-zero).

Known Issues

This release has the following issue:

  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.

Compatibility

The following components are compatible with this release:

Component Version
Erlang 23.0.3
HAProxy 1.8.26
OSS RabbitMQ* 3.8.8
Stemcell 621.x
Tanzu Application Service 2.7.x, 2.8.x, 2.9.x
bpm 1.1.9
cf-cli 1.29.0
cf-rabbitmq 318.0.0
cf-rabbitmq-multitenant-broker 78.0.0
cf-service-gateway 28.0.0
cf-rabbitmq-smoke-tests 64.0.0
loggregator-agent 3.21.5
on-demand-service-broker 0.40.0
rabbitmq-metrics 40.0.0
rabbitmq-on-demand-adapter 145.0.0
routing 0.207.0
service-metrics 1.12.5
syslog 11.6.1

* For more information, see the v3.8.8 GitHub documentation.

v1.18.8

Release Date: August 5, 2020

Resolved Issues

This release has the following fixes:

  • The pre-stop script no longer fails with a timeout error. Previously, the pre-stop script failed with the error: Timed out waiting for mirror queue critical node to sync after 3600 seconds. To prevent this, the following checks in the pre-stop script are disabled by default:

    • rabbitmq-diagnostics check_if_node_is_mirror_sync_critical
    • rabbitmq-diagnostics check_if_node_is_quorum_critical

    To enable these checks, select the Wait for Queue Synchronization checkbox in the configuration for on-demands plans. For more information about this setting, see Configure the Service Plan.

  • Downstream federated queues consuming messages from an upstream queue are no longer duplicated after upgrading. This is because the RabbitMQ cluster name defaults to rabbit@localhost instead of its service instance GUID. To set the cluster name to its service instance GUID, select the Use Service Instance ID as cluster name checkbox in Global Settings for On-Demand Plans. For more information about this setting, see Configure Global Settings.

  • Configure a custom apps domain to ensure smoke tests work: Previously, the smoke test picked up the default Cloud Foundry domain, which could cause smoke tests to fail when the RabbitMQ service instance domain for on-demand services could not access the smoke tests domain.
    Operators can now configure the smoke tests domain to ensure that the service instance is accessible during smoke tests.
    For more information, see Configure Global Settings.

Known Issues

This release has the following issues:

  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Erlang 22.3.4.3
HAProxy 1.8.25
OSS RabbitMQ* 3.8.5
Stemcell 621.x
Pivotal Application Service 2.7.x, 2.8.x, 2.9.x
bpm 1.1.8
cf-cli 1.27.0
cf-rabbitmq 312.0.0
cf-rabbitmq-multitenant-broker 73.0.0
cf-service-gateway 18.0.0
cf-rabbitmq-smoke-tests 55.0.0
loggregator-agent 3.21.5
on-demand-service-broker 0.40.0
rabbitmq-metrics 34.0.0
rabbitmq-on-demand-adapter 139.0.0
routing 0.203.0
service-metrics 1.12.5
syslog 11.6.1

* For more information, see the v3.8.5 GitHub documentation.

v1.18.6

Release Date: June 10, 2020

Resolved Issues

This release has the following fixes:

  • Upgrading a replicated tile no longer fails with the error this migration in a replicated tile caused the error "TypeError: Cannot read property 'value' of undefined".
  • BOSH deployments no longer fail when the RabbitMQ admin password for the pre-provisioned cluster contains a special character.
  • To prevent rabbitmqctl node_health_check timing out after 70 seconds, RabbitMQ has less intrusive health checks. For more information, see the RabbitMQ documentation.

Known Issues

This release has the following issues:

  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • The default setting for mirrored queues can cause the pre-stop script to timeout: In production, if you use mirrored queues with the default policy setting ha-sync-mode: manual and if you have not manually synced your queues, the pre-stop script can fail with the following error: "Timed out waiting for mirror queue critical node to sync after 3600 seconds". To manually sync your queues, run rabbitmqctl sync_queue. To set ha-sync-mode to automatic instead, see Setting or Changing the Policy.
  • After upgrading, the downstream federated queues that consume messages from an upstream queue are duplicated: Federated queues are duplicated because RabbitMQ recreates them with a new cluster name. This issue occurs the first time you run the upgrade-all-service-instances errand after upgrading to RabbitMQ v1.18.5 or later, and does not reoccur if you upgrade to subsequent versions.
  • Smoke tests fail if the RabbitMQ service instance domain cannot access the test domain: Smoke tests pick up the default Cloud Foundry domain, which can cause them to fail if the RabbitMQ service instance domain for on-demand services cannot access the smoke tests domain.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Erlang 22.3.4
HAProxy 1.8.25
OSS RabbitMQ* 3.8.3
Stemcell 621.x
Pivotal Platform 2.7.x, 2.8.x, 2.9.x
bpm 1.1.8
cf-cli 1.26.0
cf-rabbitmq 298.0.0
cf-rabbitmq-multitenant-broker 69.0.0
cf-service-gateway 13.0.0
cf-rabbitmq-smoke-tests 48.0.0
loggregator-agent 3.21.5
on-demand-service-broker 0.39.0
rabbitmq-metrics 28.0.0
rabbitmq-on-demand-adapter 121.0.0
routing 0.200.0
service-metrics 1.12.5
syslog 11.6.1

* For more information, see the v3.8.3 GitHub documentation.

v1.18.5

Release Date: May 15, 2020

Resolved Issues

This release has the following fixes:

  • When used in production, quorum queues no longer experience downtime during a rolling upgrade. This is because RabbitMQ waits for quorum and mirror-sync critical nodes to sync before upgrades are applied.
  • On demand instance plan features now display with bullet points in Apps Manager.
  • BOSH update_mode: converge is now used instead of feature.converge_variables. This is because feature.converge_variables can result in unintended side effects. It regenerates all variables associated with a deployment, even those that are specified in a runtime config, causing downtime and other unexpected behavior.
  • Operators can filter metrics by cluster name. This is because the RabbitMQ cluster name matches its service instance GUID rather than the default value rabbit@localhost.

Known Issues

This release has the following issues:

  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • Upgrading a replicated tile fails with the error this migration in a replicated tile caused the error "TypeError: Cannot read property 'value' of undefined"
  • In production use cases, rabbitmqctl node_health_check times out after 70 seconds.
  • The default setting for mirrored queues can cause the pre-stop script to timeout: In production, if you use mirrored queues with the default policy setting ha-sync-mode: manual and if you have not manually synced your queues, the pre-stop script can fail with the following error: "Timed out waiting for mirror queue critical node to sync after 3600 seconds". To manually sync your queues, run rabbitmqctl sync_queue. To set ha-sync-mode to automatic instead, see Setting or Changing the Policy.
  • After upgrading, the downstream federated queues that consume messages from an upstream queue are duplicated: Federated queues are duplicated because RabbitMQ recreates them with a new cluster name. This issue occurs the first time you run the upgrade-all-service-instances errand after upgrading to RabbitMQ v1.18.5 or later, and does not reoccur if you upgrade to subsequent versions.
  • Smoke tests fail if the RabbitMQ service instance domain cannot access the test domain: Smoke tests pick up the default Cloud Foundry domain, which can cause them to fail if the RabbitMQ service instance domain for on-demand services cannot access the smoke tests domain.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Erlang 22.3.2
HAProxy 1.8.25
OSS RabbitMQ* 3.8.3
Stemcell 621.x
Pivotal Platform 2.7, 2.8 and 2.9
Pivotal Cloud Foundry 2.5 and 2.6
bpm 1.1.8
cf-cli 1.26.0
cf-rabbitmq 291.0.0
cf-rabbitmq-multitenant-broker 65.0.0
cf-service-gateway 10.0.0
cf-rabbitmq-smoke-tests 45.0.0
loggregator-agent 3.21.5
on-demand-service-broker 0.39.0
rabbitmq-metrics 24.0.0
rabbitmq-on-demand-adapter 117.0.0
routing 0.200.0
service-metrics 1.12.5
syslog 11.6.1

* For more information, see the v3.8.3 GitHub documentation.

v1.18.4

Release Date: March 19, 2020

Security Fix

This release includes the following security fix:

Features

New features and changes in this release:

  • You can upgrade RabbitMQ from v1.16 to v1.18.4 and later. Pivotal recommends upgrading from the latest v1.16 release to the latest v1.18 release. You can skip v1.17 in this case to save time.

    Note: Pivotal discourages other upgrade paths that skip a release, such as v1.14 to v1.16 or v1.15 to v1.18, because they are untested.

  • This release updates the following dependencies:

    • OSS RabbitMQ to v3.8.3. For more information, see the RabbitMQ v3.8.3 GitHub documentation.
    • Erlang to v22.2.8
    • HAProxy to v1.8.24

Resolved Issues

This release has the following fix:

  • Post-deploy scripts for the on-demand broker no longer fail because of a timing issue.

Known Issues

This release has the following issues:

  • When used in production, quorum queues might experience downtime during a rolling upgrade.
  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • On demand instance plan features do not display with bullet points in Apps Manager.
  • BOSH feature.converge_variables can cause side effects. For example, BOSH runtime config variables might be regenerated, causing downtime and other unexpected behavior.
  • Upgrading a replicated tile fails with the error this migration in a replicated tile caused the error "TypeError: Cannot read property 'value' of undefined"
  • In production use cases, rabbitmqctl node_health_check times out after 70 seconds.
  • Operators cannot filter metrics by cluster name because the RabbitMQ cluster name is always the default value rabbit@localhost.
  • Smoke tests fail if the RabbitMQ service instance domain cannot access the test domain: Smoke tests pick up the default Cloud Foundry domain, which can cause them to fail if the RabbitMQ service instance domain for on-demand services cannot access the smoke tests domain.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Stemcell 621.x
Pivotal Platform 2.7, 2.8 and 2.9
Pivotal Cloud Foundry 2.5 and 2.6
OSS RabbitMQ 3.8.3*
Erlang 22.2.8
HAProxy 1.8.24
bpm 1.1.7
service-metrics 1.12.5
on-demand-service-broker 0.38.0
rabbitmq-metrics 23.0.0
rabbitmq-on-demand-adapter 115.0.0
cf-service-gateway 9.0.0
cf-rabbitmq-multitenant-broker 64.0.0
loggregator-agent 3.21.5
routing 0.199.0
syslog 11.6.1
cf-rabbitmq-smoke-tests 44.0.0
cf-rabbitmq 288.0.0

* For more information, see the v3.8.3 GitHub documentation.

v1.18.3

Release Date: January 10, 2020

Resolved Issues

This release has the following fixes:

  • These upgrade paths, each starting from v1.15.x with TLS set to optional, no longer fail:

    • v1.15.x to v1.17.0 to v1.18.3
    • v1.15.x to v1.17.1 to v1.18.3
    • v1.15.x to v1.17.3 to v1.18.3
  • On platform on-demand service instances, created with a service-gateway-enabled plan, no longer fail to connect when using the MQTT and STOMP protocols. For more information, see Service-Gateway Access (Beta) and RabbitMQ Server Plugins.

Known Issues

This release has the following issues:

  • When used in production, quorum queues might experience downtime during a rolling upgrade.
  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • In rare circumstances, post-deploy scripts for the on-demand broker fail with the error message User admin does not have the correct permissions for vhost. This is due to a timing issue.
  • On demand instance plan features do not display with bullet points in Apps Manager.
  • BOSH feature.converge_variables can cause side effects. For example, BOSH runtime config variables might be regenerated, causing downtime and other unexpected behavior.
  • Upgrading a replicated tile fails with the error this migration in a replicated tile caused the error "TypeError: Cannot read property 'value' of undefined"
  • In production use cases, rabbitmqctl node_health_check times out after 70 seconds.
  • Operators cannot filter metrics by cluster name because the RabbitMQ cluster name is always the default value rabbit@localhost.
  • Smoke tests fail if the RabbitMQ service instance domain cannot access the test domain: Smoke tests pick up the default Cloud Foundry domain, which can cause them to fail if the RabbitMQ service instance domain for on-demand services cannot access the smoke tests domain.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Stemcell 621.x
Pivotal Platform 2.7 and 2.8
Pivotal Cloud Foundry 2.5 and 2.6
OSS RabbitMQ 3.8.2*
Erlang 22.1.8
HAProxy 1.8.23
bpm 1.1.6
service-metrics 1.12.5
on-demand-service-broker 0.36.0
cf-service-gateway 4.0.0
rabbitmq-metrics 22.0.0
rabbitmq-on-demand-adapter 111.0.0
cf-rabbitmq-multitenant-broker 61.0.0
loggregator-agent 3.21.5
routing 0.196.0
syslog 11.6.1
cf-rabbitmq-smoke-tests 40.0.0
cf-rabbitmq 283.0.0

* For more information, see the v3.8.2 GitHub documentation.

v1.18.2

Release Date: December 17, 2019

Features

New features and changes in this release:

  • Operators can configure an on-demand plan that enables service instances to connect to components outside the Pivotal Platform foundation through AMQP. For more information, see Enabling Service-Gateway Access (Beta). This functionality is planned for other supported protocols in later releases.
  • This release uses RabbitMQ v3.8.2. For more information, see RabbitMQ 3.8.2 in GitHub.
  • This version supports quorum queues. For more information about quorum queues, see the RabbitMQ documentation.
  • Previously, operators could not set an upper limit on the number of on-demand service instances higher than 200. This restriction no longer exists.

Known Issues

This release has the following issues:

  • When used in production, quorum queues might experience downtime during a rolling upgrade.
  • Changing the Erlang cookie can cause failed deployments: Changing the Erlang cookie value requires cluster downtime and can result in failed deployments. For more information, see Changing the Erlang Cookie Value Known Issue.
  • In rare circumstances, post-deploy scripts for the on-demand broker fail with the error message User admin does not have the correct permissions for vhost. This is due to a timing issue.
  • On demand instance plan features do not display with bullet points in Apps Manager.
  • BOSH feature.converge_variables can cause side effects. For example, BOSH runtime config variables might be regenerated, causing downtime and other unexpected behavior.
  • Upgrading a replicated tile fails with the error this migration in a replicated tile caused the error "TypeError: Cannot read property 'value' of undefined"
  • In production use cases, rabbitmqctl node_health_check times out after 70 seconds.
  • Operators cannot filter metrics by cluster name because the RabbitMQ cluster name is always the default value rabbit@localhost.
  • Smoke tests fail if the RabbitMQ service instance domain cannot access the test domain: Smoke tests pick up the default Cloud Foundry domain, which can cause them to fail if the RabbitMQ service instance domain for on-demand services cannot access the smoke tests domain.
  • The on-demand adapter does not cleanly exit the drain script when the credentials are not present in UAA. The drain script is expected to output an integer to determine success (0) or failure (non-zero). In some cases, the drain script outputs errors even though the operation has succeeded. This causes a failure in the drain operation. This is fixed in v1.18.9.

Compatibility

The following components are compatible with this release:

Component Version
Stemcell 621.x
Pivotal Platform 2.7 and 2.8
Pivotal Cloud Foundry 2.5 and 2.6
OSS RabbitMQ 3.8.2*
Erlang 22.1.8
HAProxy 1.8.23
bpm 1.1.6
service-metrics 1.12.5
on-demand-service-broker 0.36.0
cf-service-gateway 4.0.0
rabbitmq-metrics 22.0.0
rabbitmq-on-demand-adapter 109.0.0
cf-rabbitmq-multitenant-broker 61.0.0
loggregator-agent 3.21.5
routing 0.196.0
syslog 11.6.1
cf-rabbitmq-smoke-tests 40.0.0
cf-rabbitmq 283.0.0
cf-service-gateway 4.0.0

* For more information, see the v3.8.2 GitHub documentation.

View Release Notes for Another Version

To view the release notes for another product version, select the version from the dropdown at the top of this page.

Was this helpful?
What can we do to improve?