@nxtedition/rocksdb 8.1.3 → 8.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/deps/rocksdb/rocksdb/CMakeLists.txt +0 -9
  2. package/deps/rocksdb/rocksdb/Makefile +1 -13
  3. package/deps/rocksdb/rocksdb/TARGETS +0 -4
  4. package/deps/rocksdb/rocksdb/db/blob/blob_counting_iterator.h +0 -11
  5. package/deps/rocksdb/rocksdb/db/builder.cc +4 -13
  6. package/deps/rocksdb/rocksdb/db/builder.h +1 -2
  7. package/deps/rocksdb/rocksdb/db/c.cc +0 -15
  8. package/deps/rocksdb/rocksdb/db/c_test.c +0 -3
  9. package/deps/rocksdb/rocksdb/db/column_family.cc +5 -11
  10. package/deps/rocksdb/rocksdb/db/column_family.h +0 -20
  11. package/deps/rocksdb/rocksdb/db/compaction/clipping_iterator.h +0 -5
  12. package/deps/rocksdb/rocksdb/db/compaction/compaction.cc +37 -31
  13. package/deps/rocksdb/rocksdb/db/compaction/compaction.h +0 -5
  14. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.cc +7 -24
  15. package/deps/rocksdb/rocksdb/db/compaction/compaction_iterator.h +1 -17
  16. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.cc +1 -4
  17. package/deps/rocksdb/rocksdb/db/compaction/compaction_job.h +2 -4
  18. package/deps/rocksdb/rocksdb/db/compaction/compaction_job_test.cc +6 -9
  19. package/deps/rocksdb/rocksdb/db/compaction/compaction_outputs.cc +26 -104
  20. package/deps/rocksdb/rocksdb/db/compaction/compaction_outputs.h +0 -5
  21. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.cc +18 -11
  22. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker.h +16 -17
  23. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.cc +6 -19
  24. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_fifo.h +5 -5
  25. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.cc +22 -22
  26. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_level.h +5 -5
  27. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_test.cc +52 -81
  28. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.cc +1 -5
  29. package/deps/rocksdb/rocksdb/db/compaction/compaction_picker_universal.h +5 -5
  30. package/deps/rocksdb/rocksdb/db/compaction/compaction_service_job.cc +2 -8
  31. package/deps/rocksdb/rocksdb/db/compaction/subcompaction_state.h +0 -8
  32. package/deps/rocksdb/rocksdb/db/compaction/tiered_compaction_test.cc +138 -266
  33. package/deps/rocksdb/rocksdb/db/corruption_test.cc +1 -86
  34. package/deps/rocksdb/rocksdb/db/db_bloom_filter_test.cc +3 -2
  35. package/deps/rocksdb/rocksdb/db/db_compaction_test.cc +123 -897
  36. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.cc +20 -31
  37. package/deps/rocksdb/rocksdb/db/db_impl/db_impl.h +9 -5
  38. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_compaction_flush.cc +28 -121
  39. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_debug.cc +1 -1
  40. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_experimental.cc +2 -3
  41. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_files.cc +0 -3
  42. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_open.cc +4 -8
  43. package/deps/rocksdb/rocksdb/db/db_impl/db_impl_write.cc +0 -10
  44. package/deps/rocksdb/rocksdb/db/db_range_del_test.cc +4 -325
  45. package/deps/rocksdb/rocksdb/db/db_test.cc +0 -3
  46. package/deps/rocksdb/rocksdb/db/db_test2.cc +8 -233
  47. package/deps/rocksdb/rocksdb/db/db_test_util.h +0 -3
  48. package/deps/rocksdb/rocksdb/db/db_wal_test.cc +0 -129
  49. package/deps/rocksdb/rocksdb/db/db_with_timestamp_compaction_test.cc +0 -21
  50. package/deps/rocksdb/rocksdb/db/dbformat.cc +0 -25
  51. package/deps/rocksdb/rocksdb/db/dbformat.h +0 -2
  52. package/deps/rocksdb/rocksdb/db/experimental.cc +2 -3
  53. package/deps/rocksdb/rocksdb/db/external_sst_file_basic_test.cc +0 -3
  54. package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.cc +13 -92
  55. package/deps/rocksdb/rocksdb/db/external_sst_file_ingestion_job.h +1 -38
  56. package/deps/rocksdb/rocksdb/db/external_sst_file_test.cc +110 -14
  57. package/deps/rocksdb/rocksdb/db/flush_job.cc +4 -6
  58. package/deps/rocksdb/rocksdb/db/history_trimming_iterator.h +0 -4
  59. package/deps/rocksdb/rocksdb/db/import_column_family_job.cc +53 -56
  60. package/deps/rocksdb/rocksdb/db/import_column_family_test.cc +4 -3
  61. package/deps/rocksdb/rocksdb/db/memtable.cc +1 -1
  62. package/deps/rocksdb/rocksdb/db/merge_helper.cc +0 -4
  63. package/deps/rocksdb/rocksdb/db/periodic_task_scheduler_test.cc +10 -10
  64. package/deps/rocksdb/rocksdb/db/range_tombstone_fragmenter_test.cc +1 -1
  65. package/deps/rocksdb/rocksdb/db/repair.cc +22 -65
  66. package/deps/rocksdb/rocksdb/db/repair_test.cc +0 -54
  67. package/deps/rocksdb/rocksdb/db/seqno_time_test.cc +26 -26
  68. package/deps/rocksdb/rocksdb/db/table_properties_collector.h +1 -3
  69. package/deps/rocksdb/rocksdb/db/version_builder.cc +43 -90
  70. package/deps/rocksdb/rocksdb/db/version_builder.h +0 -20
  71. package/deps/rocksdb/rocksdb/db/version_builder_test.cc +93 -218
  72. package/deps/rocksdb/rocksdb/db/version_edit.cc +1 -27
  73. package/deps/rocksdb/rocksdb/db/version_edit.h +9 -33
  74. package/deps/rocksdb/rocksdb/db/version_edit_handler.cc +6 -13
  75. package/deps/rocksdb/rocksdb/db/version_edit_handler.h +6 -17
  76. package/deps/rocksdb/rocksdb/db/version_edit_test.cc +17 -19
  77. package/deps/rocksdb/rocksdb/db/version_set.cc +26 -166
  78. package/deps/rocksdb/rocksdb/db/version_set.h +2 -32
  79. package/deps/rocksdb/rocksdb/db/version_set_test.cc +31 -65
  80. package/deps/rocksdb/rocksdb/db/write_thread.cc +2 -5
  81. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_common.h +0 -1
  82. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_driver.cc +32 -31
  83. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_driver.h +1 -2
  84. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_env_wrapper.h +6 -8
  85. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_gflags.cc +0 -4
  86. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_test_base.cc +4 -11
  87. package/deps/rocksdb/rocksdb/db_stress_tool/db_stress_tool.cc +15 -16
  88. package/deps/rocksdb/rocksdb/db_stress_tool/no_batched_ops_stress.cc +1 -13
  89. package/deps/rocksdb/rocksdb/file/prefetch_test.cc +75 -0
  90. package/deps/rocksdb/rocksdb/include/rocksdb/c.h +0 -8
  91. package/deps/rocksdb/rocksdb/include/rocksdb/db.h +0 -6
  92. package/deps/rocksdb/rocksdb/include/rocksdb/listener.h +1 -7
  93. package/deps/rocksdb/rocksdb/include/rocksdb/metadata.h +3 -9
  94. package/deps/rocksdb/rocksdb/include/rocksdb/options.h +1 -2
  95. package/deps/rocksdb/rocksdb/include/rocksdb/status.h +0 -3
  96. package/deps/rocksdb/rocksdb/include/rocksdb/utilities/backup_engine.h +9 -69
  97. package/deps/rocksdb/rocksdb/include/rocksdb/version.h +2 -2
  98. package/deps/rocksdb/rocksdb/memory/arena.cc +87 -23
  99. package/deps/rocksdb/rocksdb/memory/arena.h +31 -25
  100. package/deps/rocksdb/rocksdb/memory/arena_test.cc +0 -90
  101. package/deps/rocksdb/rocksdb/monitoring/stats_history_test.cc +26 -26
  102. package/deps/rocksdb/rocksdb/src.mk +0 -2
  103. package/deps/rocksdb/rocksdb/table/adaptive/adaptive_table_factory.cc +2 -3
  104. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader.cc +2 -3
  105. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_impl.h +2 -6
  106. package/deps/rocksdb/rocksdb/table/block_based/block_based_table_reader_test.cc +1 -1
  107. package/deps/rocksdb/rocksdb/table/block_fetcher_test.cc +3 -3
  108. package/deps/rocksdb/rocksdb/table/format.cc +20 -24
  109. package/deps/rocksdb/rocksdb/table/format.h +2 -5
  110. package/deps/rocksdb/rocksdb/table/merging_iterator.cc +105 -54
  111. package/deps/rocksdb/rocksdb/table/merging_iterator.h +0 -80
  112. package/deps/rocksdb/rocksdb/table/meta_blocks.cc +2 -2
  113. package/deps/rocksdb/rocksdb/table/sst_file_dumper.cc +1 -1
  114. package/deps/rocksdb/rocksdb/table/table_test.cc +6 -7
  115. package/deps/rocksdb/rocksdb/test_util/testutil.h +0 -10
  116. package/deps/rocksdb/rocksdb/trace_replay/block_cache_tracer.h +2 -2
  117. package/deps/rocksdb/rocksdb/util/bloom_test.cc +1 -1
  118. package/deps/rocksdb/rocksdb/util/status.cc +0 -7
  119. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine.cc +74 -250
  120. package/deps/rocksdb/rocksdb/utilities/backup/backup_engine_test.cc +4 -199
  121. package/deps/rocksdb/rocksdb/utilities/checkpoint/checkpoint_impl.cc +0 -1
  122. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.cc +0 -39
  123. package/deps/rocksdb/rocksdb/utilities/fault_injection_fs.h +0 -9
  124. package/deps/rocksdb/rocksdb/utilities/transactions/transaction_test.cc +0 -59
  125. package/deps/rocksdb/rocksdb.gyp +0 -3
  126. package/index.js +2 -2
  127. package/package.json +1 -1
  128. package/prebuilds/darwin-arm64/node.napi.node +0 -0
  129. package/prebuilds/linux-x64/node.napi.node +0 -0
  130. package/deps/rocksdb/rocksdb/port/mmap.cc +0 -98
  131. package/deps/rocksdb/rocksdb/port/mmap.h +0 -70
  132. package/deps/rocksdb/rocksdb/table/compaction_merging_iterator.cc +0 -142
  133. package/deps/rocksdb/rocksdb/table/compaction_merging_iterator.h +0 -241
