Skip to content

Commit

Permalink
Ensure index commit released when testing timeouts (#39273)
Browse files Browse the repository at this point in the history
This fixes #39245. Currently it is possible in this test that the clear
session call times-out. This means that the index commit will not be
released and there will be an assertion triggered in the test teardown.
This commit ensures that we wipe the leader index in the test to avoid
this assertion.

It is okay if the clear session call times-out in normal usage. This
scenario is unavoidable due to potential network issues. We have a local
timeout on the leader to clean it up when this scenario happens.
  • Loading branch information
Tim-Brooks authored Feb 22, 2019
1 parent a745b36 commit cb9dc28
Showing 1 changed file with 5 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,11 @@ public void testIndividualActionsTimeout() throws Exception {
settingsRequest.persistentSettings(Settings.builder().put(CcrSettings.INDICES_RECOVERY_ACTION_TIMEOUT_SETTING.getKey(),
defaultValue));
assertAcked(followerClient().admin().cluster().updateSettings(settingsRequest).actionGet());
// This test sets individual action timeouts low to attempt to replicated timeouts. Although the
// clear session action is not blocked, it is possible that it will still occasionally timeout.
// By wiping the leader index here, we ensure we do not trigger the index commit hanging around
// assertion because the commit is released when the index shard is closed.
getLeaderCluster().wipeIndices(leaderIndex);
}
}

Expand Down

0 comments on commit cb9dc28

Please sign in to comment.