6969
7070#ifdef SSD_ROCKSDB_EXPERIMENTAL
7171
72- // Enforcing rocksdb version to be 7.7.3.
73- static_assert ((ROCKSDB_MAJOR == 7 && ROCKSDB_MINOR == 7 && ROCKSDB_PATCH == 3 ),
74- " Unsupported rocksdb version. Update the rocksdb to 7.7.3 version" );
72+ // Enforcing rocksdb version to be 7.10.2
73+ static_assert ((ROCKSDB_MAJOR == 7 && ROCKSDB_MINOR == 10 && ROCKSDB_PATCH == 2 ),
74+ " Unsupported rocksdb version. Update the rocksdb to 7.10.2 version" );
7575
7676namespace {
7777using rocksdb::BackgroundErrorReason;
@@ -360,10 +360,14 @@ rocksdb::ExportImportFilesMetaData getMetaData(const CheckpointMetaData& checkpo
360360
361361 for (const LiveFileMetaData& fileMetaData : rocksCF.sstFiles ) {
362362 rocksdb::LiveFileMetaData liveFileMetaData;
363- liveFileMetaData.size = fileMetaData.size ;
364- liveFileMetaData.name = fileMetaData.name ;
363+ liveFileMetaData.relative_filename = fileMetaData.relative_filename ;
364+ liveFileMetaData.directory = fileMetaData.directory ;
365365 liveFileMetaData.file_number = fileMetaData.file_number ;
366- liveFileMetaData.db_path = fileMetaData.db_path ;
366+ liveFileMetaData.file_type = static_cast <rocksdb::FileType>(fileMetaData.file_type );
367+ liveFileMetaData.size = fileMetaData.size ;
368+ liveFileMetaData.temperature = static_cast <rocksdb::Temperature>(fileMetaData.temperature );
369+ liveFileMetaData.file_checksum = fileMetaData.file_checksum ;
370+ liveFileMetaData.file_checksum_func_name = fileMetaData.file_checksum_func_name ;
367371 liveFileMetaData.smallest_seqno = fileMetaData.smallest_seqno ;
368372 liveFileMetaData.largest_seqno = fileMetaData.largest_seqno ;
369373 liveFileMetaData.smallestkey = fileMetaData.smallestkey ;
@@ -372,12 +376,12 @@ rocksdb::ExportImportFilesMetaData getMetaData(const CheckpointMetaData& checkpo
372376 liveFileMetaData.being_compacted = fileMetaData.being_compacted ;
373377 liveFileMetaData.num_entries = fileMetaData.num_entries ;
374378 liveFileMetaData.num_deletions = fileMetaData.num_deletions ;
375- liveFileMetaData.temperature = static_cast <rocksdb::Temperature>(fileMetaData.temperature );
376379 liveFileMetaData.oldest_blob_file_number = fileMetaData.oldest_blob_file_number ;
377380 liveFileMetaData.oldest_ancester_time = fileMetaData.oldest_ancester_time ;
378381 liveFileMetaData.file_creation_time = fileMetaData.file_creation_time ;
379- liveFileMetaData.file_checksum = fileMetaData.file_checksum ;
380- liveFileMetaData.file_checksum_func_name = fileMetaData.file_checksum_func_name ;
382+ liveFileMetaData.epoch_number = fileMetaData.epoch_number ;
383+ liveFileMetaData.name = fileMetaData.name ;
384+ liveFileMetaData.db_path = fileMetaData.db_path ;
381385 liveFileMetaData.column_family_name = fileMetaData.column_family_name ;
382386 liveFileMetaData.level = fileMetaData.level ;
383387 metaData.files .push_back (liveFileMetaData);
@@ -391,10 +395,14 @@ void populateMetaData(CheckpointMetaData* checkpoint, const rocksdb::ExportImpor
391395 rocksCF.dbComparatorName = metaData.db_comparator_name ;
392396 for (const rocksdb::LiveFileMetaData& fileMetaData : metaData.files ) {
393397 LiveFileMetaData liveFileMetaData;
394- liveFileMetaData.size = fileMetaData.size ;
395- liveFileMetaData.name = fileMetaData.name ;
398+ liveFileMetaData.relative_filename = fileMetaData.relative_filename ;
399+ liveFileMetaData.directory = fileMetaData.directory ;
396400 liveFileMetaData.file_number = fileMetaData.file_number ;
397- liveFileMetaData.db_path = fileMetaData.db_path ;
401+ liveFileMetaData.file_type = static_cast <int >(fileMetaData.file_type );
402+ liveFileMetaData.size = fileMetaData.size ;
403+ liveFileMetaData.temperature = static_cast <uint8_t >(fileMetaData.temperature );
404+ liveFileMetaData.file_checksum = fileMetaData.file_checksum ;
405+ liveFileMetaData.file_checksum_func_name = fileMetaData.file_checksum_func_name ;
398406 liveFileMetaData.smallest_seqno = fileMetaData.smallest_seqno ;
399407 liveFileMetaData.largest_seqno = fileMetaData.largest_seqno ;
400408 liveFileMetaData.smallestkey = fileMetaData.smallestkey ;
@@ -403,12 +411,12 @@ void populateMetaData(CheckpointMetaData* checkpoint, const rocksdb::ExportImpor
403411 liveFileMetaData.being_compacted = fileMetaData.being_compacted ;
404412 liveFileMetaData.num_entries = fileMetaData.num_entries ;
405413 liveFileMetaData.num_deletions = fileMetaData.num_deletions ;
406- liveFileMetaData.temperature = static_cast <uint8_t >(fileMetaData.temperature );
407414 liveFileMetaData.oldest_blob_file_number = fileMetaData.oldest_blob_file_number ;
408415 liveFileMetaData.oldest_ancester_time = fileMetaData.oldest_ancester_time ;
409416 liveFileMetaData.file_creation_time = fileMetaData.file_creation_time ;
410- liveFileMetaData.file_checksum = fileMetaData.file_checksum ;
411- liveFileMetaData.file_checksum_func_name = fileMetaData.file_checksum_func_name ;
417+ liveFileMetaData.epoch_number = fileMetaData.epoch_number ;
418+ liveFileMetaData.name = fileMetaData.name ;
419+ liveFileMetaData.db_path = fileMetaData.db_path ;
412420 liveFileMetaData.column_family_name = fileMetaData.column_family_name ;
413421 liveFileMetaData.level = fileMetaData.level ;
414422 rocksCF.sstFiles .push_back (liveFileMetaData);
@@ -2714,6 +2722,14 @@ TEST_CASE("noSim/fdbserver/KeyValueStoreRocksDB/CheckpointRestoreKeyValues") {
27142722 return Void ();
27152723}
27162724
2725+ TEST_CASE (" noSim/fdbserver/KeyValueStoreRocksDB/RocksDBTypes" ) {
2726+ // If the following assertion fails, update SstFileMetaData and LiveFileMetaData in RocksDBCheckpointUtils.actor.h
2727+ // to be the same as rocksdb::SstFileMetaData and rocksdb::LiveFileMetaData.
2728+ ASSERT_EQ (sizeof (rocksdb::LiveFileMetaData), 192 );
2729+ ASSERT_EQ (sizeof (rocksdb::ExportImportFilesMetaData), 32 );
2730+ return Void ();
2731+ }
2732+
27172733} // namespace
27182734
27192735#endif // SSD_ROCKSDB_EXPERIMENTAL
0 commit comments