@@ -64,16 +64,15 @@ class VersionBuilderTest : public testing::Test {
64
64
  uint64_t num_entries = 0, uint64_t num_deletions = 0,
65
65
  bool sampled = false, SequenceNumber smallest_seqno = 0,
66
66
  SequenceNumber largest_seqno = 0,
67
- uint64_t oldest_blob_file_number = kInvalidBlobFileNumber,
68
- uint64_t epoch_number = kUnknownEpochNumber) {
67
+ uint64_t oldest_blob_file_number = kInvalidBlobFileNumber) {
69
68
  assert(level < vstorage_.num_levels());
70
69
  FileMetaData* f = new FileMetaData(
71
70
  file_number, path_id, file_size, GetInternalKey(smallest, smallest_seq),
72
71
  GetInternalKey(largest, largest_seq), smallest_seqno, largest_seqno,
73
72
  /* marked_for_compact */ false, Temperature::kUnknown,
74
73
  oldest_blob_file_number, kUnknownOldestAncesterTime,
75
- kUnknownFileCreationTime, epoch_number, kUnknownFileChecksum,
76
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
74
+ kUnknownFileCreationTime, kUnknownFileChecksum,
75
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
77
76
  f->compensated_file_size = file_size;
78
77
  f->num_entries = num_entries;
79
78
  f->num_deletions = num_deletions;
@@ -99,8 +98,7 @@ class VersionBuilderTest : public testing::Test {
99
98
  vstorage_.AddBlobFile(std::move(meta));
100
99
  }
101
100
 
102
- void AddDummyFile(uint64_t table_file_number, uint64_t blob_file_number,
103
- uint64_t epoch_number) {
101
+ void AddDummyFile(uint64_t table_file_number, uint64_t blob_file_number) {
104
102
  constexpr int level = 0;
105
103
  constexpr char smallest[] = "bar";
106
104
  constexpr char largest[] = "foo";
@@ -114,11 +112,11 @@ class VersionBuilderTest : public testing::Test {
114
112
 
115
113
  Add(level, table_file_number, smallest, largest, file_size, path_id,
116
114
  smallest_seq, largest_seq, num_entries, num_deletions, sampled,
117
- smallest_seq, largest_seq, blob_file_number, epoch_number);
115
+ smallest_seq, largest_seq, blob_file_number);
118
116
  }
119
117
 
120
118
  void AddDummyFileToEdit(VersionEdit* edit, uint64_t table_file_number,
121
- uint64_t blob_file_number, uint64_t epoch_number) {
119
+ uint64_t blob_file_number) {
122
120
  assert(edit);
123
121
 
124
122
  constexpr int level = 0;
@@ -130,13 +128,12 @@ class VersionBuilderTest : public testing::Test {
130
128
  constexpr SequenceNumber largest_seqno = 300;
131
129
  constexpr bool marked_for_compaction = false;
132
130
 
133
- edit->AddFile(level, table_file_number, path_id, file_size,
134
- GetInternalKey(smallest), GetInternalKey(largest),
135
- smallest_seqno, largest_seqno, marked_for_compaction,
136
- Temperature::kUnknown, blob_file_number,
137
- kUnknownOldestAncesterTime, kUnknownFileCreationTime,
138
- epoch_number, kUnknownFileChecksum,
139
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
131
+ edit->AddFile(
132
+ level, table_file_number, path_id, file_size, GetInternalKey(smallest),
133
+ GetInternalKey(largest), smallest_seqno, largest_seqno,
134
+ marked_for_compaction, Temperature::kUnknown, blob_file_number,
135
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
136
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
140
137
  }
141
138
 
142
139
  void UpdateVersionStorageInfo(VersionStorageInfo* vstorage) {
@@ -160,13 +157,7 @@ void UnrefFilesInVersion(VersionStorageInfo* new_vstorage) {
160
157
  }
161
158
 
162
159
  TEST_F(VersionBuilderTest, ApplyAndSaveTo) {
163
- Add(0, 1U, "150", "200", 100U, /*path_id*/ 0,
164
- /*smallest_seq*/ 100, /*largest_seq*/ 100,
165
- /*num_entries*/ 0, /*num_deletions*/ 0,
166
- /*sampled*/ false, /*smallest_seqno*/ 0,
167
- /*largest_seqno*/ 0,
168
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
169
- /*epoch_number*/ 1);
160
+ Add(0, 1U, "150", "200", 100U);
170
161
 
171
162
  Add(1, 66U, "150", "200", 100U);
172
163
  Add(1, 88U, "201", "300", 100U);
@@ -186,8 +177,8 @@ TEST_F(VersionBuilderTest, ApplyAndSaveTo) {
186
177
  version_edit.AddFile(
187
178
  2, 666, 0, 100U, GetInternalKey("301"), GetInternalKey("350"), 200, 200,
188
179
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
189
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
190
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
180
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
181
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
191
182
  version_edit.DeleteFile(3, 27U);
192
183
 
193
184
  EnvOptions env_options;
@@ -213,12 +204,8 @@ TEST_F(VersionBuilderTest, ApplyAndSaveTo) {
213
204
  TEST_F(VersionBuilderTest, ApplyAndSaveToDynamic) {
214
205
  ioptions_.level_compaction_dynamic_level_bytes = true;
215
206
 
216
- Add(0, 1U, "150", "200", 100U, 0, 200U, 200U, 0, 0, false, 200U, 200U,
217
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
218
- /*epoch_number*/ 2);
219
- Add(0, 88U, "201", "300", 100U, 0, 100U, 100U, 0, 0, false, 100U, 100U,
220
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
221
- /*epoch_number*/ 1);
207
+ Add(0, 1U, "150", "200", 100U, 0, 200U, 200U, 0, 0, false, 200U, 200U);
208
+ Add(0, 88U, "201", "300", 100U, 0, 100U, 100U, 0, 0, false, 100U, 100U);
222
209
 
223
210
  Add(4, 6U, "150", "179", 100U);
224
211
  Add(4, 7U, "180", "220", 100U);
@@ -233,9 +220,8 @@ TEST_F(VersionBuilderTest, ApplyAndSaveToDynamic) {
233
220
  version_edit.AddFile(
234
221
  3, 666, 0, 100U, GetInternalKey("301"), GetInternalKey("350"), 200, 200,
235
222
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
236
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
237
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
238
-
223
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
224
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
239
225
  version_edit.DeleteFile(0, 1U);
240
226
  version_edit.DeleteFile(0, 88U);
241
227
 
@@ -264,12 +250,8 @@ TEST_F(VersionBuilderTest, ApplyAndSaveToDynamic) {
264
250
  TEST_F(VersionBuilderTest, ApplyAndSaveToDynamic2) {
265
251
  ioptions_.level_compaction_dynamic_level_bytes = true;
266
252
 
267
- Add(0, 1U, "150", "200", 100U, 0, 200U, 200U, 0, 0, false, 200U, 200U,
268
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
269
- /*epoch_number*/ 2);
270
- Add(0, 88U, "201", "300", 100U, 0, 100U, 100U, 0, 0, false, 100U, 100U,
271
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
272
- /*epoch_number*/ 1);
253
+ Add(0, 1U, "150", "200", 100U, 0, 200U, 200U, 0, 0, false, 200U, 200U);
254
+ Add(0, 88U, "201", "300", 100U, 0, 100U, 100U, 0, 0, false, 100U, 100U);
273
255
 
274
256
  Add(4, 6U, "150", "179", 100U);
275
257
  Add(4, 7U, "180", "220", 100U);
@@ -284,8 +266,8 @@ TEST_F(VersionBuilderTest, ApplyAndSaveToDynamic2) {
284
266
  version_edit.AddFile(
285
267
  4, 666, 0, 100U, GetInternalKey("301"), GetInternalKey("350"), 200, 200,
286
268
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
287
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
288
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
269
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
270
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
289
271
  version_edit.DeleteFile(0, 1U);
290
272
  version_edit.DeleteFile(0, 88U);
291
273
  version_edit.DeleteFile(4, 6U);
@@ -320,28 +302,28 @@ TEST_F(VersionBuilderTest, ApplyMultipleAndSaveTo) {
320
302
  version_edit.AddFile(
321
303
  2, 666, 0, 100U, GetInternalKey("301"), GetInternalKey("350"), 200, 200,
322
304
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
323
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
324
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
305
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
306
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
325
307
  version_edit.AddFile(
326
308
  2, 676, 0, 100U, GetInternalKey("401"), GetInternalKey("450"), 200, 200,
327
309
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
328
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
329
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
310
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
311
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
330
312
  version_edit.AddFile(
331
313
  2, 636, 0, 100U, GetInternalKey("601"), GetInternalKey("650"), 200, 200,
332
314
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
333
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
334
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
315
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
316
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
335
317
  version_edit.AddFile(
336
318
  2, 616, 0, 100U, GetInternalKey("501"), GetInternalKey("550"), 200, 200,
337
319
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
338
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
339
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
320
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
321
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
340
322
  version_edit.AddFile(
341
323
  2, 606, 0, 100U, GetInternalKey("701"), GetInternalKey("750"), 200, 200,
342
324
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
343
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
344
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
325
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
326
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
345
327
 
346
328
  EnvOptions env_options;
347
329
  constexpr TableCache* table_cache = nullptr;
@@ -379,43 +361,43 @@ TEST_F(VersionBuilderTest, ApplyDeleteAndSaveTo) {
379
361
  version_edit.AddFile(
380
362
  2, 666, 0, 100U, GetInternalKey("301"), GetInternalKey("350"), 200, 200,
381
363
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
382
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
383
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
364
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
365
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
384
366
  version_edit.AddFile(
385
367
  2, 676, 0, 100U, GetInternalKey("401"), GetInternalKey("450"), 200, 200,
386
368
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
387
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
388
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
369
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
370
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
389
371
  version_edit.AddFile(
390
372
  2, 636, 0, 100U, GetInternalKey("601"), GetInternalKey("650"), 200, 200,
391
373
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
392
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
393
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
374
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
375
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
394
376
  version_edit.AddFile(
395
377
  2, 616, 0, 100U, GetInternalKey("501"), GetInternalKey("550"), 200, 200,
396
378
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
397
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
398
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
379
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
380
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
399
381
  version_edit.AddFile(
400
382
  2, 606, 0, 100U, GetInternalKey("701"), GetInternalKey("750"), 200, 200,
401
383
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
402
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
403
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
384
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
385
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
404
386
  ASSERT_OK(version_builder.Apply(&version_edit));
405
387
 
406
388
  VersionEdit version_edit2;
407
389
  version_edit.AddFile(
408
390
  2, 808, 0, 100U, GetInternalKey("901"), GetInternalKey("950"), 200, 200,
409
391
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
410
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
411
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
392
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
393
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
412
394
  version_edit2.DeleteFile(2, 616);
413
395
  version_edit2.DeleteFile(2, 636);
414
396
  version_edit.AddFile(
415
397
  2, 806, 0, 100U, GetInternalKey("801"), GetInternalKey("850"), 200, 200,
416
398
  false, Temperature::kUnknown, kInvalidBlobFileNumber,
417
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
418
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
399
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
400
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
419
401
 
420
402
  ASSERT_OK(version_builder.Apply(&version_edit2));
421
403
  ASSERT_OK(version_builder.SaveTo(&new_vstorage));
@@ -520,13 +502,13 @@ TEST_F(VersionBuilderTest, ApplyFileDeletionAndAddition) {
520
502
 
521
503
  constexpr bool marked_for_compaction = false;
522
504
 
523
- addition.AddFile(
524
- level, file_number, path_id, file_size,
525
- GetInternalKey(smallest, smallest_seq),
526
- GetInternalKey(largest, largest_seq), smallest_seqno, largest_seqno,
527
- marked_for_compaction, Temperature::kUnknown, kInvalidBlobFileNumber,
528
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
529
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
505
+ addition.AddFile(level, file_number, path_id, file_size,
506
+ GetInternalKey(smallest, smallest_seq),
507
+ GetInternalKey(largest, largest_seq), smallest_seqno,
508
+ largest_seqno, marked_for_compaction, Temperature::kUnknown,
509
+ kInvalidBlobFileNumber, kUnknownOldestAncesterTime,
510
+ kUnknownFileCreationTime, kUnknownFileChecksum,
511
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
530
512
 
531
513
  ASSERT_OK(builder.Apply(&addition));
532
514
 
@@ -574,8 +556,8 @@ TEST_F(VersionBuilderTest, ApplyFileAdditionAlreadyInBase) {
574
556
  new_level, file_number, path_id, file_size, GetInternalKey(smallest),
575
557
  GetInternalKey(largest), smallest_seqno, largest_seqno,
576
558
  marked_for_compaction, Temperature::kUnknown, kInvalidBlobFileNumber,
577
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
578
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
559
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
560
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
579
561
 
580
562
  const Status s = builder.Apply(&edit);
581
563
  ASSERT_TRUE(s.IsCorruption());
@@ -606,12 +588,12 @@ TEST_F(VersionBuilderTest, ApplyFileAdditionAlreadyApplied) {
606
588
  constexpr SequenceNumber largest_seqno = 1000;
607
589
  constexpr bool marked_for_compaction = false;
608
590
 
609
- edit.AddFile(
610
- level, file_number, path_id, file_size, GetInternalKey(smallest),
611
- GetInternalKey(largest), smallest_seqno, largest_seqno,
612
- marked_for_compaction, Temperature::kUnknown, kInvalidBlobFileNumber,
613
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
614
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
591
+ edit.AddFile(level, file_number, path_id, file_size, GetInternalKey(smallest),
592
+ GetInternalKey(largest), smallest_seqno, largest_seqno,
593
+ marked_for_compaction, Temperature::kUnknown,
594
+ kInvalidBlobFileNumber, kUnknownOldestAncesterTime,
595
+ kUnknownFileCreationTime, kUnknownFileChecksum,
596
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
615
597
 
616
598
  ASSERT_OK(builder.Apply(&edit));
617
599
 
@@ -623,8 +605,8 @@ TEST_F(VersionBuilderTest, ApplyFileAdditionAlreadyApplied) {
623
605
  new_level, file_number, path_id, file_size, GetInternalKey(smallest),
624
606
  GetInternalKey(largest), smallest_seqno, largest_seqno,
625
607
  marked_for_compaction, Temperature::kUnknown, kInvalidBlobFileNumber,
626
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
627
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
608
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
609
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
628
610
 
629
611
  const Status s = builder.Apply(&other_edit);
630
612
  ASSERT_TRUE(s.IsCorruption());
@@ -659,8 +641,8 @@ TEST_F(VersionBuilderTest, ApplyFileAdditionAndDeletion) {
659
641
  level, file_number, path_id, file_size, GetInternalKey(smallest),
660
642
  GetInternalKey(largest), smallest_seqno, largest_seqno,
661
643
  marked_for_compaction, Temperature::kUnknown, kInvalidBlobFileNumber,
662
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, kUnknownEpochNumber,
663
- kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
644
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
645
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName, kNullUniqueId64x2);
664
646
 
665
647
  ASSERT_OK(builder.Apply(&addition));
666
648
 
@@ -709,8 +691,7 @@ TEST_F(VersionBuilderTest, ApplyBlobFileAddition) {
709
691
 
710
692
  // Add dummy table file to ensure the blob file is referenced.
711
693
  constexpr uint64_t table_file_number = 1;
712
- AddDummyFileToEdit(&edit, table_file_number, blob_file_number,
713
- 1 /*epoch_number*/);
694
+ AddDummyFileToEdit(&edit, table_file_number, blob_file_number);
714
695
 
715
696
  ASSERT_OK(builder.Apply(&edit));
716
697
 
@@ -832,7 +813,7 @@ TEST_F(VersionBuilderTest, ApplyBlobFileGarbageFileInBase) {
832
813
  ASSERT_NE(meta, nullptr);
833
814
 
834
815
  // Add dummy table file to ensure the blob file is referenced.
835
- AddDummyFile(table_file_number, blob_file_number, 1 /*epoch_number*/);
816
+ AddDummyFile(table_file_number, blob_file_number);
836
817
 
837
818
  UpdateVersionStorageInfo();
838
819
 
@@ -911,8 +892,7 @@ TEST_F(VersionBuilderTest, ApplyBlobFileGarbageFileAdditionApplied) {
911
892
 
912
893
  // Add dummy table file to ensure the blob file is referenced.
913
894
  constexpr uint64_t table_file_number = 1;
914
- AddDummyFileToEdit(&addition, table_file_number, blob_file_number,
915
- 1 /*epoch_number*/);
895
+ AddDummyFileToEdit(&addition, table_file_number, blob_file_number);
916
896
 
917
897
  ASSERT_OK(builder.Apply(&addition));
918
898
 
@@ -1009,8 +989,7 @@ TEST_F(VersionBuilderTest, BlobFileGarbageOverflow) {
1009
989
 
1010
990
  // Add dummy table file to ensure the blob file is referenced.
1011
991
  constexpr uint64_t table_file_number = 1;
1012
- AddDummyFileToEdit(&addition, table_file_number, blob_file_number,
1013
- 1 /*epoch_number*/);
992
+ AddDummyFileToEdit(&addition, table_file_number, blob_file_number);
1014
993
 
1015
994
  ASSERT_OK(builder.Apply(&addition));
1016
995
 
@@ -1071,7 +1050,7 @@ TEST_F(VersionBuilderTest, SaveBlobFilesTo) {
1071
1050
  const uint64_t table_file_number = 2 * i;
1072
1051
  const uint64_t blob_file_number = 2 * i + 1;
1073
1052
 
1074
- AddDummyFile(table_file_number, blob_file_number, i /*epoch_number*/);
1053
+ AddDummyFile(table_file_number, blob_file_number);
1075
1054
  }
1076
1055
 
1077
1056
  UpdateVersionStorageInfo();
@@ -1192,8 +1171,7 @@ TEST_F(VersionBuilderTest, SaveBlobFilesToConcurrentJobs) {
1192
1171
  constexpr uint64_t garbage_blob_count = 0;
1193
1172
  constexpr uint64_t garbage_blob_bytes = 0;
1194
1173
 
1195
- AddDummyFile(base_table_file_number, base_blob_file_number,
1196
- 1 /*epoch_number*/);
1174
+ AddDummyFile(base_table_file_number, base_blob_file_number);
1197
1175
  AddBlob(base_blob_file_number, base_total_blob_count, base_total_blob_bytes,
1198
1176
  checksum_method, checksum_value,
1199
1177
  BlobFileMetaData::LinkedSsts{base_table_file_number},
@@ -1228,12 +1206,12 @@ TEST_F(VersionBuilderTest, SaveBlobFilesToConcurrentJobs) {
1228
1206
  constexpr uint64_t total_blob_count = 234;
1229
1207
  constexpr uint64_t total_blob_bytes = 1 << 22;
1230
1208
 
1231
- edit.AddFile(
1232
- level, table_file_number, path_id, file_size, GetInternalKey(smallest),
1233
- GetInternalKey(largest), smallest_seqno, largest_seqno,
1234
- marked_for_compaction, Temperature::kUnknown, blob_file_number,
1235
- kUnknownOldestAncesterTime, kUnknownFileCreationTime, 2 /*epoch_number*/,
1236
- checksum_value, checksum_method, kNullUniqueId64x2, 0);
1209
+ edit.AddFile(level, table_file_number, path_id, file_size,
1210
+ GetInternalKey(smallest), GetInternalKey(largest),
1211
+ smallest_seqno, largest_seqno, marked_for_compaction,
1212
+ Temperature::kUnknown, blob_file_number,
1213
+ kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1214
+ checksum_value, checksum_method, kNullUniqueId64x2);
1237
1215
  edit.AddBlobFile(blob_file_number, total_blob_count, total_blob_bytes,
1238
1216
  checksum_method, checksum_value);
1239
1217
 
@@ -1319,9 +1297,8 @@ TEST_F(VersionBuilderTest, CheckConsistencyForBlobFiles) {
1319
1297
  /* largest_seqno */ 200, /* marked_for_compaction */ false,
1320
1298
  Temperature::kUnknown,
1321
1299
  /* oldest_blob_file_number */ 16, kUnknownOldestAncesterTime,
1322
- kUnknownFileCreationTime, kUnknownEpochNumber,
1323
- kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1324
- kNullUniqueId64x2, 0);
1300
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1301
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1325
1302
 
1326
1303
  edit.AddFile(/* level */ 1, /* file_number */ 700, /* path_id */ 0,
1327
1304
  /* file_size */ 100, /* smallest */ GetInternalKey("801"),
@@ -1329,9 +1306,8 @@ TEST_F(VersionBuilderTest, CheckConsistencyForBlobFiles) {
1329
1306
  /* largest_seqno */ 200, /* marked_for_compaction */ false,
1330
1307
  Temperature::kUnknown,
1331
1308
  /* oldest_blob_file_number */ 1000, kUnknownOldestAncesterTime,
1332
- kUnknownFileCreationTime, kUnknownEpochNumber,
1333
- kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1334
- kNullUniqueId64x2, 0);
1309
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1310
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1335
1311
  edit.AddBlobFile(/* blob_file_number */ 1000, /* total_blob_count */ 2000,
1336
1312
  /* total_blob_bytes */ 200000,
1337
1313
  /* checksum_method */ std::string(),
@@ -1551,8 +1527,8 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1551
1527
  /* largest_seqno */ 2100, /* marked_for_compaction */ false,
1552
1528
  Temperature::kUnknown,
1553
1529
  /* oldest_blob_file_number */ 1, kUnknownOldestAncesterTime,
1554
- kUnknownFileCreationTime, kUnknownEpochNumber, kUnknownFileChecksum,
1555
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
1530
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1531
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1556
1532
 
1557
1533
  // Add an SST that does not reference any blob files.
1558
1534
  edit.AddFile(
@@ -1561,8 +1537,8 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1561
1537
  /* largest */ GetInternalKey("22", 2200), /* smallest_seqno */ 2200,
1562
1538
  /* largest_seqno */ 2200, /* marked_for_compaction */ false,
1563
1539
  Temperature::kUnknown, kInvalidBlobFileNumber, kUnknownOldestAncesterTime,
1564
- kUnknownFileCreationTime, kUnknownEpochNumber, kUnknownFileChecksum,
1565
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
1540
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1541
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1566
1542
 
1567
1543
  // Delete a file that references a blob file.
1568
1544
  edit.DeleteFile(/* level */ 1, /* file_number */ 6);
@@ -1583,9 +1559,8 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1583
1559
  /* largest_seqno */ 300, /* marked_for_compaction */ false,
1584
1560
  Temperature::kUnknown,
1585
1561
  /* oldest_blob_file_number */ 3, kUnknownOldestAncesterTime,
1586
- kUnknownFileCreationTime, kUnknownEpochNumber,
1587
- kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1588
- kNullUniqueId64x2, 0);
1562
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1563
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1589
1564
 
1590
1565
  // Trivially move a file that does not reference any blob files.
1591
1566
  edit.DeleteFile(/* level */ 1, /* file_number */ 13);
@@ -1596,8 +1571,8 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1596
1571
  /* largest_seqno */ 1300, /* marked_for_compaction */ false,
1597
1572
  Temperature::kUnknown, kInvalidBlobFileNumber,
1598
1573
  kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1599
- kUnknownEpochNumber, kUnknownFileChecksum,
1600
- kUnknownFileChecksumFuncName, kNullUniqueId64x2, 0);
1574
+ kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1575
+ kNullUniqueId64x2);
1601
1576
 
1602
1577
  // Add one more SST file that references a blob file, then promptly
1603
1578
  // delete it in a second version edit before the new version gets saved.
@@ -1609,9 +1584,8 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1609
1584
  /* largest_seqno */ 2300, /* marked_for_compaction */ false,
1610
1585
  Temperature::kUnknown,
1611
1586
  /* oldest_blob_file_number */ 5, kUnknownOldestAncesterTime,
1612
- kUnknownFileCreationTime, kUnknownEpochNumber,
1613
- kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1614
- kNullUniqueId64x2, 0);
1587
+ kUnknownFileCreationTime, kUnknownFileChecksum,
1588
+ kUnknownFileChecksumFuncName, kNullUniqueId64x2);
1615
1589
 
1616
1590
  VersionEdit edit2;
1617
1591
 
@@ -1660,13 +1634,7 @@ TEST_F(VersionBuilderTest, MaintainLinkedSstsForBlobFiles) {
1660
1634
  }
1661
1635
 
1662
1636
  TEST_F(VersionBuilderTest, CheckConsistencyForFileDeletedTwice) {
1663
- Add(0, 1U, "150", "200", 100, /*path_id*/ 0,
1664
- /*smallest_seq*/ 100, /*largest_seq*/ 100,
1665
- /*num_entries*/ 0, /*num_deletions*/ 0,
1666
- /*sampled*/ false, /*smallest_seqno*/ 0,
1667
- /*largest_seqno*/ 0,
1668
- /*oldest_blob_file_number*/ kInvalidBlobFileNumber,
1669
- /*epoch_number*/ 1);
1637
+ Add(0, 1U, "150", "200", 100U);
1670
1638
 
1671
1639
  UpdateVersionStorageInfo();
1672
1640
 
@@ -1698,99 +1666,6 @@ TEST_F(VersionBuilderTest, CheckConsistencyForFileDeletedTwice) {
1698
1666
  UnrefFilesInVersion(&new_vstorage2);
1699
1667
  }
1700
1668
 
1701
- TEST_F(VersionBuilderTest, CheckConsistencyForL0FilesSortedByEpochNumber) {
1702
- Status s;
1703
- // To verify files of same epoch number of overlapping ranges are caught as
1704
- // corrupted
1705
- VersionEdit version_edit_1;
1706
- version_edit_1.AddFile(
1707
- /* level */ 0, /* file_number */ 1U, /* path_id */ 0,
1708
- /* file_size */ 100, /* smallest */ GetInternalKey("a", 1),
1709
- /* largest */ GetInternalKey("c", 3), /* smallest_seqno */ 1,
1710
- /* largest_seqno */ 3, /* marked_for_compaction */ false,
1711
- Temperature::kUnknown,
1712
- /* oldest_blob_file_number */ kInvalidBlobFileNumber,
1713
- kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1714
- 1 /* epoch_number */, kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1715
- kNullUniqueId64x2, 0);
1716
- version_edit_1.AddFile(
1717
- /* level */ 0, /* file_number */ 2U, /* path_id */ 0,
1718
- /* file_size */ 100, /* smallest */ GetInternalKey("b", 2),
1719
- /* largest */ GetInternalKey("d", 4), /* smallest_seqno */ 2,
1720
- /* largest_seqno */ 4, /* marked_for_compaction */ false,
1721
- Temperature::kUnknown,
1722
- /* oldest_blob_file_number */ kInvalidBlobFileNumber,
1723
- kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1724
- 1 /* epoch_number */, kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1725
- kNullUniqueId64x2, 0);
1726
-
1727
- VersionBuilder version_builder_1(EnvOptions(), &ioptions_,
1728
- nullptr /* table_cache */, &vstorage_,
1729
- nullptr /* file_metadata_cache_res_mgr */);
1730
- VersionStorageInfo new_vstorage_1(
1731
- &icmp_, ucmp_, options_.num_levels, kCompactionStyleLevel,
1732
- nullptr /* src_vstorage */, true /* force_consistency_checks */);
1733
-
1734
- ASSERT_OK(version_builder_1.Apply(&version_edit_1));
1735
- s = version_builder_1.SaveTo(&new_vstorage_1);
1736
- EXPECT_TRUE(s.IsCorruption());
1737
- EXPECT_TRUE(std::strstr(
1738
- s.getState(), "L0 files of same epoch number but overlapping range"));
1739
- UnrefFilesInVersion(&new_vstorage_1);
1740
-
1741
- // To verify L0 files not sorted by epoch_number are caught as corrupted
1742
- VersionEdit version_edit_2;
1743
- version_edit_2.AddFile(
1744
- /* level */ 0, /* file_number */ 1U, /* path_id */ 0,
1745
- /* file_size */ 100, /* smallest */ GetInternalKey("a", 1),
1746
- /* largest */ GetInternalKey("a", 1), /* smallest_seqno */ 1,
1747
- /* largest_seqno */ 1, /* marked_for_compaction */ false,
1748
- Temperature::kUnknown,
1749
- /* oldest_blob_file_number */ kInvalidBlobFileNumber,
1750
- kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1751
- 1 /* epoch_number */, kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1752
- kNullUniqueId64x2, 0);
1753
- version_edit_2.AddFile(
1754
- /* level */ 0, /* file_number */ 2U, /* path_id */ 0,
1755
- /* file_size */ 100, /* smallest */ GetInternalKey("b", 2),
1756
- /* largest */ GetInternalKey("b", 2), /* smallest_seqno */ 2,
1757
- /* largest_seqno */ 2, /* marked_for_compaction */ false,
1758
- Temperature::kUnknown,
1759
- /* oldest_blob_file_number */ kInvalidBlobFileNumber,
1760
- kUnknownOldestAncesterTime, kUnknownFileCreationTime,
1761
- 2 /* epoch_number */, kUnknownFileChecksum, kUnknownFileChecksumFuncName,
1762
- kNullUniqueId64x2, 0);
1763
-
1764
- VersionBuilder version_builder_2(EnvOptions(), &ioptions_,
1765
- nullptr /* table_cache */, &vstorage_,
1766
- nullptr /* file_metadata_cache_res_mgr */);
1767
- VersionStorageInfo new_vstorage_2(
1768
- &icmp_, ucmp_, options_.num_levels, kCompactionStyleLevel,
1769
- nullptr /* src_vstorage */, true /* force_consistency_checks */);
1770
-
1771
- ASSERT_OK(version_builder_2.Apply(&version_edit_2));
1772
- s = version_builder_2.SaveTo(&new_vstorage_2);
1773
- ASSERT_TRUE(s.ok());
1774
-
1775
- const std::vector<FileMetaData*>& l0_files = new_vstorage_2.LevelFiles(0);
1776
- ASSERT_EQ(l0_files.size(), 2);
1777
- // Manually corrupt L0 files's epoch_number
1778
- l0_files[0]->epoch_number = 1;
1779
- l0_files[1]->epoch_number = 2;
1780
-
1781
- // To surface corruption error by applying dummy version edit
1782
- VersionEdit dummy_version_edit;
1783
- VersionBuilder dummy_version_builder(
1784
- EnvOptions(), &ioptions_, nullptr /* table_cache */, &vstorage_,
1785
- nullptr /* file_metadata_cache_res_mgr */);
1786
- ASSERT_OK(dummy_version_builder.Apply(&dummy_version_edit));
1787
- s = dummy_version_builder.SaveTo(&new_vstorage_2);
1788
- EXPECT_TRUE(s.IsCorruption());
1789
- EXPECT_TRUE(std::strstr(s.getState(), "L0 files are not sorted properly"));
1790
-
1791
- UnrefFilesInVersion(&new_vstorage_2);
1792
- }
1793
-
1794
1669
  TEST_F(VersionBuilderTest, EstimatedActiveKeys) {
1795
1670
  const uint32_t kTotalSamples = 20;
1796
1671
  const uint32_t kNumLevels = 5;
@@ -135,8 +135,7 @@ bool VersionEdit::EncodeTo(std::string* dst) const {
135
135
  bool min_log_num_written = false;
136
136
  for (size_t i = 0; i < new_files_.size(); i++) {
137
137
  const FileMetaData& f = new_files_[i].second;
138
- if (!f.smallest.Valid() || !f.largest.Valid() ||
139
- f.epoch_number == kUnknownEpochNumber) {
138
+ if (!f.smallest.Valid() || !f.largest.Valid()) {
140
139
  return false;
141
140
  }
142
141
  PutVarint32(dst, kNewFile4);
@@ -185,11 +184,6 @@ bool VersionEdit::EncodeTo(std::string* dst) const {
185
184
  &varint_file_creation_time);
186
185
  PutLengthPrefixedSlice(dst, Slice(varint_file_creation_time));
187
186
 
188
- PutVarint32(dst, NewFileCustomTag::kEpochNumber);
189
- std::string varint_epoch_number;
190
- PutVarint64(&varint_epoch_number, f.epoch_number);
191
- PutLengthPrefixedSlice(dst, Slice(varint_epoch_number));
192
-
193
187
  PutVarint32(dst, NewFileCustomTag::kFileChecksum);
194
188
  PutLengthPrefixedSlice(dst, Slice(f.file_checksum));
195
189
 
@@ -231,13 +225,6 @@ bool VersionEdit::EncodeTo(std::string* dst) const {
231
225
  std::string unique_id_str = EncodeUniqueIdBytes(&unique_id);
232
226
  PutLengthPrefixedSlice(dst, Slice(unique_id_str));
233
227
  }
234
- if (f.compensated_range_deletion_size) {
235
- PutVarint32(dst, kCompensatedRangeDeletionSize);
236
- std::string compensated_range_deletion_size;
237
- PutVarint64(&compensated_range_deletion_size,
238
- f.compensated_range_deletion_size);
239
- PutLengthPrefixedSlice(dst, Slice(compensated_range_deletion_size));
240
- }
241
228
 
242
229
  TEST_SYNC_POINT_CALLBACK("VersionEdit::EncodeTo:NewFile4:CustomizeFields",
243
230
  dst);
@@ -365,11 +352,6 @@ const char* VersionEdit::DecodeNewFile4From(Slice* input) {
365
352
  return "invalid file creation time";
366
353
  }
367
354
  break;
368
- case kEpochNumber:
369
- if (!GetVarint64(&field, &f.epoch_number)) {
370
- return "invalid epoch number";
371
- }
372
- break;
373
355
  case kFileChecksum:
374
356
  f.file_checksum = field.ToString();
375
357
  break;
@@ -411,11 +393,6 @@ const char* VersionEdit::DecodeNewFile4From(Slice* input) {
411
393
  return "invalid unique id";
412
394
  }
413
395
  break;
414
- case kCompensatedRangeDeletionSize:
415
- if (!GetVarint64(&field, &f.compensated_range_deletion_size)) {
416
- return "Invalid compensated range deletion size";
417
- }
418
- break;
419
396
  default:
420
397
  if ((custom_tag & kCustomTagNonSafeIgnoreMask) != 0) {
421
398
  // Should not proceed if cannot understand it
@@ -831,8 +808,6 @@ std::string VersionEdit::DebugString(bool hex_key) const {
831
808
  AppendNumberTo(&r, f.oldest_ancester_time);
832
809
  r.append(" file_creation_time:");
833
810
  AppendNumberTo(&r, f.file_creation_time);
834
- r.append(" epoch_number:");
835
- AppendNumberTo(&r, f.epoch_number);
836
811
  r.append(" file_checksum:");
837
812
  r.append(Slice(f.file_checksum).ToString(true));
838
813
  r.append(" file_checksum_func_name: ");
@@ -952,7 +927,6 @@ std::string VersionEdit::DebugJSON(int edit_num, bool hex_key) const {
952
927
  jw << "LargestIKey" << f.largest.DebugString(hex_key);
953
928
  jw << "OldestAncesterTime" << f.oldest_ancester_time;
954
929
  jw << "FileCreationTime" << f.file_creation_time;
955
- jw << "EpochNumber" << f.epoch_number;
956
930
  jw << "FileChecksum" << Slice(f.file_checksum).ToString(true);
957
931
  jw << "FileChecksumFuncName" << f.file_checksum_func_name;
958
932
  if (f.temperature != Temperature::kUnknown) {