Hi,

 

We are using ActiveMQ 5.3.0 with kahaDB.

 

When we fill the disk partition to 100%, we get

     "No space left on device"

exceptions.  Good.  However, if we reduce the disk usage, we continue

to get exceptions even though there is plenty of disk space.

 

Is there a way to pre-allocate kahaDB memory so that it always has

sufficient memory resources?  Or a configuration parameter that

affects this behavior?

 

 

A little more detail...

 

We have kahaDB storing data in a /mgmt partition.  We fill this
partition

to 100% by copying a large file.  At this point we get exceptions

 

 

Error occured while processing async command: ActiveMQTextMessage
{commandId = 3, responseRequired = false, messageId =
ID:Peter-53524-1286982300338-3:33:-1:1:1, originalDestination = null,
originalTransactionId = null, producerId =
ID:Peter-53524-1286982300338-3:33:-1:1, destination = queue://producer,
transactionId = null, expiration = 1286991041000, timestamp =
1286983841505, arrival = 0, brokerInTime = 1286983841505, brokerOutTime
= 0, correlationId = null, replyTo = null, persistent = true, type =
null, priority = 0, groupID = null, groupSequence = 0, targetConsumerId
= null, compressed = false, userID = null, content = null,
marshalledProperties = null, dataStructure = null, redeliveryCounter =
0, size = 0, properties = null, readOnlyProperties = true, readOnlyBody
= true, droppable = false, text = <....>}, exception:
java.io.IOException: No space left on device |
org.apache.activemq.broker.TransportConnection.Service | ActiveMQ
Transport: tcp:///1.1.1.20:53296

java.io.IOException: No space left on device

        at java.io.RandomAccessFile.writeBytes(Native Method)

        at java.io.RandomAccessFile.write(RandomAccessFile.java:466)

        at
org.apache.kahadb.journal.DataFileAppender.processQueue(DataFileAppender
.java:370)

 

 

However, even after reducing the disk usage from 100%, by removing the

large file, we continue to get this same exception.

 

Are there any configuration parameters that may help this behavior

so that messages can be accepted once the disk usage is restored

to normal?

 

Here's our kahaDB configuration

 

        <persistenceAdapter>

             <kahaDB
directory="/mgmt/activemq/data/dynamic-broker1/kahadb"
indexWriteBatchSize="1000" enableIndexWriteAsync="true"
enableJournalDiskSyncs="false" />

        </persistenceAdapter>

 

Or can we pre-allocate all of the disk space need by kahaDB?

 

Thanks,

 

Peter P

Reply via email to