Merge branch 'stable-3.8' into stable-3.9
* stable-3.8:
Use index on ChangeNotes which supports local and imported changes
Consume global-refdb from source
Add global-refdb libModule to high-available Docker test
Remove syslog-sidecar volume in Docker test
Bump Gerrit to v3.7.7 in Docker tests
Fix docker-based tests
Remove `@NoHttpd` from IT tests that interact with Gerrit Rest API
Change-Id: Ib7ee50c8519b7fd91ad8ab87fcff0117b1a73c77
diff --git a/BUILD b/BUILD
index 4f10eab..9bb0445 100644
--- a/BUILD
+++ b/BUILD
@@ -23,10 +23,16 @@
"@jgroups//jar",
"@jgroups-kubernetes//jar",
"@failsafe//jar",
- "@global-refdb//jar:neverlink",
+ ":global-refdb-neverlink",
],
)
+java_library(
+ name = "global-refdb-neverlink",
+ neverlink = 1,
+ exports = ["//plugins/global-refdb"],
+)
+
junit_tests(
name = "high-availability_tests",
srcs = glob(["src/test/java/**/*.java"]),
diff --git a/Jenkinsfile b/Jenkinsfile
index 0c516ca..98183a5 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -1,2 +1,3 @@
pluginPipeline(formatCheckId: 'gerritforge:plugins-high-availability-code-style',
- buildCheckId: 'gerritforge:plugins-high-availability-build-test')
+ buildCheckId: 'gerritforge:plugins-high-availability-build-test',
+ extraModules: ['global-refdb'])
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandler.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandler.java
index c232af2..ac102ff 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandler.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandler.java
@@ -113,7 +113,7 @@
private void reindex(ChangeNotes notes) {
notes.reload();
- indexer.index(notes.getChange());
+ indexer.index(notes);
}
@Override
diff --git a/src/test/docker/docker-compose.yaml b/src/test/docker/docker-compose.yaml
index 59bec58..f744d2e 100644
--- a/src/test/docker/docker-compose.yaml
+++ b/src/test/docker/docker-compose.yaml
@@ -92,7 +92,6 @@
- subnet: 192.168.1.0/24
volumes:
- syslog-sidecar:
shareddir:
nfs-server-volume:
git-volume:
diff --git a/src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandlerTest.java b/src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandlerTest.java
index fa70958..be74231 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandlerTest.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/highavailability/forwarder/ForwardedIndexChangeHandlerTest.java
@@ -37,7 +37,6 @@
import dev.failsafe.FailsafeExecutor;
import java.io.IOException;
import java.time.Duration;
-import java.time.Instant;
import java.util.Optional;
import java.util.concurrent.ExecutionException;
import org.junit.Before;
@@ -74,8 +73,6 @@
@Before
public void setUp() throws Exception {
id = Change.id(TEST_CHANGE_NUMBER);
- Change change = new Change(null, id, null, null, Instant.now());
- when(changeNotes.getChange()).thenReturn(change);
when(configMock.index().threadPoolSize()).thenReturn(4);
when(configMock.index().maxTries()).thenReturn(3);
when(configMock.index().retryInterval()).thenReturn(Duration.ofMillis(10));
@@ -90,14 +87,14 @@
public void changeIsIndexedWhenUpToDate() throws Exception {
setupChangeAccessRelatedMocks(CHANGE_EXISTS, CHANGE_UP_TO_DATE);
handler.index(TEST_CHANGE_ID, Operation.INDEX, Optional.empty()).get(10, SECONDS);
- verify(indexerMock, times(1)).index(any(Change.class));
+ verify(indexerMock, times(1)).index(any(ChangeNotes.class));
}
@Test
public void changeIsStillIndexedEvenWhenOutdated() throws Exception {
setupChangeAccessRelatedMocks(CHANGE_EXISTS, CHANGE_OUTDATED);
handler.index(TEST_CHANGE_ID, Operation.INDEX, Optional.of(new IndexEvent())).get(10, SECONDS);
- verify(indexerMock, atLeast(1)).index(any(Change.class));
+ verify(indexerMock, atLeast(1)).index(any(ChangeNotes.class));
}
@Test
@@ -125,13 +122,13 @@
return null;
})
.when(indexerMock)
- .index(any(Change.class));
+ .index(any(ChangeNotes.class));
assertThat(Context.isForwardedEvent()).isFalse();
handler.index(TEST_CHANGE_ID, Operation.INDEX, Optional.empty()).get(10, SECONDS);
assertThat(Context.isForwardedEvent()).isFalse();
- verify(indexerMock, times(1)).index(any(Change.class));
+ verify(indexerMock, times(1)).index(any(ChangeNotes.class));
}
@Test
@@ -144,7 +141,7 @@
throw new IOException("someMessage");
})
.when(indexerMock)
- .index(any(Change.class));
+ .index(any(ChangeNotes.class));
assertThat(Context.isForwardedEvent()).isFalse();
ExecutionException thrown =
@@ -155,7 +152,7 @@
assertThat(thrown.getCause()).hasMessageThat().isEqualTo("someMessage");
assertThat(Context.isForwardedEvent()).isFalse();
- verify(indexerMock, times(1)).index(any(Change.class));
+ verify(indexerMock, times(1)).index(any(ChangeNotes.class));
}
private void setupChangeAccessRelatedMocks(boolean changeExists, boolean changeIsUpToDate)