Revert "Delete event file only after replication completed for all destinations" This reverts commit d557ccc642c59a55750f560ce0d98870e1550d65. Reason for revert: This fix did not solve the problem, see associated issue. Bug: Issue 11172 Change-Id: Ifc2e7209bd86163e945f0595ff0ebd681932053f
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationState.java b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationState.java index ec878db..6f0803a 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationState.java +++ b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationState.java
@@ -86,6 +86,7 @@ URIish uri, RefPushResult status, RemoteRefUpdate.Status refUpdateStatus) { + deleteEvent(); pushResultProcessing.onRefReplicatedToOneNode(project, ref, uri, status, refUpdateStatus); RefReplicationStatus completedRefStatus = null; @@ -115,6 +116,12 @@ } } + private void deleteEvent() { + if (eventKey != null) { + eventsStorage.delete(eventKey); + } + } + public void markAllPushTasksScheduled() { countingLock.lock(); try { @@ -145,17 +152,10 @@ } private void doRefPushTasksCompleted(RefReplicationStatus refStatus) { - deleteEvent(); pushResultProcessing.onRefReplicatedToAllNodes( refStatus.project, refStatus.ref, refStatus.nodesToReplicateCount); } - private void deleteEvent() { - if (eventKey != null) { - eventsStorage.delete(eventKey); - } - } - private RefReplicationStatus getRefStatus(String project, String ref) { if (!statusByProjectRef.contains(project, ref)) { RefReplicationStatus refStatus = new RefReplicationStatus(project, ref);