         self.minCacheUpdatesSnapshot = 0
         self.databaseWriteQueue = Dispatch.Queues.create(.SerialQueue, name: "turf.database.write-queue")
         self.connectionSetUpQueue = Dispatch.Queues.create(.SerialQueue, name: "turf.database.setup-queue")
-        self.databaseTransactionEnded = Dispatch.Queues.create(.SerialQueue, name: "turf.database.write-completed")
-        self.transactionEnded = Subject<Void>()
+        self.databaseWriteTransactionEndedQueue = Dispatch.Queues.create(.SerialQueue, name: "turf.database.write-ended")
+        self.databaseWriteTransactionEnded = Subject<Void>()
 
         Dispatch.Queues.setContext(
             Dispatch.Queues.makeContext(self.databaseWriteQueue),

        return observingConnection
    }

    public var databaseWriteSucceeded: Observable<Void> {
        return transactionEnded
    }

    // MARK: Internal methods

    }

    func notifiyTransactionEnded(wasRolledBack wasRolledBack: Bool) {
        Dispatch.asynchronouslyOn(databaseWriteTransactionEndedQueue) {
            self.databaseWriteTransactionEnded.handle(next: ())
        }
    }

