Skip to content

Commit 6e9ab1a

Browse files
Reveal hook to assume meta file validity on restore. This speeds restores when meta files are large and known to be valid. A more-correct solution of using the BackupStatusMgr is forthcoming. (#1085)
1 parent 3ad7dba commit 6e9ab1a

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

priam/src/main/java/com/netflix/priam/backupv2/MetaV2Proxy.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public class MetaV2Proxy implements IMetaProxy {
4343
private final Path metaFileDirectory;
4444
private final IBackupFileSystem fs;
4545
private final Provider<AbstractBackupPath> abstractBackupPathProvider;
46+
private final IConfiguration config;
4647

4748
@Inject
4849
public MetaV2Proxy(
@@ -52,6 +53,7 @@ public MetaV2Proxy(
5253
fs = backupFileSystemCtx.getFileStrategy(configuration);
5354
this.abstractBackupPathProvider = abstractBackupPathProvider;
5455
metaFileDirectory = Paths.get(configuration.getDataFileLocation());
56+
this.config = configuration;
5557
}
5658

5759
@Override
@@ -196,7 +198,9 @@ public BackupVerificationResult isMetaFileValid(AbstractBackupPath metaBackupPat
196198
metaFile = downloadMetaFile(metaBackupPath);
197199
result.manifestAvailable = true;
198200

199-
metaFileBackupValidator.readMeta(metaFile);
201+
if (!config.skipMetaFileValidationOnRestore()) {
202+
metaFileBackupValidator.readMeta(metaFile);
203+
}
200204
result.valid = (result.filesInMetaOnly.isEmpty());
201205
} catch (FileNotFoundException fne) {
202206
logger.error(fne.getLocalizedMessage());

priam/src/main/java/com/netflix/priam/config/IConfiguration.java

+4
Original file line numberDiff line numberDiff line change
@@ -1183,4 +1183,8 @@ default int getBlockForPeersTimeoutInSecs() {
11831183
* @return The result for the property, or the defaultValue if provided (null otherwise)
11841184
*/
11851185
String getProperty(String key, String defaultValue);
1186+
1187+
default boolean skipMetaFileValidationOnRestore() {
1188+
return false;
1189+
}
11861190
}

0 commit comments

Comments
 (0)