diff options
author | Robert Gemmell <robbie@apache.org> | 2012-07-31 13:14:44 +0000 |
---|---|---|
committer | Robert Gemmell <robbie@apache.org> | 2012-07-31 13:14:44 +0000 |
commit | fabdad61ee5e206bfeb5bc8b96d6c1109229a562 (patch) | |
tree | e47debee842e61b8172c9c7704d29c75d01cc071 | |
parent | 660b3224fa533e87828dba175b95835cf5eba9e2 (diff) | |
download | qpid-python-fabdad61ee5e206bfeb5bc8b96d6c1109229a562.tar.gz |
QPID-4164: only keep a hard reference to the meta data if it has yet to be persisted
merged from trunk r1366339
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.18@1367531 13f79535-47bb-0310-9956-ffa450edef68
2 files changed, 8 insertions, 2 deletions
diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java index 755cb9c89e..9323111fdd 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java @@ -1594,7 +1594,10 @@ public abstract class AbstractBDBMessageStore implements MessageStore _messageId = messageId; _isRecovered = isRecovered; - _metaData = metaData; + if(!_isRecovered) + { + _metaData = metaData; + } _metaDataRef = new SoftReference<StorableMessageMetaData>(metaData); } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java index bc9cda7f71..154d7e6535 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java @@ -2057,8 +2057,11 @@ public class DerbyMessageStore implements MessageStore _messageId = messageId; _isRecovered = isRecovered; + if(!_isRecovered) + { + _metaData = metaData; + } _metaDataRef = new SoftReference<StorableMessageMetaData>(metaData); - _metaData = metaData; } @Override |