Commit Graph

242 Commits

Author SHA1 Message Date
gtully 21ae1ef2e6 [AMQ-6606] - reset next batch so it does not get reused after error and refine fix to sync write batches b/c async locations will already be in the index 2017-03-07 12:28:58 +00:00
Christopher L. Shannon (cshannon) 0d824a8e68 AMQ-6377: Storing JournalSyncStrategy as an enum
Switching MessageDatabase to store JournalSyncStrategy as its enum value
instead of String to avoid the performance penalty of comparing Strings
everytime isEnableJournalDiskSyncs() is called which currently happens
on every write.
2017-03-06 07:54:39 -05:00
gtully d53b8f8d42 [AMQ-6606] avoid partial writes to the end of the journal - revert offset increment on ioexception, fix and test 2017-02-21 17:04:00 +00:00
gtully 9b64e188b5 [AMQ-6432] issue was journal scan on newly created ack file. I left the relevant braces from AMQ-6288 in place. Fix and test 2017-02-03 16:58:52 +00:00
gtully e3b529129a [AMQ-6432] improve the logging to see the current offset 2017-02-02 12:14:17 +00:00
Christopher L. Shannon (cshannon) 83511c96e5 https://issues.apache.org/jira/browse/AMQ-6590
Removing un-needed imports
2017-02-02 07:09:57 -05:00
Christopher L. Shannon (cshannon) 38d85be476 https://issues.apache.org/jira/browse/AMQ-6590
Fix KahaDB index free page recovery on unclean shutdown so that existing
free pages will be tracked and not lost.
2017-02-02 07:06:11 -05:00
Christopher L. Shannon (cshannon) 0ad62f722f https://issues.apache.org/jira/browse/AMQ-6572
On journal start use lastFileLength instead of maxFileLength when
checking for unused space in the last journal file as it is possible the
length of the last journal file is not the same length as maxFileLength
2017-01-23 11:01:20 -05:00
gtully 20522394cc [AMQ-6567] ensure gc file removal/move is completed after index updates to avoid dangling index referenced on partial failure. Fix and test 2017-01-17 14:05:04 +00:00
Timothy Bish 281d600ae2 https://issues.apache.org/jira/browse/AMQ-6563
ensure that the lock is always released in the load method.
2017-01-13 11:48:19 -05:00
gtully 0ae90c0897 https://issues.apache.org/jira/browse/AMQ-6547 - add storeUsage attribute to mKahadb filtered adapter such that disk utilisation is available as a QOS 2016-12-20 14:47:22 +00:00
Christopher L. Shannon (cshannon) 5fd63a0e4e https://issues.apache.org/jira/browse/AMQ-6545
Fixing the order of locks acquired in the KahaDB journal to prevent a
deadlock during file rotation
2016-12-16 13:44:18 -05:00
Christopher L. Shannon (cshannon) 0f0bdb21ef https://issues.apache.org/jira/browse/AMQ-6524
Fixing a thread safety issue with memoryUsage when using concurrentStoreAndDispatch
that was causing memory usage to get out of sync.

