|
50 | 50 | import org.opensearch.index.mapper.MapperService;
|
51 | 51 | import org.opensearch.index.snapshots.IndexShardSnapshotStatus;
|
52 | 52 | import org.opensearch.index.snapshots.blobstore.RemoteStoreShardShallowCopySnapshot;
|
| 53 | +import org.opensearch.index.store.RemoteSegmentStoreDirectoryFactory; |
53 | 54 | import org.opensearch.index.store.Store;
|
54 | 55 | import org.opensearch.index.store.lockmanager.RemoteStoreLockManagerFactory;
|
55 | 56 | import org.opensearch.indices.recovery.RecoveryState;
|
| 57 | +import org.opensearch.node.remotestore.RemoteStorePinnedTimestampService; |
56 | 58 | import org.opensearch.snapshots.SnapshotId;
|
57 | 59 | import org.opensearch.snapshots.SnapshotInfo;
|
58 | 60 |
|
@@ -207,11 +209,59 @@ void deleteSnapshots(
|
207 | 209 | /**
|
208 | 210 | * Deletes snapshots and releases respective lock files from remote store repository.
|
209 | 211 | *
|
210 |
| - * @param snapshotIds snapshot ids |
211 |
| - * @param repositoryStateId the unique id identifying the state of the repository when the snapshot deletion began |
212 |
| - * @param repositoryMetaVersion version of the updated repository metadata to write |
213 |
| - * @param remoteStoreLockManagerFactory RemoteStoreLockManagerFactory to be used for cleaning up remote store lock files |
214 |
| - * @param listener completion listener |
| 212 | + * @param snapshotIds snapshot ids |
| 213 | + * @param repositoryStateId the unique id identifying the state of the repository when the snapshot deletion began |
| 214 | + * @param repositoryMetaVersion version of the updated repository metadata to write |
| 215 | + * @param remoteStoreLockManagerFactory RemoteStoreLockManagerFactory to be used for cleaning up remote store lock files |
| 216 | + * @param remoteSegmentStoreDirectoryFactory RemoteSegmentStoreDirectoryFactory to be used for cleaning up remote store segment files |
| 217 | + * @param remoteStorePinnedTimestampService service for pinning and unpinning of the timestamp |
| 218 | + * @param snapshotIdsPinnedTimestampMap map of snapshots ids and the pinned timestamp |
| 219 | + * @param isShallowSnapshotV2 true for shallow snapshots v2 |
| 220 | + * @param listener completion listener |
| 221 | + */ |
| 222 | + default void deleteSnapshotsInternal( |
| 223 | + Collection<SnapshotId> snapshotIds, |
| 224 | + long repositoryStateId, |
| 225 | + Version repositoryMetaVersion, |
| 226 | + RemoteStoreLockManagerFactory remoteStoreLockManagerFactory, |
| 227 | + RemoteSegmentStoreDirectoryFactory remoteSegmentStoreDirectoryFactory, |
| 228 | + RemoteStorePinnedTimestampService remoteStorePinnedTimestampService, |
| 229 | + Map<SnapshotId, Long> snapshotIdsPinnedTimestampMap, |
| 230 | + boolean isShallowSnapshotV2, |
| 231 | + ActionListener<RepositoryData> listener |
| 232 | + ) { |
| 233 | + throw new UnsupportedOperationException(); |
| 234 | + } |
| 235 | + |
| 236 | + /** |
| 237 | + * Deletes snapshots and unpin the snapshot timestamp using remoteStorePinnedTimestampService |
| 238 | + * |
| 239 | + * @param snapshotsWithPinnedTimestamp map of snapshot ids and the pinned timestamps |
| 240 | + * @param repositoryStateId the unique id identifying the state of the repository when the snapshot deletion began |
| 241 | + * @param repositoryMetaVersion version of the updated repository metadata to write |
| 242 | + * @param remoteSegmentStoreDirectoryFactory RemoteSegmentStoreDirectoryFactory to be used for cleaning up remote store segment files |
| 243 | + * @param remoteStorePinnedTimestampService service for pinning and unpinning of the timestamp |
| 244 | + * @param listener completion listener |
| 245 | + */ |
| 246 | + default void deleteSnapshotsWithPinnedTimestamp( |
| 247 | + Map<SnapshotId, Long> snapshotsWithPinnedTimestamp, |
| 248 | + long repositoryStateId, |
| 249 | + Version repositoryMetaVersion, |
| 250 | + RemoteSegmentStoreDirectoryFactory remoteSegmentStoreDirectoryFactory, |
| 251 | + RemoteStorePinnedTimestampService remoteStorePinnedTimestampService, |
| 252 | + ActionListener<RepositoryData> listener |
| 253 | + ) { |
| 254 | + throw new UnsupportedOperationException(); |
| 255 | + } |
| 256 | + |
| 257 | + /** |
| 258 | + * Deletes snapshots and releases respective lock files from remote store repository |
| 259 | + * |
| 260 | + * @param snapshotIds |
| 261 | + * @param repositoryStateId |
| 262 | + * @param repositoryMetaVersion |
| 263 | + * @param remoteStoreLockManagerFactory |
| 264 | + * @param listener |
215 | 265 | */
|
216 | 266 | default void deleteSnapshotsAndReleaseLockFiles(
|
217 | 267 | Collection<SnapshotId> snapshotIds,
|
|
0 commit comments