summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2012-07-27 11:19:01 +0000
committerRobert Gemmell <robbie@apache.org>2012-07-27 11:19:01 +0000
commit6a98ca670179201956853fa112502fa07b01c614 (patch)
treee7763444de64c5cb0caf5b253f2ddee3d4e7408e /java
parentf396419fdae0d5e6650d0d2a33fa06ca4cfb5a49 (diff)
downloadqpid-python-6a98ca670179201956853fa112502fa07b01c614.tar.gz
QPID-4164: only keep a hard reference to the meta data if it has yet to be persisted
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1366339 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r--java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java5
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java5
2 files changed, 8 insertions, 2 deletions
diff --git a/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java b/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java
index 755cb9c89e..9323111fdd 100644
--- a/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/AbstractBDBMessageStore.java
+++ b/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/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java b/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java
index bc9cda7f71..154d7e6535 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java
+++ b/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