You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by st...@apache.org on 2008/04/11 14:43:43 UTC
svn commit: r647147 -
/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java
Author: stefan
Date: Fri Apr 11 05:43:38 2008
New Revision: 647147
URL: http://svn.apache.org/viewvc?rev=647147&view=rev
Log:
JCR-1532: ERROR 40XD0: Container has been closed exception with Derby DB
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java?rev=647147&r1=647146&r2=647147&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/DatabasePersistenceManager.java Fri Apr 11 05:43:38 2008
@@ -394,6 +394,15 @@
}
in = rs.getBinaryStream(1);
+
+ if (!externalBLOBs) {
+ // JCR-1532: pre-fetch/buffer stream data
+ ByteArrayInputStream bain = new ByteArrayInputStream(
+ IOUtils.toByteArray(in));
+ IOUtils.closeQuietly(in);
+ in = bain;
+ }
+
PropertyState state = createNew(id);
Serializer.deserialize(state, in, blobStore);