[rabbitmq-discuss] RabbitMQ 2.0.0 release

Richard Heycock rgh at topikality.com
Wed Aug 25 13:38:12 BST 2010


Excerpts from Michael Bridgen's message of 2010-08-25 20:01:49 +1000:
> We the RabbitMQ team are delighted to announce the release of RabbitMQ
> 2.0.0.
> 
> This release includes a rewritten message store that pages messages to
> disk to relieve memory pressure, and support for AMQP 0-9-1.  There are
> many other more modest additions, such as an implementation of
> basic.reject, and queue leases.  For details see the attached release notes.
> 
> Binary and source distributions of the new release can be found in the
> usual place at http://www.rabbitmq.com/download.html
> 
> This now includes binary packages of plugins, at
> http://www.rabbitmq.com/plugins.html.  Please note the caveats there.
> 
> Due to an issue we're currently seeing with the nexus/sonatype
> maven repository, the 2.0.0 release is not yet available in maven. We
> will rectify this as soon as we can.
> 
> We recommend that all users of earlier versions of RabbitMQ upgrade to
> this latest release.
> 
> As always, we welcome any questions, bug reports, and other feedback on
> this release, as well as general suggestions for features and
> enhancements in future releases. Mail us via the RabbitMQ discussion
> list at rabbitmq-discuss at lists.rabbitmq.com, or directly at
> info at rabbitmq.com.

This is so cool guys. A massive thank you for all your hard work.

rgh

> Regards,
> 
> The RabbitMQ Team
> Release: RabbitMQ 2.0.0
> 
> Release Highlights
> ==================
> 
> server
> ------
> bug fixes
> - correct file descriptor limits on Windows, preventing crashes due to
>   exceeding the limit
> - fix bug that resulted in 'rabbitmqctl status' reporting disk nodes
>   as ram nodes
> - tx.commit no longer fails when participating queues are deleted
>   during the lifetime of the transaction
> - more robust logic to detect changes in the data layout between
>   rabbit versions and thus guard against upgrade failures
> 
> enhancements
> - new persister
>   - the volume of messages rabbit can hold on to is bounded by disk
>     space (in previous versions it was bounded by memory)
>   - rabbit optimises memory usage by paging messages out to / in from
>     disk as needed
>   - consistently high performance regardless of retained message
>     volume (previous versions would slow down considerably as the
>     persisted message volume grew)
>   - consistently fast startup regardless of volume of persisted data
>     (previous versions would require time proportional to the amount
>     of data)
>   - better performance for concurrent transactions (in previous
>     version the rate at which queues could handle transactions
>     involving persistent messages was fixed)
> - implement AMQP 0-9-1, in addition to 0-8 - see
>   http://www.rabbitmq.com/specification.html
> - instrumentation for asynchronous statistics events, emitting more
>   stats than currently available and laying the foundation for
>   monitoring a busy broker without crippling performance -
>   see http://www.rabbitmq.com/blog/2010/08/06/management-monitoring-and-statistics/
> - more effective flow control mechanism that does not require
>   cooperation from clients and reacts quickly to prevent the broker
>   from exhausing memory - see http://www.rabbitmq.com/extensions.html#memsup
> - implement basic.reject - see
> http://www.rabbitmq.com/blog/2010/08/03/well-ill-let-you-go-basicreject-in-rabbitmq/
> - simplify plugin activation by moving it into the server startup
> - permit upgrades of Erlang w/o breaking rabbit servers with activated
>   plugins
> - introduce support for queue leases - see http://www.rabbitmq.com/extensions.html#queue-leases
> - improve the setting of permissions, making it easer to use and
>   introducing a way to grant no permissions at all - see http://www.rabbitmq.com/admin-guide.html#management
> - delete exclusive queues synchronously on server-initiated connection
>   close (rather than just client-initiated)
> 
> java client
> -----------
> bug fixes
> - prevent spurious timeout exceptions that theoretically could have
>   arisen due to spurios thread wake-ups
> 
> enhancements
> - switch to AMQP 0-9-1 - see
>   http://www.rabbitmq.com/specification.html
> 
> .net client
> -----------
> bug fixes
> - fix bug that caused incorrect responses to server-issued
>   channel.flow commands, which in turn resulted in connections getting
>   closed with an error.
> - make SSL connections work in Mono
> 
> enhancements
> - implement AMQP 0-9-1, in addition to 0-8 and 0-9 - see
>   http://www.rabbitmq.com/specification.html
> - simplify the Subscription class and make it more versatile
> - improve documentation
> 
> building & packaging
> --------------------
> bug fixes
> - correct location of rabbitmq.config file under macports - it now
>   lives in /opt/local/etc/rabbitmq/
> - "make docs_all" now works on more platforms
> 
> enhancements
> - portable, binary plugin releases to simplify plugin installation -
>   see http://www.rabbitmq.com/plugins.html
> - automatically create plugin directory, to streamline plugin
>   installation
> 
> Upgrading
> =========
> The database schema and the format in which persistent messages are
> stored have both changed since the last release (1.8.1). When
> starting, the RabbitMQ server will detect the existence of an old
> database and will move it to a backup location, before creating a
> fresh, empty database, and will log a warning. If your RabbitMQ
> installation contains important data then we recommend you contact
> support at rabbitmq.com for assistance with the upgrade.
-- 
Richard Heycock

http://topikality.com

+61 (0) 410 646 369
[e]:  rgh at topikality.com
[im]: rgh at topikality.com


More information about the rabbitmq-discuss mailing list