sstables/writer: add an accessor for the current write position in Data.db
It will be used by index tests to know the ground truth for where each partition and row are written, so that this can be checked against the index.
This commit is contained in:
@@ -816,6 +816,7 @@ public:
|
||||
stop_iteration consume(range_tombstone_change&& rtc) override;
|
||||
stop_iteration consume_end_of_partition() override;
|
||||
void consume_end_of_stream() override;
|
||||
uint64_t data_file_position_for_tests() const override;
|
||||
};
|
||||
|
||||
writer::~writer() {
|
||||
@@ -1545,6 +1546,10 @@ void writer::consume_end_of_stream() {
|
||||
_sst.seal_sstable(_cfg.backup).get();
|
||||
}
|
||||
|
||||
uint64_t writer::data_file_position_for_tests() const {
|
||||
return _data_writer->offset();
|
||||
}
|
||||
|
||||
std::unique_ptr<sstable_writer::writer_impl> make_writer(sstable& sst,
|
||||
const schema& s,
|
||||
uint64_t estimated_partitions,
|
||||
|
||||
@@ -44,6 +44,7 @@ public:
|
||||
stop_iteration consume_end_of_partition();
|
||||
void consume_end_of_stream();
|
||||
void set_repaired_at(int64_t repaired_at);
|
||||
uint64_t data_file_position_for_tests() const;
|
||||
};
|
||||
|
||||
} // namespace sstables
|
||||
|
||||
@@ -77,6 +77,10 @@ void sstable_writer::set_repaired_at(int64_t repaired_at) {
|
||||
_impl->set_repaired_at(repaired_at);
|
||||
}
|
||||
|
||||
uint64_t sstable_writer::data_file_position_for_tests() const {
|
||||
return _impl->data_file_position_for_tests();
|
||||
}
|
||||
|
||||
sstable_writer::sstable_writer(sstable_writer&& o) = default;
|
||||
sstable_writer& sstable_writer::operator=(sstable_writer&& o) = default;
|
||||
sstable_writer::~sstable_writer() {
|
||||
|
||||
@@ -52,6 +52,7 @@ struct sstable_writer::writer_impl {
|
||||
void set_repaired_at(uint64_t repaired_at) {
|
||||
_collector.set_repaired_at(repaired_at);
|
||||
}
|
||||
virtual uint64_t data_file_position_for_tests() const = 0;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user