Author: rajdavies
Date: Wed Apr 9 06:21:41 2008
New Revision: 646332
URL: http://svn.apache.org/viewvc?rev=646332&view=rev
Log:
Fix for https://issues.apache.org/activemq/browse/AMQ-1650
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/AsyncDataManager.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/AsyncDataManager.java
URL:
http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/AsyncDataManager.java?rev=646332&r1=646331&r2=646332&view=diff
==============================================================================
---
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/AsyncDataManager.java
(original)
+++
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/AsyncDataManager.java
Wed Apr 9 06:21:41 2008
@@ -604,7 +604,7 @@
}
}
- public ByteSequence read(Location location) throws IOException,
IllegalStateException {
+ public synchronized ByteSequence read(Location location) throws
IOException, IllegalStateException {
DataFile dataFile = getDataFile(location);
DataFileAccessor reader = accessorPool.openDataFileAccessor(dataFile);
ByteSequence rc = null;
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
URL:
http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java?rev=646332&r1=646331&r2=646332&view=diff
==============================================================================
---
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
(original)
+++
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/store/amq/AMQPersistenceAdapter.java
Wed Apr 9 06:21:41 2008
@@ -498,7 +498,7 @@
* @return
* @throws IOException
*/
- public DataStructure readCommand(Location location) throws IOException {
+ public synchronized DataStructure readCommand(Location location) throws
IOException {
try {
ByteSequence packet = asyncDataManager.read(location);
return (DataStructure)wireFormat.unmarshal(packet);