smengcl commented on code in PR #5236:
URL: https://github.com/apache/ozone/pull/5236#discussion_r1320175210
##########
hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdiff/RocksDBCheckpointDiffer.java:
##########
@@ -555,38 +567,9 @@ public void onCompactionCompleted(RocksDB db,
.append('\n');
}
- // Mark the beginning of a compaction log
- sb.append(COMPACTION_LOG_ENTRY_LINE_PREFIX);
- sb.append(db.getLatestSequenceNumber());
- sb.append(SPACE_DELIMITER);
-
- // Trim DB path, only keep the SST file name
- final int filenameOffset =
- compactionJobInfo.inputFiles().get(0).lastIndexOf("/") + 1;
-
- // Append the list of input files
- final List<String> inputFiles = compactionJobInfo.inputFiles();
- // Trim the file path, leave only the SST file name without extension
- inputFiles.replaceAll(s -> s.substring(
- filenameOffset, s.length() - SST_FILE_EXTENSION_LENGTH));
- final String inputFilesJoined =
- String.join(COMPACTION_LOG_ENTRY_FILE_DELIMITER, inputFiles);
- sb.append(inputFilesJoined);
-
- // Insert delimiter between input files and output files
- sb.append(COMPACTION_LOG_ENTRY_INPUT_OUTPUT_FILES_DELIMITER);
-
- // Append the list of output files
- final List<String> outputFiles = compactionJobInfo.outputFiles();
- outputFiles.replaceAll(s -> s.substring(
- filenameOffset, s.length() - SST_FILE_EXTENSION_LENGTH));
- final String outputFilesJoined =
- String.join(COMPACTION_LOG_ENTRY_FILE_DELIMITER, outputFiles);
- sb.append(outputFilesJoined);
-
- // End of line
+ sb.append(COMPACTION_LOG_ENTRY_LINE_PREFIX_V1);
+ sb.append(compactionLogEntry.toEncodedString());
sb.append('\n');
Review Comment:
You can either migrate old compaction log to the new layout (and delete old
logs after migration), or just wipe out old logs on upgrade. So when downgraded
it won't have any compaction log entries.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]