
| Key: |
AMQ-736
|
| Type: |
Bug
|
| Status: |
Resolved
|
| Resolution: |
Fixed
|
| Priority: |
Critical
|
| Assignee: |
Unassigned
|
| Reporter: |
Danielius Jurna
|
| Votes: |
0
|
| Watchers: |
0
|
|
If you were logged in you would be able to see more operations.
|
|
|
|
File Attachments:
|
|
|
Environment:
|
Linux/Windows Java 1.5.0_06
|
|
| Patch Info: |
Patch Available
|
|
When producer produces more messages than consumer can handle, after some time some messages are not delivered to the consumer (they are just skipped). To get those messages from the broker, you need to reconnect the consumer. It seems that this bug only occures if message persistance is turned on in the broker.
|
|
Description
|
When producer produces more messages than consumer can handle, after some time some messages are not delivered to the consumer (they are just skipped). To get those messages from the broker, you need to reconnect the consumer. It seems that this bug only occures if message persistance is turned on in the broker. |
Show » |
|
The bug is that during checkpoint, messages are removed from cpAddedMessageIds list, and as I understand, this is temporal message store used during checkpoint. And during checkpoint messages shouldn't be removed from there, because consumer is using this member to get messages, which are already removed from short term storage, but not yet added to long term storage. So fix is preatty simple.
I'm adding the patch against the main trunk of ActiveMQ.
Hope some ActiveMQ developers will take a look.