activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pothier, Peter" <ppoth...@CROSSBEAMSYS.COM>
Subject RE: No Space exceptions though disk no longer full
Date Fri, 15 Oct 2010 16:27:31 GMT
This works much better with ActiveMQ 5.3.1.  In fact, no exceptions are seen
even though the disk partition is 100% full.  I assume this is because db-1.log
is created as a sparse file?

I also assume this better behavior is related to this fix?

    https://issues.apache.org/activemq/browse/AMQ-2478

Peter P

From: Pothier, Peter
Sent: Wednesday, October 13, 2010 12:05 PM
To: users@activemq.apache.org; Pothier, Peter
Subject: No Space exceptions though disk no longer full

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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message