The InnerFutureTask class inside KahaDB was not thread safe which was
the root cause of the problem.
2016-12-05 07:10:20 -05:00
gtully dad629e889 [AMQ-6522] - remove hardcoded 32k batch limit from recovery check of the journal, fix and test 2016-11-29 11:32:03 +00:00
gtully 0a29533ed7 [AMQ-6520] respect kahadb indexDirectory for perDestination mKahaDB - fix and test 2016-11-25 16:44:28 +00:00
Timothy Bish 2c828b23df https://issues.apache.org/jira/browse/AMQ-6504
Fix intermittent test failure
2016-11-21 12:37:52 -05:00
Timothy Bish 980162233f https://issues.apache.org/jira/browse/AMQ-6504
Round the start time value not truncate to ensure delay falls on the
correct side of the scheduling block.
2016-11-11 14:48:49 -05:00
gtully 3b7613d930 AMQ-6451 - catch errors on preallocation. allocate direct buffer on start and reuse to ensure resource availability at runtime 2016-11-08 14:05:46 +00:00
Hadrian Zbarcea e725451521 This closes #162. Minor improvement in using the Logger api 2016-11-03 17:26:00 -04:00
Hadrian Zbarcea be24a133ef This closes #88 (merged as a65ac586). More file permissions fixes. 2016-11-03 14:26:34 -04:00
Hadrian Zbarcea d5a929c0d2 This closes #205. Won't fix. (fix even more file permissions) 2016-11-03 14:11:40 -04:00
Hadrian Zbarcea d54d046b8a This closes #185. Won't fix. (fix more file permissions) 2016-11-03 11:54:33 -04:00
Timothy Bish 1a91decf9f https://issues.apache.org/jira/browse/AMQ-6483
Fix conversion from long to int and back to long again.
2016-10-26 13:27:24 -04:00
gtully 538ed74510 NO-JIRA - ensure stack trace in incuded with exception that terminates data file appender thread 2016-10-07 16:26:07 +01:00
Christopher L. Shannon (cshannon) 351faf2699 https://issues.apache.org/jira/browse/AMQ-6445
Fixing RandomAccessFile usage so that the file will be properly closed
even if there is an exception
2016-09-29 06:16:40 -04:00
Christopher L. Shannon (cshannon) a82c95cd29 https://issues.apache.org/jira/browse/AMQ-6436
The temporary store will now delete the old temp directory on start up
if lazyInit is true instead of waiting for the store to initialize to
clear up space.  This prevents space on the disk from being wasted with
old data if the temp store isn't initialized
2016-09-23 15:47:27 -04:00
Christopher L. Shannon (cshannon) 18571ce09b https://issues.apache.org/jira/browse/AMQ-6430
Modifying patch so that only stores that persist the noLocal flag will
check if this flag has changed to prevent a subscription from being
deleted by mistake
2016-09-23 10:59:32 -04:00
gtully f8bc19b96d AMQ-6413 - ensure audit update on skipped store add for kahadb concurrentStoreAndDispatch. Fix and test 2016-09-01 16:46:21 +01:00
gtully 5a874816b7 AMQ-6403 - add indexDirectory attribute to kahadb plist impl - settable via broker service tempDataStore 2016-08-24 11:39:22 +01:00
gtully b37b9eb5af fix up cancelledTaskModMetric reporting in kahadb 2016-08-19 11:48:42 +01:00
gtully 330f0ce734 AMQ-5815 ensure async write latch is released on exception 2016-08-12 16:44:23 +01:00
gtully 51166dc7af AMQ-6377 - fix deprecation java doc ref 2016-08-10 12:05:21 +01:00
gtully fcd9047b9f additional test to validate stats on missing messages and outstanding acks on recovery 2016-08-10 11:54:12 +01:00
Christopher L. Shannon (cshannon) 06a21dbbb3 [maven-release-plugin] prepare for next development iteration 2016-08-02 09:03:37 -04:00
Christopher L. Shannon (cshannon) 71cbc65283 [maven-release-plugin] prepare release activemq-5.14.0 2016-08-02 09:02:54 -04:00
Christopher L. Shannon (cshannon) 71bb54f94c https://issues.apache.org/jira/browse/AMQ-6372
Fixing test so that test DataFile is written to a temporary directory
instead of the main activemq-kahadb-store directory.  This prevents git
from picking up the test file
2016-07-30 12:59:10 -04:00
Christopher L. Shannon (cshannon) 1a598277cf https://issues.apache.org/jira/browse/AMQ-6377
Reworking patch so that a periodic disk sync uses a journal trace
command to trigger the sync so that everything is done in the same
thread for the writes
2016-07-28 10:07:10 -04:00
Christopher L. Shannon (cshannon) 498e2184be https://issues.apache.org/jira/browse/AMQ-6377
Adding new setters to KahaDBPersistenceAdapter
2016-07-27 17:33:45 -04:00
Christopher L. Shannon (cshannon) dd0ed17e59 https://issues.apache.org/jira/browse/AMQ-6377
Introducing JournalDiskSyncStrategy to allow a peridic disk sync mode
instead of always syncing after every write or never syncing.
2016-07-27 14:31:07 -04:00
gtully 822e2be90e AMQ-6378 force recovery on corrupt metadata location info, relates to AMQ-6376 2016-07-27 15:56:28 +01:00
gtully 6b8e743b08 AMQ-6372 - add IOExceptionHandler to kahadb read path to ensure fast shutdown on disk access errors 2016-07-27 11:58:22 +01:00
Christopher L. Shannon (cshannon) cf3d419528 https://issues.apache.org/jira/browse/AMQ-6375
Adding non-blocking metrics to KahaDB to track message counts and sizes
for subscriptions.  Turned off by default but can be enabled on the
KahaDBPersistenceAdapter
2016-07-26 12:02:44 -04:00
gtully d427952b19 AMQ-6372 - fix up accessor pool cleanupUnused and use the minimum number of open files for recovery 2016-07-25 13:33:24 +01:00
Timothy Bish 8cc5c56d5e https://issues.apache.org/jira/browse/AMQ-6358
Wait until recover is done before starting the checkpoint tasks.
2016-07-14 10:49:59 -04:00
Christopher L. Shannon (cshannon) a5050a8bc5 https://issues.apache.org/jira/browse/AMQ-6356
Fixing store size calculation on KahaUpdateMessageCommand processing so
that the size won't increase inadvertently if the existing location of
the command in the journal is the same as the new location
2016-07-14 09:21:23 -04:00
Christopher L. Shannon (cshannon) d635a36940 https://issues.apache.org/jira/browse/AMQ-6352
Fixing PList size tracking by moving the null assignment on removal to
after the onRemoval method is called to make sure that the decrement is
done properly.
2016-07-12 10:27:57 -04:00
gtully 4386750fdb for mkahadb populate mdc activemq.persistenceDir such that logging for a particular instance can be identified and correlated 2016-07-04 11:19:56 +01:00
Christopher L. Shannon (cshannon) 4d6cc4b460 https://issues.apache.org/jira/browse/AMQ-6303
Properly setting typeCode value for new journal files used for ack
compaction
2016-05-23 18:42:29 +00:00
Timothy Bish 15405af2e6 https://issues.apache.org/jira/browse/AMQ-6292
allow for batch writes of forwarded acks.
2016-05-13 14:56:01 -04:00
Christopher L. Shannon (cshannon) c8a6171d04 https://issues.apache.org/jira/browse/AMQ-6288
Switching the checkpoint lock to a readlock when forwarding acks to
prevent other journal updates from being blocked.
2016-05-12 14:39:12 +00:00