[jboss-cvs] JBoss Messaging SVN: r4279 - trunk/src/main/org/jboss/messaging/core/journal/impl.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed May 21 23:55:39 EDT 2008
Author: clebert.suconic at jboss.com
Date: 2008-05-21 23:55:39 -0400 (Wed, 21 May 2008)
New Revision: 4279
Modified:
trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java
Log:
oops.. few fixes on timeouts...
few fixed on sync attribute
Modified: trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java 2008-05-22 03:54:14 UTC (rev 4278)
+++ trunk/src/main/org/jboss/messaging/core/journal/impl/JournalImpl.java 2008-05-22 03:55:39 UTC (rev 4279)
@@ -279,7 +279,7 @@
{
SimpleCallback callback = new SimpleCallback();
usedFile = appendRecord(bb.getBuffer(), true, callback);
- callback.waitCompletion();
+ callback.waitCompletion(aioTimeout);
}
else
{
@@ -314,7 +314,7 @@
{
SimpleCallback callback = new SimpleCallback();
usedFile = appendRecord(bb, true, callback);
- callback.waitCompletion();
+ callback.waitCompletion(aioTimeout);
}
else
{
@@ -355,7 +355,7 @@
{
SimpleCallback callback = new SimpleCallback();
usedFile = appendRecord(bb, true, callback);
- callback.waitCompletion();
+ callback.waitCompletion(aioTimeout);
}
else
{
@@ -394,7 +394,7 @@
{
SimpleCallback callback = new SimpleCallback();
appendRecord(bb, true, callback);
- callback.waitCompletion();
+ callback.waitCompletion(aioTimeout);
}
else
{
@@ -577,8 +577,6 @@
throw new IllegalStateException("Journal must be loaded first");
}
- TransactionCallback callback = getTransactionCallback(txID);
- callback.countUp();
TransactionNegPos tx = transactionInfos.remove(txID);
@@ -596,9 +594,19 @@
bb.put(DONE);
bb.rewind();
- JournalFile usedFile = appendRecord(bb, true, callback);
+ JournalFile usedFile;
+ if (shouldUseCallback)
+ {
+ TransactionCallback callback = getTransactionCallback(txID);
+ callback.countUp();
+ usedFile = appendRecord(bb, true, callback);
+ callback.waitCompletion(aioTimeout);
+ }
+ else
+ {
+ usedFile = appendRecord(bb, true);
+ }
- callback.waitCompletion();
transactionCallbacks.remove(txID);
tx.commit(usedFile);
@@ -628,12 +636,18 @@
bb.put(DONE);
bb.rewind();
- SimpleCallback callback = new SimpleCallback();
+ JournalFile usedFile;
+ if (shouldUseCallback)
+ {
+ SimpleCallback callback = new SimpleCallback();
+ usedFile = appendRecord(bb, true, callback);
+ callback.waitCompletion(aioTimeout);
+ }
+ else
+ {
+ usedFile = appendRecord(bb, true);
+ }
- JournalFile usedFile = appendRecord(bb, true, callback);
-
- callback.waitCompletion();
-
tx.rollback(usedFile);
}
@@ -1218,7 +1232,7 @@
{
for (TransactionCallback callback: transactionCallbacks.values())
{
- callback.waitCompletion();
+ callback.waitCompletion(aioTimeout);
}
if (!closingExecutor.isShutdown())
@@ -1580,10 +1594,9 @@
latch.countDown();
}
- public void waitCompletion() throws InterruptedException
+ public void waitCompletion(int timeout) throws InterruptedException
{
- // TODO: Variable Timeout?
- if (!latch.await(30, TimeUnit.SECONDS))
+ if (!latch.await(timeout, TimeUnit.SECONDS))
{
throw new IllegalStateException("Timeout!");
}
@@ -1612,9 +1625,9 @@
countLatch.down();
}
- public void waitCompletion() throws InterruptedException
+ public void waitCompletion(int timeout) throws InterruptedException
{
- countLatch.waitCompletion(90);
+ countLatch.waitCompletion(timeout);
if (errorMessage != null)
{
More information about the jboss-cvs-commits
mailing list