0.26.6 - JobSizeSpec
·
47 commits
to main
since this release
Job size spec (#122) * Bug todo... * switch to script branch * Move batteries/ to script/ * Use relative path for submodule * Switch everything over to new script/ dir. * Add ability to manually simulate flush operations when using MemoryLogDevice. * Provide access to the Volume root_log for testing. * Add ostream operator for LogReadMode. * Move pack_object impl to packed_page_id; increase warning strictness. * Upgrade batteries and prepare to release. * Upgrade batteries. * Add optional WorkerPool& to DataPacker. * Upgrade batteries to 0.25.3. * Add parallel copying to DataPacker. * Add ability to capture/parse raw log data from a Volume. * Don't warn about page not found if `ok_if_not_found` is true. * Tweaks to log data capture apis. * Upgrade to batteries/0.27.3. * Add SlotSequencer::await_current, upgrade to batteries/0.28.2. * Add convenience methods to PageView/PinnedPage. * WIP - fix for recovery bugs. * Fix duplicate PageRecycle delete bug. * Move PageAllocator files into subdir. * Fix PageAllocator state recovery bugs. * Upgrade to batteries/0.28.5. * Refactor PageRecycler; minor fixes/asserts to PageAllocator. * Fix PageAllocator dead page detection to be deterministic in crash recovery. * Fix incorrect last_update calculation in PageAllocator (should be last checkpoint). * Fixes for Clang builds. * Initial version of storage simulation classes. * Implement StorageSimulation::get_page_device. * First cut of volume recovery StorageSimulation (+ fix #38). * Refactor CommitChunk init. * Add PageGraphNode page layout and more of volume recovery sim test. * Working Volume recovery sim test! * Add more page integrity checking in volume recovery sim test. * Merge some missing changes to SimulatedPageDevice::Impl. * Update from volume recovery fix PR. * Fix bug re: enforcing one allocator user slot job at a time in volume. * Changes for snapshots. * WIP - Binary Prefix Trie structure. * Add binary prefix trie (BPTrie). * Add PackedInterval::from(Interval). * Add new faster packed BPTrie layout. * New faster packed layout for BPTries, cleanup, compare against packed sstables. * Further compress packed BPTrie layout; add get_key operation. * Add words file to testdata/. * Tune the test. * Trie test tuning. * Implement Right-Leaf optimization in BPTries. * Upgrade to batteries/0.31.0 * Add volume root log trim delay size parameter. * Upgrade to batteries/0.31.3. * Add VolumeTrimmer::get_trim_delay(). * Allow slot read lock and capture range to be different in Volume::get_root_log_data. * Fix VolumeTrimmer trim delay bug. * New fix for VolumeTrimmer + trim_delay. * Add Volume::get_trim_pos(). * Fix #50. * Fix #50. * Fix for #52. * Fix for #52. * Fix for #53. * Add some comments to the test. * Add doc comments to TypedSlotWriter::append, to describe new post_commit_fn param. * Add more test comments. * Fix signed/unsigned type error. * Add concurrent append jobs volume storage sim test. * Upgraded dependencies to latest versions (performed by a8/script/upgrade-deps.sh) * Upgrade docker container for CI. * Upgrade batteries to 0.33.1. * WIP * Upgraded dependencies to latest versions (performed by a8/script/upgrade-deps.sh) * script * script * Upgrade batteries; fix warnings (unused arg). * wip * Upgrade to latest batteries, fix build breakage (C++20) * Updates from PRs * update script to latest * upgrade to batteries/0.35.0 * Merge changes from other PRs * Manual merge of changes from upstream. * Merge updates from other branches * Fix recipe problems re: conan2 * Upgrade CI docker image. * Update README. * Upgrade script * Upgrade script, boost, and batteries. * Fix potential export problems with recipe. * script * Switch to conan_find_requirements.cmake in CMakeLists.txt. Upgrade batteries, downgrade boost. * Readability. * Upgraded dependencies to latest versions (performed by a8/script/upgrade-deps.sh) * Upgrade boost and batteries; fix regression in bloom filter perf. * Add Fuse helpers. * WIP - fuse support. * Upgrade batteries; wip fuse impl. * Upgrade to batteries/0.42.1. * wip - llfs_fuse. * Progress on fuse. * Move mem_fuse into llfs, start writing unit test. * MemFuseImpl test working. * Add ability to cleanly shut down WorkQueue/WorkerTask. * wip mem_fuse. * Update script * upgrade script/ * Update build recipe. * register_page_reader - safe re-registration of the same PageReader. * wip - fs * Upgrade to batteries/0.43.0. * WIP - IoRingBufferPool. * Add IoRingBufferPool impl and test. * wip IoRing perf and features. * Provide an easy way to get the full append byte size from a SlotParse. * Add SlotParse::total_grant_spent. * Fix various log bookkeeping bugs. * Fix build breakage due to new CancelToken API. * update script * Re-enable MemFuseTest. * Minor cosmetic fixes; add doc comments to new Volume methods. * Fixes for #85, #86, #94, #99, #101. * Fix for #87, #100; upgrade to batteries/0.44.1. * Fix for #87, #98, #100; upgrade to batteries/0.44.1. * Fixes for #90, #95, #96, #97. * Manually merged changes from other branches. * Merge changes from other PRs. * Fixes for #88. * Clean up IoRingImpl; increase IoRingBufferPool code coverage in test. * wip - before major rewrite of VolumeTrimmer to simplify. * wip - save VolumeCommittedJobTracker before removing (just in case we change our mind!) * wip - new VolumeTrimmer. * wip - volume trimmer fixes (plus test fixes). * (re-)Acquire job grant first on recover in trimmer test; this is roughly equivalent to resolving jobs first (volume.cpp) * Added cached pool for RingBuffer, fixed testdata bug (TrieTest). * Upgrade to batteries/0.44.1. * wip * Add caching of ring buffer mapped memory to slow resource growth. * Use madvise; minimize calls to munmap. * Fix for #108, Fix for #107. * merge RingBuffer changes. * Cleanup. * Hand-merge refactoring of finalized_page_cache_job.* * fix header order * Cleanup code. * Minor changes. * Remove dead code. * Hand-merge from all pending branches... * Only clear one mirror when deallocating a RingBuffer::Impl. This seems to fix a sporadic Bus Error when trying to memset the entire mapped region (size * 2) at once. * memfd_create instead of tmpfile, normalized subpool sizes. * Merge RingBuffer updates. * Upgrade to batteries 0.44.2. * Upgrade to batteries/0.44.3 * Add diagnostics to unpack_cast (what type) * Check to make sure trim control (SlotLockManager) isn't closed before starting a new trim. * Fix for #117. * Various minor diagnostic improvements. * Comments. * PageRecycler::pre_halt. * Make DataPackerArena constructor public. * Add JobSizeSpec, for precise job grant calculation.