activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Helmut Janknecht (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AMQ-1837) Lost messages after broker recovery
Date Thu, 03 Jul 2008 15:39:00 GMT

     [ https://issues.apache.org/activemq/browse/AMQ-1837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Helmut Janknecht updated AMQ-1837:
----------------------------------

    Attachment: MultithreadedQueueTest2.zip

I changed code a little bit and do the receive with a 120s timeout in order to avoid race
conditions there.
Addtionally I now sent object messages with approx. 2K size. With prefetch size set to default
it fails often after Kaha recovery. With low prefetch size 5 or 10 failure rate is lower but
not 0...

> Lost messages after broker recovery
> -----------------------------------
>
>                 Key: AMQ-1837
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1837
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Message Store
>    Affects Versions: 5.1.0
>            Reporter: Jan Wiemer
>            Priority: Critical
>         Attachments: MultithreadedQueueTest2.zip, src.zip
>
>
> We experienced that some messages (send in persistent mode) were lost after the message
broker was killed and restarted.
> The attached little test simulates the situation:
> There are 10 queues, 10 sender and 10 receiver threads each sending / receiving quite
frequently to / from one queue for a quite long time.
> The receiver for each queue expects the messages exactly in the order the sender has
send the messages.
> After restarting (killing) the broker the order of the received messages gets disturbed
or messages get lost. 
> * Start the broker as configures by default in the distribution (only switch on JMX support).

> * Start the main method of the attached class
> * Wait until some messages are received
> * kill or shutdown the broker
> * restart the broker
> * have a look at the output of the test class
> {code:title=Output}
> Exception in ReceiverThread: java.lang.RuntimeException: Received unexpected message!
Expected: QUEUE-4: #3197, Received: QUEUE-4: #3267
> {code}
> {code:title=Broker Output}
> ...
> INFO  BrokerService                  - Using Persistence Adapter: AMQPersistenceAdapter(D:\sandbox\Experimental\Activemq\apache-activemq-5.2-SNAPSHOT\bin\..\data)
> INFO  AMQPersistenceAdapter          - AMQStore starting using directory: D:\sandbox\Experimental\Activemq\apache-activemq-5.2-SNAPSHOT\bin\..\data
> INFO  KahaStore                      - Kaha Store using data directory D:\sandbox\Experimental\Activemq\apache-activemq-5.2-SNAPSHOT\bin\..\data\kr-store\state
> INFO  AMQPersistenceAdapter          - Active data files: []
> WARN  AMQPersistenceAdapter          - The ReferenceStore is not valid - recovering ...
> INFO  KahaStore                      - Kaha Store successfully deleted data directory
D:\sandbox\Experimental\Activemq\apache-activemq-5.2-SNAPSHOT\bin\..\data\kr-store\data
> INFO  AMQPersistenceAdapter          - Journal Recovery Started from: DataManager:(data-)
> INFO  KahaStore                      - Kaha Store using data directory D:\sandbox\Experimental\Activemq\apache-activemq-5.2-SNAPSHOT\bin\..\data\kr-store\data
> INFO  AMQPersistenceAdapter          - Recovered 198261 operations from redo log in 18.028
seconds.
> INFO  AMQPersistenceAdapter          - Finished recovering the ReferenceStore
> INFO  BrokerService                  - ActiveMQ 5.2-SNAPSHOT JMS Message Broker (localhost)
is starting
> ...
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message