storage: Delete mvlog#30798
Conversation
It's unused dead code and no plan of using it. Remove to save build time and context.
There was a problem hiding this comment.
Pull request overview
This PR removes the unused experimental storage::experimental::mvlog implementation (and its associated Bazel targets + tests) to reduce build time and eliminate dead code.
Changes:
- Deleted the
src/v/storage/mvloglibrary sources/headers (includingversioned_log, segment read/write helpers, and supporting types). - Deleted the
src/v/storage/mvlog/teststest suite and its Bazel BUILD file. - Removed the Bazel BUILD file for the
mvlogpackage itself.
Reviewed changes
Copilot reviewed 40 out of 40 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/v/storage/mvlog/versioned_log.h | Removed unused versioned log public API/types. |
| src/v/storage/mvlog/versioned_log.cc | Removed unused versioned log implementation. |
| src/v/storage/mvlog/tests/skipping_data_source_test.cc | Removed mvlog test coverage for skipping data source. |
| src/v/storage/mvlog/tests/segment_reader_test.cc | Removed mvlog segment reader tests. |
| src/v/storage/mvlog/tests/segment_io_test.cc | Removed mvlog segment IO tests. |
| src/v/storage/mvlog/tests/segment_appender_test.cc | Removed mvlog segment appender tests. |
| src/v/storage/mvlog/tests/file_test.cc | Removed mvlog file wrapper tests. |
| src/v/storage/mvlog/tests/entry_stream_utils_test.cc | Removed mvlog entry stream utils tests. |
| src/v/storage/mvlog/tests/entry_stream_utils_death_test.cc | Removed mvlog death test target. |
| src/v/storage/mvlog/tests/BUILD | Removed Bazel test targets for mvlog. |
| src/v/storage/mvlog/tests/batch_collector_test.cc | Removed mvlog batch collector tests. |
| src/v/storage/mvlog/tests/batch_collecting_stream_utils_test.cc | Removed mvlog batch collecting stream utils tests. |
| src/v/storage/mvlog/tests/active_segment_test.cc | Removed mvlog active segment/versioned log tests. |
| src/v/storage/mvlog/skipping_data_source.h | Removed skipping data source API. |
| src/v/storage/mvlog/skipping_data_source.cc | Removed skipping data source implementation. |
| src/v/storage/mvlog/segment_reader.h | Removed segment reader API. |
| src/v/storage/mvlog/segment_reader.cc | Removed segment reader implementation. |
| src/v/storage/mvlog/segment_identifier.h | Removed segment id type. |
| src/v/storage/mvlog/segment_appender.h | Removed segment appender API. |
| src/v/storage/mvlog/segment_appender.cc | Removed segment appender implementation. |
| src/v/storage/mvlog/reader_outcome.h | Removed internal reader outcome enum. |
| src/v/storage/mvlog/readable_segment.h | Removed readable segment API. |
| src/v/storage/mvlog/readable_segment.cc | Removed readable segment implementation. |
| src/v/storage/mvlog/logger.h | Removed mvlog logger declaration. |
| src/v/storage/mvlog/logger.cc | Removed mvlog logger definition. |
| src/v/storage/mvlog/file.h | Removed mvlog file + file_manager wrapper API. |
| src/v/storage/mvlog/file.cc | Removed mvlog file + file_manager wrapper implementation. |
| src/v/storage/mvlog/file_gap.h | Removed file gap type. |
| src/v/storage/mvlog/errc.h | Removed mvlog error codes. |
| src/v/storage/mvlog/entry.h | Removed mvlog entry types. |
| src/v/storage/mvlog/entry.cc | Removed mvlog entry formatting implementation. |
| src/v/storage/mvlog/entry_stream.h | Removed mvlog entry stream API. |
| src/v/storage/mvlog/entry_stream.cc | Removed mvlog entry stream implementation. |
| src/v/storage/mvlog/entry_stream_utils.h | Removed mvlog entry stream utils API. |
| src/v/storage/mvlog/entry_stream_utils.cc | Removed mvlog entry stream utils implementation. |
| src/v/storage/mvlog/BUILD | Removed Bazel library target for mvlog. |
| src/v/storage/mvlog/batch_collector.h | Removed batch collector API. |
| src/v/storage/mvlog/batch_collector.cc | Removed batch collector implementation. |
| src/v/storage/mvlog/batch_collecting_stream_utils.h | Removed batch collecting stream utils API. |
| src/v/storage/mvlog/batch_collecting_stream_utils.cc | Removed batch collecting stream utils implementation. |
|
@StephanDollberg i think you can also remove the "src/v/io" directory. |
|
There are some other areas of code that aren't used (were aspirationally worked on but then deprioritized). The page cache comes to mind, and I also see some v8 engine stuff in the tree. Alternatively, I wonder if there's a way to get agents to ignore these parts of the tree, and remove them from the full build, in case the work is ever reprioritized. I suppose it's always possible to revert a removal, but I guess it's also possible people just forget about it and start from scratch (which isn't the end of the world, just duplicate work, if it matters). |
Dead code.
is that the src/v/io or something else (either way, nuke it)
this one is like 99.999% removed. i think the only thing remaining was some constant used to decode a record that might exist in the controller log. i don't think it makes any sense to keep around the v8 files in the tree, so maybe we coudl just move that constant to where it's used. |
|
Cool, will remove those as well. I think it's definitely good to remove that stuff for build/CI times, human context size, LLM context size and avoid having to update it constantly. |
Retry command for Build#85753please wait until all jobs are finished before running the slash command |
CI test resultstest results on build#85753
test results on build#85758 |
Dead code
Retry command for Build#85758please wait until all jobs are finished before running the slash command |
It's unused dead code and no plan of using it.
Remove to save build time and context.
Backports Required
Release Notes