diff options
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d38746af..9c6b761da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,27 @@ ## +- Bugfix: Cache RPC recording would drop data when it reached 4GB of inline chunk data in a segment +- Bugfix: Fixed thread safety issues in RPC recorder v2 +- Bugfix: `IoBuffer::Materialize` would leak memory for small buffers +- Bugfix: Fix crash bug when trying to inspect non-open block file in GC +- Bugfix: Fixed up code so we can build everything even when trace support is disabled +- Bugfix: Make sure we initialize the pattern of FileSink before it is added as a usable logger +- Bugfix: Various minor TSAN/ASAN fixes (see PR #622) +- Improvement: Cache RPC replay can now process partial recordings by recovering metadata from available files +- Improvement: Cache RPC recording now limits duration of individual segments to 1h +- Improvement: Made RPC replay command line parsing more robust by ensuring at least one processing thread is in use +- Improvement: Windows executables are now signed with official cert when creating a release +- Improvement: Each block in block store that is rewritten will now be logged for better feedback + +## 0.2 37 +- Bugfix: ShutdownLogging code would throw an exception if it was called before everything had been initialised properly +- Bugfix: Reorder shutdown to avoid crash due to late async log messages (spdlog workaround) +- Bugfix: Correctly calculate peak disk write size in GC status message +- Bugfix: Skip invalid chunks in block store GC when moving existing chunks +- Bugfix: Don't use copy of Payloads array when fetching memcached payload in GC +- Bugfix: Make sure IoBuffer is a valid null-buffer after move operation +- Improvement: Adjusted and added some trace scopes + +## 0.2.36 - Feature: Added xmake task `updatefrontend` which updates the zip file containing the frontend html (`/src/zenserver/frontend/html.zip`) - Feature: Added `--powercycle` option to zenserver which causes it do shut down immediately after initialization is completed. This is useful for profiling startup/shutdown primarily but could also be useful for some kinds of validation/state upgrade scenarios - Feature: New endpoint `/admin/gc-stop` to cancel a running garbage collect operation @@ -14,6 +37,8 @@ - Bugfix: Use correct lookup index when checking for memcached buffer when finding references in diskcache GC - Bugfix: CasContainerStrategy::ReadIndexFile issue could cause CAS items to not be found after a shutdown/restart cycle - Bugfix: Make sure we don't hold the namespace bucket lock when we create buckets to avoid deadlock +- Bugfix: Make sure that PathFromHandle don't hide true error when throwing exceptions +- Bugfix: Allow attachments that contains a raw size of zero - Improvement: The frontend html content is no longer appended at the end of the executable which prevented signing, instead it is compiled in from the `/src/zenserver/frontend/html.zip` archive - Improvement: MacOS now does ad-hoc code signing by default when issuing `xmake bundle`, signing with proper cert is done on CI builds - Improvement: Updated branding to be consistent with current working name ("Unreal Zen Storage Server" etc) @@ -36,9 +61,15 @@ - Improvement: Make a more accurate estimation of memory usage for in-memory cache values - Improvement: Added detailed debug logging for pluggable transports - Improvement: Improved formatting of multi-line logging. Each line is now indented to line up with the initial line to make reading the output easier +- Improvement: Refactor memory cache for faster trimming and correct trim reporting +- Improvement: Added trace scopes for memory cache trimming - Improvement: Pass lock scope to helper functions to clarify locking rules - Improvement: Block flush and gc operations for a bucket that is not yet initialized - Improvement: Add ZenCacheDiskLayer::GetOrCreateBucket to avoid code duplication +- Improvement: Scrub operation now validates compressed buffer hashes in filecas storage (used for large chunks) +- Improvement: Added `--dry`, `--no-gc` and `--no-cas` options to `zen scrub` command +- Improvement: Implemented oplog scrubbing (previously was a no-op) +- Improvement: Implemented support for running scrubbint at startup with --scrub=<options> ## 0.2.35 - Bugfix: Fix timeout calculation for semtimedop call |