Author: michiel
Date: 2010-05-04 15:42:59 +0200 (Tue, 04 May 2010)
New Revision: 42097
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/storage/implementation/database/DatabaseStorageManager.java
Log:
MMB-1956 plus some logging
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/storage/implementation/database/DatabaseStorageManager.java
===================================================================
---
mmbase/trunk/core/src/main/java/org/mmbase/storage/implementation/database/DatabaseStorageManager.java
2010-05-04 13:42:02 UTC (rev 42096)
+++
mmbase/trunk/core/src/main/java/org/mmbase/storage/implementation/database/DatabaseStorageManager.java
2010-05-04 13:42:59 UTC (rev 42097)
@@ -161,6 +161,7 @@
if (bufferSizeAttribute != null) {
try {
bufferSize =
Integer.valueOf(bufferSizeAttribute.toString());
+ log.info("Found key buffer size " + bufferSize);
} catch (NumberFormatException nfe) {
// remove the SEQUENCE_BUFFER_SIZE attribute (invalid
value)
factory.setAttribute(Attributes.SEQUENCE_BUFFER_SIZE,
null);
@@ -257,6 +258,7 @@
log.debug("No active connection got");
return;
}
+ log.debug("begin transaction");
activeConnection.setTransactionIsolation(transactionIsolation);
activeConnection.setAutoCommit(false);
} catch (SQLException se) {
@@ -284,6 +286,7 @@
try {
activeConnection.commit();
+ log.debug("committed transaction");
} catch (SQLException se) {
throw new StorageException(se);
} finally {
@@ -345,14 +348,14 @@
log.debug("Creating key");
synchronized (sequenceKeys) {
log.debug("Acquired lock");
- // if sequenceKeys conatins (buffered) keys, return this
+ // if sequenceKeys contains (buffered) keys, return this
if (sequenceKeys.size() > 0) {
return sequenceKeys.remove(0);
} else {
String query = "";
try {
-
getActiveConnection();
+ beginTransaction();
Statement s;
Scheme scheme = factory.getScheme(Schemes.UPDATE_SEQUENCE,
Schemes.UPDATE_SEQUENCE_DEFAULT);
if (scheme != null) {
@@ -377,6 +380,7 @@
for (int i = 1; i < bufferSize.intValue();
i++) {
sequenceKeys.add(keynr + i);
}
+ log.service("Created key buffer " +
sequenceKeys);
return keynr;
} else {
throw new StorageException("The sequence table
is empty.");
@@ -395,6 +399,7 @@
} catch (InterruptedException re) {}
throw new StorageException(se);
} finally {
+ commit();
releaseActiveConnection();
}
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs