[rhmessaging-commits] rhmessaging commits: r2208 - store/trunk/cpp/lib.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Mon Jul 21 07:32:45 EDT 2008


Author: kpvdr
Date: 2008-07-21 07:32:45 -0400 (Mon, 21 Jul 2008)
New Revision: 2208

Modified:
   store/trunk/cpp/lib/BdbMessageStore.cpp
Log:
Corrected lock placed in TPL store late initialization check which takes the lock unnecessarily and effectively single-threads all transactions.

Modified: store/trunk/cpp/lib/BdbMessageStore.cpp
===================================================================
--- store/trunk/cpp/lib/BdbMessageStore.cpp	2008-07-18 13:30:50 UTC (rev 2207)
+++ store/trunk/cpp/lib/BdbMessageStore.cpp	2008-07-21 11:32:45 UTC (rev 2208)
@@ -275,11 +275,13 @@
 
 void BdbMessageStore::chkTplStoreInit()
 {
-    qpid::sys::Mutex::ScopedLock sl(jrnlCreateLock);
     if (!tplStorePtr->is_ready()) {
-        journal::jdir::create_dir(getTplBaseDir());
-        tplStorePtr->initialize(tplNumJrnlFiles, tplJrnlFsizeSblks, tplWCacheNumPages, tplWCachePgSizeSblks);
-        if (mgmtObject != 0) mgmtObject->set_tplIsInitialized(true);
+        qpid::sys::Mutex::ScopedLock sl(jrnlCreateLock);
+        if (!tplStorePtr->is_ready()) {
+            journal::jdir::create_dir(getTplBaseDir());
+            tplStorePtr->initialize(tplNumJrnlFiles, tplJrnlFsizeSblks, tplWCacheNumPages, tplWCachePgSizeSblks);
+            if (mgmtObject != 0) mgmtObject->set_tplIsInitialized(true);
+        }
     }
 }
 




More information about the rhmessaging-commits mailing list