From 0b4c619ac6fac170cebc8dc44c8dc6bf0b3480e7 Mon Sep 17 00:00:00 2001 From: Naman Jain Date: Thu, 3 Jun 2021 11:47:49 +0530 Subject: [PATCH] chore: update changelog for v3.2103 (#1711) --- CHANGELOG.md | 166 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 166 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b166a1f1..01cdd7c67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,172 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). +## [3.2103.0] - 2021-06-02 + +### Breaking + - Subscribe: Add option to subscribe with holes in prefixes. (#1658) + +### Fixed + - fix(compaction): Remove compaction backoff mechanism (#1686) + - Add a name to mutexes to make them unexported (#1678) + - fix(merge-operator): don't read the deleted keys (#1675) + - fix(discard): close the discard stats file on db close (#1672) + - fix(iterator): fix iterator when data does not exist in read only mode (#1670) + - fix(badger): Do not reuse variable across badger commands (#1624) + - fix(dropPrefix): check properly if the key is present in a table (#1623) + +### Performance + - Opt(Stream): Optimize how we deduce key ranges for iteration (#1687) + - Increase value threshold from 1 KB to 1 MB (#1664) + - opt(DropPrefix): check if there exist some data to drop before dropping prefixes (#1621) + +### Features + - feat(options): allow special handling and checking when creating options from superflag (#1688) + - overwrite default Options from SuperFlag string (#1663) + - Support SinceTs in iterators (#1653) + - feat(info): Add a flag to parse and print DISCARD file (#1662) + - feat(vlog): making vlog threshold dynamic 6ce3b7c (#1635) + - feat(options): add NumGoroutines option for default Stream.numGo (#1656) + - feat(Trie): Working prefix match with holes (#1654) + - feat: add functionality to ban a prefix (#1638) + - feat(compaction): Support Lmax to Lmax compaction (#1615) + +### New APIs +- Badger.DB + - BanNamespace + - BannedNamespaces + - Ranges +- Badger.Options + - FromSuperFlag + - WithNumGoRoutines + - WithNamespaceOffset + - WithVLogPercentile +- Badger.Trie + - AddMatch + - DeleteMatch +- Badger.Table + - StaleDataSize +- Badger.Table.Builder + - AddStaleKey +- Badger.InitDiscardStats + +### Removed APIs +- Badger.DB + - KeySplits +- Badger.Options + - SkipVlog + +### Changed APIs +- Badger.DB + - Subscribe +- Badger.Options + - WithValueThreshold + +## [3.2011.1] - 2021-01-22 + +### Fixed + - Fix(compaction): Set base level correctly after stream (#1651) + - Fix: update ristretto and use filepath (#1652) + - Fix(badger): Do not reuse variable across badger commands (#1650) + - Fix(build): fix 32-bit build (#1646) + - Fix(table): always sync SST to disk (#1645) + +## [3.2011.0] - 2021-01-15 + +This release is not backward compatible with Badger v2.x.x + +### Breaking: + - opt(compactions): Improve compaction performance (#1574) + - Change how Badger handles WAL (#1555) + - feat(index): Use flatbuffers instead of protobuf (#1546) + +### Fixed: + - Fix(GC): Set bits correctly for moved keys (#1619) + - Fix(tableBuilding): reduce scope of valuePointer (#1617) + - Fix(compaction): fix table size estimation on compaction (#1613) + - Fix(OOM): Reuse pb.KVs in Stream (#1609) + - Fix race condition in L0StallMs variable (#1605) + - Fix(stream): Stop produceKVs on error (#1604) + - Fix(skiplist): Remove z.Buffer from skiplist (#1600) + - Fix(readonly): fix the file opening mode (#1592) + - Fix: Disable CompactL0OnClose by default (#1586) + - Fix(compaction): Don't drop data when split overlaps with top tables (#1587) + - Fix(subcompaction): Close builder before throttle.Done (#1582) + - Fix(table): Add onDisk size (#1569) + - Fix(Stream): Only send done markers if told to do so + - Fix(value log GC): Fix a bug which caused value log files to not be GCed. + - Fix segmentation fault when cache sizes are small. (#1552) + - Fix(builder): Too many small tables when compression is enabled (#1549) + - Fix integer overflow error when building for 386 (#1541) + - Fix(writeBatch): Avoid deadlock in commit callback (#1529) + - Fix(db): Handle nil logger (#1534) + - Fix(maxVersion): Use choosekey instead of KeyToList (#1532) + - Fix(Backup/Restore): Keep all versions (#1462) + - Fix(build): Fix nocgo builds. (#1493) + - Fix(cleanup): Avoid truncating in value.Open on error (#1465) + - Fix(compaction): Don't use cache for table compaction (#1467) + - Fix(compaction): Use separate compactors for L0, L1 (#1466) + - Fix(options): Do not implicitly enable cache (#1458) + - Fix(cleanup): Do not close cache before compaction (#1464) + - Fix(replay): Update head for LSM entires also (#1456) + - fix(levels): Cleanup builder resources on building an empty table (#1414) + +### Performance + - perf(GC): Remove move keys (#1539) + - Keep the cheaper parts of the index within table struct. (#1608) + - Opt(stream): Use z.Buffer to stream data (#1606) + - opt(builder): Use z.Allocator for building tables (#1576) + - opt(memory): Use z.Calloc for allocating KVList (#1563) + - opt: Small memory usage optimizations (#1562) + - KeySplits checks tables and memtables when number of splits is small. (#1544) + - perf: Reduce memory usage by better struct packing (#1528) + - perf(tableIterator): Don't do next on NewIterator (#1512) + - Improvements: Manual Memory allocation via Calloc (#1459) + - Various bug fixes: Break up list and run DropAll func (#1439) + - Add a limit to the size of the batches sent over a stream. (#1412) + - Commit does not panic after Finish, instead returns an error (#1396) + - levels: Compaction incorrectly drops some delete markers (#1422) + - Remove vlog file if bootstrap, syncDir or mmap fails (#1434) + +### Features: + - Use opencensus for tracing (#1566) + - Export functions from Key Registry (#1561) + - Allow sizes of block and index caches to be updated. (#1551) + - Add metric for number of tables being compacted (#1554) + - feat(info): Show index and bloom filter size (#1543) + - feat(db): Add db.MaxVersion API (#1526) + - Expose DB options in Badger. (#1521) + - Feature: Add a Calloc based Buffer (#1471) + - Add command to stream contents of DB into another DB. (#1463) + - Expose NumAlloc metrics via expvar (#1470) + - Support fully disabling the bloom filter (#1319) + - Add --enc-key flag in badger info tool (#1441) + +### New APIs +- Badger.DB + - CacheMaxCost (#1551) + - Levels (#1574) + - LevelsToString (#1574) + - Opts (#1521) +- Badger.Options + - WithBaseLevelSize (#1574) + - WithBaseTableSize (#1574) + - WithMemTableSize (#1574) +- Badger.KeyRegistry + - DataKey (#1561) + - LatestDataKey (#1561) + +### Removed APIs +- Badger.Options + - WithKeepL0InMemory (#1555) + - WithLevelOneSize (#1574) + - WithLoadBloomsOnOpen (#1555) + - WithLogRotatesToFlush (#1574) + - WithMaxTableSize (#1574) + - WithTableLoadingMode (#1555) + - WithTruncate (#1555) + - WithValueLogLoadingMode (#1555) + ## [2.2007.2] - 2020-08-31 ### Fixed