cshannon opened a new pull request, #2165:
URL: https://github.com/apache/activemq/pull/2165

   This fixes a bug in `FilePendingMessageCursor` that could cause the 
temporary store to exceed 100% usage. The cursor now properly checks the 
temporary usage limits when writing messages from memory to the temporary 
store. If the store is full, messages are now discarded and a discarded 
advisory will be fired (if enabled) and the messages will be DLQ'd if the 
`processNonPersistent` flag is true. This commit also fixes an issue with Topic 
subs possibly sending expired messages to the DLQ twice which was noticed while 
working on this fix.
   
   While not a common scenario, previously it was possible to blow past the 
limits for the temporary store because FilePendingMessageCursor did not check 
if usage was 100%. This could happen if there was a small temporary store 
configured, or just simply a lot of destinations using temporary usage. In the 
worst case scenario this could mean filling up a partition and causing an IO 
exception and broker crash, best case it would still be bad because it uses up 
disk space meant for persistent messaging.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to