Skip to content

Commit 80cacc6

Browse files
authored
Enable operation-based recoveries for old copies (#51380)
We accidentally disabled operation-based recoveries for indices with soft-deletes created before 7.6 in #51189. Relates #51189 Closes #51274
1 parent a25f922 commit 80cacc6

File tree

2 files changed

+1
-2
lines changed

2 files changed

+1
-2
lines changed

qa/full-cluster-restart/src/test/java/org/elasticsearch/upgrades/FullClusterRestartIT.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1265,7 +1265,6 @@ public void testPeerRecoveryRetentionLeases() throws IOException {
12651265
* before we restart the cluster. This is important when we move from translog based to retention leases based
12661266
* peer recoveries.
12671267
*/
1268-
@AwaitsFix(bugUrl = "https://github.com/elastic/elasticsearch/issues/51274")
12691268
public void testOperationBasedRecovery() throws Exception {
12701269
if (isRunningAgainstOldCluster()) {
12711270
Settings.Builder settings = Settings.builder().put(IndexMetaData.SETTING_NUMBER_OF_SHARDS, 1)

server/src/main/java/org/elasticsearch/indices/recovery/RecoverySourceHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ public void recoverToTarget(ActionListener<RecoveryResponse> listener) {
175175
= request.startingSeqNo() != SequenceNumbers.UNASSIGNED_SEQ_NO
176176
&& isTargetSameHistory()
177177
&& shard.hasCompleteHistoryOperations("peer-recovery", request.startingSeqNo())
178-
&& ((retentionLeaseRef.get() == null && (shard.indexSettings().isSoftDeleteEnabled() == false)) ||
178+
&& ((retentionLeaseRef.get() == null && shard.useRetentionLeasesInPeerRecovery() == false) ||
179179
(retentionLeaseRef.get() != null && retentionLeaseRef.get().retainingSequenceNumber() <= request.startingSeqNo()));
180180
// NB check hasCompleteHistoryOperations when computing isSequenceNumberBasedRecovery, even if there is a retention lease,
181181
// because when doing a rolling upgrade from earlier than 7.4 we may create some leases that are initially unsatisfied. It's

0 commit comments

Comments
 (0)