RHBA-2011:1339 - Bug Fix Advisory
Bug Fix Advisory
Red Hat Insights patch analysis
Identify and remediate systems affected by this advisory.
Updated Red Hat Enterprise MRG Messaging packages that fix several bugs are now
available for Red Hat Enterprise MRG 2.0.3 for Red Hat Enterprise Linux 5.
Red Hat Enterprise MRG (Messaging, Realtime and Grid) is a real-time IT
infrastructure for enterprise computing. MRG Messaging implements the Advanced
Message Queuing Protocol (AMQP) standard, adding persistence options, kernel
optimizations, and operating system services.
This update provides fixes for the following bugs:
- According to the JMS specification, concurrently executing clients cannot use
the same client ID. Previously, it was possible to allow multiple connections to
use the same client ID. With this update, it is no longer possible to define
such clients. Note that you need to enable the verify client ID feature to
prevent the clients from having identical IDs (-Dqpid.verify_client_id=true).
- The Connection.getJMSXPropertyNames() method returned a usable enumeration
only when called for the first time. If the user called the
getJMSXPropertyNames() method multiple times, the method returned empty
enumerations. This happened because the system overwrote the first created
enumeration with the subsequent call of getJMSXProperyNames(). With this update,
the underlying code has been changed and getJMSXPropertyNames() returns the
enumeration with the property names as expected. (BZ#704566)
- The system threw a SessionException if a session was committed after a
transaction had exceeded the queue limit (max-queue-size). This caused the
client to fail to handle the error. The system now throws a JMSException under
these circumstances and client can recover with the JMSException as expected.
- In a clustered environment, the system threw a SessionException when a session
was committed after a failover using the session.commit() method. Because the
client application code did not receive a standard JMSException, it could fail
to recover. The system now throws a JMSException under these circumstances and
the client recovers as expected. (BZ#723750)
- When a connection was created with newly specified credentials, the Java
client cached the new credentials and overwrote the default credentials provided
by the connection URL. As a result, when a new connection was created without
credentials, the connection used the cached credentials and the authentication
could fail. With this update, the credentials specified at a connection creation
are not cached and the default credentials for connections without credentials
are used as expected. (BZ#726050)
- A queue bound to the default exchange dropped messages with a subject. This
happened because the routing key was wrongly using the message subject as the
queue name. The underlying code has been changed and such messages are now
delivered to the queue. (BZ#726712)
- Previously, the system threw a javax.naming.NameNotFoundException if the JNDI
file definition in the executed program defined a JNDI file with a syntax error.
However, this is not appropriate as the program cannot access the JNDI file and
the execution should be therefore interrupted. Such internal exceptions are now
re-thrown as ConfigurationExceptions with the message "Failed to parse JNDI
properties file" and the program is interrupted. (BZ#728484)
- The broker ignored QMFv2 requests sent from a Java client because the requests
did no have the app-id set. The requests are now sent with the app-id and the
messages are processed as expected. (BZ#732534)
Users of the Realtime capabilities of Red Hat Enterprise MRG 2.0, which is
layered on Red Hat Enterprise Linux 5, are advised to upgrade to these updated
packages, which fix these bugs.
Before applying this update, make sure all previously-released errata relevant
to your system have been applied.
This update is available via the Red Hat Network. Details on how to use the Red
Hat Network to apply this update are available at
- Red Hat Enterprise MRG Messaging 2 for RHEL 5 x86_64
- Red Hat Enterprise MRG Messaging 2 for RHEL 5 i386
Red Hat Enterprise MRG Messaging 2 for RHEL 5