The following table shows bugs that were fixed in the 4.1 version of Message Queue.
Table 1–9 Bugs Fixed in Message Queue 4.1| Bug | Description | 
|---|---|
| 6381703 | Transacted remote messages can be committed twice if the broker originating the message restarts. | 
| 6388049 | Cannot clean up an uncompleted distributed transaction. | 
| 6401169 | The commit and rollback options for imqcmd do not prompt for confirmation. | 
| 6473052 | Default for autocreated queues should be round robin. (MaxNumberConsumers = -1). | 
| 6474990 | Broker log shows ConcurrentModificationException for imqcmd list dst command. | 
| 6487413 | Memory leak when limit behavior is REMOVE_OLDEST or REMOVE_LOWER_PRIORITY. | 
| 6488340 | Broker spins, and client waits for reply to acknowledge. | 
| 6502744 | Broker does not honor the dead message queue's default limit of 1000 messages. | 
| 6517341 | Client runtime needs to improve reconnect logic when the client is connected to a high availability cluster by allowing the client to reconnect no matter what the value of the imqReconnectEnabled property is. | 
| 6528736 | Windows automatic startup service (imqbrokersvc) crashes during startup. | 
| 6561494 | Messages are delivered to the wrong consumer when both share a session. | 
| 6567439 | Produced messages in a PREPARED transaction are delivered out of order if they are committed after broker restarts. | 
The following table describes the bugs fixed in Message Queue 4.0.
Table 1–10 Bugs Fixed in Message Queue 4.0| Bug Number | Description | 
|---|---|
| 4986481 | In Message Queue 3.5, calling Session.recover could hang in auto-reconnect mode. | 
| 4987325 | Redelivered flag was set to false for redelivered messages after calling Session.recover. | 
| 6157073 | Change new connection message to include the number of connections on the service in addition to the total number of connections. | 
| 6193884 | Message Queue outputs garbage message to syslog in locales that use non-ASCII characters for messages. | 
| 6196233 | Message selection using JMSMessageID doesn't work. | 
| 6251450 | ConcurrentModificationException on connectList during cluster shutdown. | 
| 6252763 | java.nio.BufferOverflowException in java.nio.HeapByteBuffer.putLong/Int. | 
| 6260076 | First message published after startup is slow with Oracle storage. | 
| 6260814 | Selector processing on JMSXUserID always evaluates to false. | 
| 6264003 | The queue browser shows messages that are part of transactions that have not been committed. | 
| 6271876 | Connection Flow Control does not work properly when closing a consumer with unconsumed messages. | 
| 6279833 | Message Queue should not allow two brokers to use the same jdbc tables. | 
| 6293053 | Master broker does not start up correctly if the system's IP address is changed, unless the store is cleared (using —reset store.) | 
| 6294767 | Message Queue broker needs to set SO_REUSEADDR on the network sockets it opens. | 
| 6304949 | Unable to set ClientID property for TopicConnectionFactory. | 
| 6307056 | The txn log is a performance bottleneck. | 
| 6320138 | Message Queue C API lacks ability to determine the name of a queue from a reply-to header. | 
| 6320325 | The broker sometimes picks up JDK 1.4 before JDK 1.5 on Solaris even if both versions are installed. | 
| 6321117 | Multibroker cluster initialization throws java.lang.NullPointerException. | 
| 6330053 | The jms client throws java.lang.NoClassDefFoundError when committing a transaction from the subscriber. | 
| 6340250 | Support MESSAGE type in C-API. | 
| 6351293 | Add Support for Apache Derby database. |