Merge "Reduce default exclude refs filter" into stable-3.2
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java
index f3e38fd..380ac8e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java
@@ -424,7 +424,7 @@
FetchApiClient fetchClient = fetchClientFactory.create(source);
repLog.info("Pull replication REST API fetch to {} for {}:{}", apiUrl, project, refName);
Context<String> timer = fetchMetrics.startEnd2End(source.getRemoteConfigName());
- HttpResult result = fetchClient.callFetch(project, refName, uri, timer.getStartTime());
+ HttpResult result = fetchClient.callFetch(project, refName, uri);
long elapsedMs = TimeUnit.NANOSECONDS.toMillis(timer.stop());
boolean resultSuccessful = result.isSuccessful();
repLog.info(
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationApiRequestMetrics.java b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationApiRequestMetrics.java
index 8a97901..597b66f 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationApiRequestMetrics.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationApiRequestMetrics.java
@@ -14,6 +14,8 @@
package com.googlesource.gerrit.plugins.replication.pull.api;
+import static java.util.concurrent.TimeUnit.MILLISECONDS;
+
import com.google.inject.Inject;
import com.googlesource.gerrit.plugins.replication.pull.FetchReplicationMetrics;
import java.util.Optional;
@@ -51,18 +53,22 @@
startTimeNanos =
Optional.ofNullable(req.getHeader(HTTP_HEADER_X_START_TIME_NANOS))
.map(Long::parseLong)
- /* Adjust with System.nanoTime() for preventing negative execution times
+ /* Adjust with the system's nanotime for preventing negative execution times
* due to a clock skew between the client and the server timestamp.
*/
- .map(nanoTime -> Math.min(System.nanoTime(), nanoTime));
+ .map(nanoTime -> Math.min(currentTimeNanos(), nanoTime));
}
public Optional<Long> stop(String replicationSourceName) {
return startTimeNanos.map(
start -> {
- long elapsed = System.nanoTime() - start;
+ long elapsed = currentTimeNanos() - start;
metrics.recordEnd2End(replicationSourceName, elapsed);
return elapsed;
});
}
+
+ private long currentTimeNanos() {
+ return MILLISECONDS.toNanos(System.currentTimeMillis());
+ }
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java
index 6b23a9f..6000eb9 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java
@@ -14,6 +14,8 @@
package com.googlesource.gerrit.plugins.replication.pull.client;
+import static java.util.concurrent.TimeUnit.MILLISECONDS;
+
import com.google.gerrit.entities.Project;
import com.googlesource.gerrit.plugins.replication.pull.Source;
import com.googlesource.gerrit.plugins.replication.pull.api.data.RevisionData;
@@ -34,7 +36,7 @@
default HttpResult callFetch(Project.NameKey project, String refName, URIish targetUri)
throws ClientProtocolException, IOException {
- return callFetch(project, refName, targetUri, System.nanoTime());
+ return callFetch(project, refName, targetUri, MILLISECONDS.toNanos(System.currentTimeMillis()));
}
HttpResult initProject(Project.NameKey project, URIish uri) throws IOException;
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java b/src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java
index 464bc9c..0743cb9 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java
@@ -19,7 +19,6 @@
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.anyInt;
-import static org.mockito.Mockito.anyLong;
import static org.mockito.Mockito.anyString;
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.lenient;
@@ -138,8 +137,7 @@
lenient()
.when(fetchRestApiClient.callSendObjects(any(), anyString(), any(), any()))
.thenReturn(httpResult);
- when(fetchRestApiClient.callFetch(any(), anyString(), any(), anyLong()))
- .thenReturn(fetchHttpResult);
+ when(fetchRestApiClient.callFetch(any(), anyString(), any())).thenReturn(fetchHttpResult);
when(fetchRestApiClient.initProject(any(), any())).thenReturn(successfulHttpResult);
when(successfulHttpResult.isSuccessful()).thenReturn(true);
when(httpResult.isSuccessful()).thenReturn(true);
@@ -216,7 +214,7 @@
objectUnderTest.onGitReferenceUpdated(event);
- verify(fetchRestApiClient).callFetch(any(), anyString(), any(), anyLong());
+ verify(fetchRestApiClient).callFetch(any(), anyString(), any());
}
@Test
@@ -229,7 +227,7 @@
objectUnderTest.onGitReferenceUpdated(event);
- verify(fetchRestApiClient).callFetch(any(), anyString(), any(), anyLong());
+ verify(fetchRestApiClient).callFetch(any(), anyString(), any());
}
@Test
@@ -245,7 +243,7 @@
objectUnderTest.onGitReferenceUpdated(event);
- verify(fetchRestApiClient).callFetch(any(), anyString(), any(), anyLong());
+ verify(fetchRestApiClient).callFetch(any(), anyString(), any());
}
@Test