123 Commits

Author SHA1 Message Date
gtully
4a4c14aba5 fix leveldb version of org.apache.activemq.bugs.AMQ2870Test#testSize 2014-03-14 10:55:27 -04:00
Hiram Chirino
7f68893af6 Default flushDelay on the replicated leveldb store did not have the correct default. 2014-03-13 11:06:13 -04:00
Hiram Chirino
bc2f708c3c Fixes https://issues.apache.org/jira/browse/AMQ-4923: Replicated LevelDB: Loss of broker Quorum fails to fully stop the master 2014-03-13 11:05:55 -04:00
Hiram Chirino
6a7e640d33 Implementing a dirty stop method for the leveldb store that might come in handy for testing. 2014-03-13 11:04:52 -04:00
Hiram Chirino
3faddcd2d1 Fixing https://issues.apache.org/jira/browse/AMQ-4917 : LevelDB store can fail when using durable subs.
We were browsing durable sub entries which had been concurrently GCed causing leveldb store failures which then caused the broker to restart.
2014-03-12 13:13:33 -04:00
Hiram Chirino
2e5c9d5929 Adding assertions to make sure that we only append to the log from the write thread. Found a code path that was appending to the log from a different thread. This might have been affecting https://issues.apache.org/jira/browse/AMQ-4882 2014-03-12 13:12:50 -04:00
Hiram Chirino
0bf2233c8a Fixing regression caused by changes to SuppressRelyException in commit b0e91d47f5fced59c89a34d993f4d87c7986b04b. 2014-03-12 13:12:21 -04:00
Hiram Chirino
48a9edc8cc Have the leveldb store thorw SuppressReplyExceptions instead of IOExceptions so that the clients retry try the operations instead of giving up. Also retry the problemantic getMessage() call which seems to fail at times. 2014-03-12 12:11:24 -04:00
Claus Ibsen
2119a70d8b AMQ-4858: Moved scala source file from java to scala dir. Thanks to Jaromir Hamala for patch. 2014-03-12 12:11:10 -04:00
Claus Ibsen
351f05e268 AMQ-4885: Renamed some API methods in MessageStore due typos. 2014-03-12 12:10:51 -04:00
Timothy Bish
6e079ad433 https://issues.apache.org/jira/browse/AMQ-4855
Deprecate the misspelled subcription named getters and use the correctly
spelled versions where the older ones are in use.
2014-03-12 10:24:00 -04:00
Hiram Chirino
6ef202e020 Replicated leveldb slaves index snapshots were being labeled with higher journal positions than what they really contained. 2014-03-12 09:03:24 -04:00
Hiram Chirino
554efe3e16 If a replicated leveldb slave's connection gets slow, lets merge together journal write events to avoid them queuing up on the master side. 2014-03-12 09:01:15 -04:00
Hiram Chirino
f2e58dc87f leveldb store: Add more log traces for when we need to get more details on what's going on. 2014-03-12 09:00:25 -04:00
Hiram Chirino
ca02709d56 Fixes for leveldb replication: make sure we only apply index updates when we encounter a UOW_END_RECORD so that we don't end up with an inconsistent index if a partial UOW is replicated. 2014-03-12 09:00:11 -04:00
Hiram Chirino
c7a65cc228 leveldb replication: Lets always download the current append log just to be safe 2014-03-12 08:59:56 -04:00
Hiram Chirino
3f94098c99 Continue to append to the last leveldb log file on a store restart. 2014-03-12 08:59:42 -04:00
Hiram Chirino
702a0065dd Fix for: https://issues.apache.org/jira/browse/AMQ-4837 : LevelDB corrupted in AMQ cluster.
- The tracked flushed offset was not getting initialized to match the initial size of the log file.  This invalid flushed offset was being used to do the initial sync /w the slave and then things went downhill.
2014-03-11 21:20:20 -04:00
Hiram Chirino
50f37beb87 Fix for: https://issues.apache.org/jira/browse/AMQ-4837 : LevelDB corrupted in AMQ cluster.
- Log rotation was causing a pre-mature index snapshot to be taken on the slave (snapshot while the slave was still synchronizing).
- Also fix issue with the append position displayed in JMX for the master not being correct.
2014-03-11 21:18:49 -04:00
Hiram Chirino
5161087f31 Working on a test case for https://issues.apache.org/jira/browse/AMQ-4837 : LevelDB corrupted in AMQ cluster. 2014-03-11 21:16:58 -04:00
Hiram Chirino
251b7da5a8 Only register the leveldb store MBeans in JMX if jmx is enabled on the broker. 2014-03-11 21:16:39 -04:00
Hiram Chirino
28e6e6f7fc Add a toString() method to the replicated leveldb store so that it displays a nicer message when the broker starts it up. 2014-03-11 21:03:46 -04:00
Hiram Chirino
c6a58857ed Update to the latest leveldbjni release. 2014-03-11 17:05:17 -04:00
Hiram Chirino
c585f54fa3 Avoid NullPointerExceptions that can occur during leveldb replication M/S state transitions. 2014-03-11 17:04:55 -04:00
Hadrian Zbarcea
c39f428b0a [build] Update project version on maintenance branch 2014-03-11 16:06:34 -04:00
gtully
87c9bbebac [maven-release-plugin] prepare release activemq-5.9.0 2013-10-14 23:38:22 +01:00
Hiram Chirino
d44c8968c4 Expose a JMX attribute to show when the last leveldb replication log entry was recorded.
This can be used to get a time estimate of far behind a master a slave is.
2013-10-14 08:45:54 -04:00
gtully
ee0933c71e [maven-release-plugin] prepare for next development iteration 2013-10-11 14:51:36 +01:00
gtully
b276006911 [maven-release-plugin] prepare release activemq-5.9.0 2013-10-11 14:51:24 +01:00
Claus Ibsen
59af7479b2 Polished the logging 2013-10-11 11:20:22 +02:00
Hiram Chirino
0214bfbfcd Support weighting the leveldb store replication nodes so that some have a better chance of becoming the master than others. 2013-10-10 15:42:02 -04:00
Hiram Chirino
e90ce1aabb Don't display leveldb replication recovery progress on slave nodes. 2013-10-10 14:52:07 -04:00
gtully
4f108cead5 fix up missing license headers - keep mr. rat happy :-) 2013-10-10 11:41:58 +01:00
Hiram Chirino
d609d2ae38 Make sure the leveldb append log file is flushed to disk before it's closed to avoid data loss. 2013-10-09 11:49:11 -04:00
Hiram Chirino
5e63ddd337 Fixing bug which caused replicated leveldb nodes to not recover from a ZooKeeper failure. 2013-10-09 10:56:34 -04:00
Hiram Chirino
119fdab1d0 Fixes leveldb replication bug that can cause read errors: make sure that log is flushed for records that are being read. 2013-10-09 09:15:48 -04:00
Hiram Chirino
a5ac1a3630 Avoid logging ZooKeeper related exceptions during a replicated leveldb store shutdown. 2013-10-03 10:42:45 -04:00
Hiram Chirino
b720b264e3 The the hostname on the replicated leveldb store test so that the test works better on machines with weird DNS settings. 2013-10-02 12:15:36 -04:00
Hiram Chirino
0b66abcbfb Fixing leveldb replication bug where loosing quorum did not properly restart the master in a clean way. 2013-10-02 12:15:36 -04:00
Hiram Chirino
8804341c19 Adding more debug info to help trouble shoot election issues with leveldb replication elections. 2013-10-02 10:45:58 -04:00
Hiram Chirino
f75520fc8b Implementing AMQ-4744: Support using LevelDB as a nested store in mKahaDB 2013-09-27 09:19:48 -04:00
gtully
efaa351db7 https://issues.apache.org/jira/browse/AMQ-4365 - allow lease locker to be used by kahadb - remove deps on jdbc pa. LockableService now passes a reference to a locker so it can pull the brokerService, extracted some of the jdbc lock common stuff, additional test kahadb with jdbc lease 2013-09-20 15:33:24 +01:00
Hiram Chirino
d771ebb97e Fixes bug in replicated leveldb where log files on slaves were not getting GCed. 2013-09-16 11:58:03 -04:00
Hiram Chirino
1eca031356 leveldb replication Master was failing to give up being master after it's process is suspended by using ctrl-z. 2013-09-03 10:41:33 -04:00
Hiram R. Chirino
f4d51e092b Adding a LevelDB version of the RedeliveryRestartTest. Implemented redelivery tracking in the leveldb store.
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1518289 13f79535-47bb-0310-9956-ffa450edef68
2013-08-28 17:20:25 +00:00
Hiram R. Chirino
45e1462609 Persist the latest producer position across restarts in the leveldb store.
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1515799 13f79535-47bb-0310-9956-ffa450edef68
2013-08-20 12:38:32 +00:00
Gary Tully
7c50c1c736 fix up failure - still leveldb variant problem that needs work - testQueueTransactionalOrderWithRestart - org.apache.activemq.bugs.AMQ2149LevelDBTest
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1512332 13f79535-47bb-0310-9956-ffa450edef68
2013-08-09 15:11:11 +00:00
Hiram R. Chirino
563cc1bc6a Warn when there are too many replication nodes attached.
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1506965 13f79535-47bb-0310-9956-ffa450edef68
2013-07-25 13:40:59 +00:00
Timothy A. Bish
194c6535cd [LevelDB]
https://issues.apache.org/jira/browse/AMQ-4296

Fixes remainder of failing unit tests.  The LevelDB wasn't incrementing or decrementing reference counts on messages added to the store which causes the expectations of certain memory limit based tests to fail as the memory usage was being updates after the store add instead of during so a message could get placed into the batch list of a cursor when we did not expect that it would.  This could also cause a browse to return fewer message than we want as the in memory messages would top out the usage limit so we'd never page in one batch of messages. 

git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1505805 13f79535-47bb-0310-9956-ffa450edef68
2013-07-22 20:53:27 +00:00
Timothy A. Bish
11ed6b0e18 {LevelDB] fix for StoreQueueCursorLevelDBNoDuplicateTest failure. When the cursor calls setBatch and then recovering the next batch its expecting the batch to start at lastMsgId + 1 so we were seeing a single duplicate message and since audit was disabled it was delivered.
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1504668 13f79535-47bb-0310-9956-ffa450edef68
2013-07-18 21:21:38 +00:00