vldpyatkov commented on code in PR #2475: URL: https://github.com/apache/ignite-3/pull/2475#discussion_r1303943081
########## modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/ItRaftCommandLeftInLogUntilRestartTest.java: ########## @@ -294,6 +305,44 @@ private void checkData(IgniteImpl ignite, Object[][] dataSet) { new RuntimeException(IgniteStringFormatter.format("Cannot check a row {}", row), e); } } + + transferLeadershipToLocalNode(ignite); + + for (Object[] row : dataSet) { + try { + Tuple txTuple = table.keyValueView().get(null, Tuple.create().set("ID", row[0])); + + assertNotNull(txTuple); + + assertEquals(row[1], txTuple.value("NAME")); + assertEquals(row[2], txTuple.value("SALARY")); + } catch (Exception e) { + new RuntimeException(IgniteStringFormatter.format("Cannot check a row {} when the local node leader", row), e); + } + } + } + + /** + * Transfers the leader to the local node related to the Ignite instance. + * + * @param ignite Ignite instance. + */ + private static void transferLeadershipToLocalNode(IgniteImpl ignite) { + TableImpl table = (TableImpl) ignite.tables().table(DEFAULT_TABLE_NAME); + + RaftGroupService raftGroupService = table.internalTable().partitionRaftGroupService(0); + + List<Peer> peers = raftGroupService.peers(); + assertNotNull(peers); + + Peer leader = raftGroupService.leader(); + assertNotNull(leader); + + Peer localPeer = peers.stream().filter(peer -> peer.consistentId().equals(ignite.name())).findFirst().get(); + + log.info("Leader is transferring [from={}, to={}]", leader, localPeer); + + raftGroupService.transferLeadership(localPeer).join(); Review Comment: Fixed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@ignite.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org