You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by da...@apache.org on 2009/06/09 15:09:10 UTC

svn commit: r782991 - /db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java

Author: dag
Date: Tue Jun  9 13:09:10 2009
New Revision: 782991

URL: http://svn.apache.org/viewvc?rev=782991&view=rev
Log:
DERBY-3719 ...replication.buffer.LogBufferFullException' causes failover to fail w/ 'XRE07, SQLERRMC: Could not perform operation because the database is not in replication master mode.

Patch derby-3719-1 fixes a race condition in the logic that throttles
log production if shipping can't keep up. The bug made replication stop.


Modified:
    db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java

Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java?rev=782991&r1=782990&r2=782991&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/store/replication/master/AsynchronousLogShipper.java Tue Jun  9 13:09:10 2009
@@ -207,8 +207,8 @@
     public void run() {
         while (!stopShipping) {
             try {
-                shipALogChunk();
                 synchronized (forceFlushSemaphore) {
+                    shipALogChunk();
                     // Wake up a thread waiting for forceFlush, if any
                     forceFlushSemaphore.notify();
                 }