Commit Graph
292 Commits
Author SHA1 Message Date
Ahmed Yasin Koculu 24157706ad Adds Steve's challenge test. 2022-09-03 00:41:44 +02:00
Ahmed Yasin Koculu b16e693c2a Makes random access device manager thread-safe. 2022-09-03 00:35:17 +02:00
Ahmed Yasin Koculu f1ad57988b Fixes memory leak caused by GC. GC does not collect Thread local variables for a long time. 2022-09-03 00:34:21 +02:00
Ahmed Yasin Koculu b50d075db5 Adds default byte array serializer and comparers selection. 2022-09-03 00:32:34 +02:00
Ahmed Yasin Koculu e0d2a9d120 Update docs. 2022-08-31 23:08:17 +02:00
Ahmed Yasin Koculu 774b084a52 Updates docs. 2022-08-31 23:05:18 +02:00
Ahmed Yasin Koculu eaea453a03 Update docs. 2022-08-31 20:38:34 +02:00
Ahmed Yasin Koculu e36676cfab Replaces LZ4 and Zstd compression libraries with faster alternatives. 2022-08-31 20:08:46 +02:00
Ahmed Yasin Koculu c2200a5dc5 Sets default random access device manager. 2022-08-31 00:10:52 +02:00
Ahmed Yasin Koculu 8416d2d0cb Fixes deadlock in BTree split.. 2022-08-30 02:47:46 +02:00
Ahmed Yasin Koculu a6fb79f8a8 Adds 100M compression method comparison. 2022-08-30 01:54:12 +02:00
Ahmed Yasin Koculu 3a3f10e732 Improves benchmarks to include disk and memory usage. 2022-08-30 01:06:17 +02:00
Ahmed Yasin Koculu 1270566871 Drop bottom segments properly. Set Brotli Optimum = Fastest. 2022-08-30 00:55:57 +02:00
Ahmed Yasin Koculu a546aa3a2e Adds bottom segment merge operation events. 2022-08-29 02:00:23 +02:00
Ahmed Yasin Koculu 4e97c37e89 Unify mutable segment name across the codebase to avoid confusion. 2022-08-29 01:28:28 +02:00
Ahmed Yasin Koculu bd095b37b1 Fixes Sparse Array GetFirstGreaterOrEqualPosition bug. 2022-08-29 01:15:05 +02:00
Ahmed Yasin Koculu 2399e35b03 Init sparse arrays in parallel. 2022-08-29 00:58:50 +02:00
Ahmed Yasin Koculu f395039d6c Adds bottom segment merger. 2022-08-28 22:52:14 +02:00
Ahmed Yasin Koculu 93927cd8b2 Adds log object. 2022-08-28 17:33:41 +02:00
Ahmed Yasin Koculu 05bc11db82 Synchronize reads and iterators with disk segment drops. 2022-08-28 15:41:46 +02:00
Ahmed Yasin Koculu 95a673e192 Introduce Bottom Segments Layer. The vertical disk segment expansion. 2022-08-27 18:23:28 +02:00
Ahmed Yasin Koculu 143a1eb325 Set deterministic build option. 2022-08-27 14:18:54 +02:00
Ahmed Yasin Koculu 6fb42b10a5 Adds LZ4 nuget package config. 2022-08-27 14:15:51 +02:00
Ahmed Yasin Koculu 53250a45bb Code cleanup. 2022-08-26 23:01:40 +02:00
Ahmed Yasin Koculu 87d823ad96 Clean namespaces. 2022-08-26 21:41:53 +02:00
Ahmed Yasin Koculu da905ec526 Adds 3rd party licenses to the nuget package. 2022-08-26 21:16:43 +02:00
Ahmed Yasin Koculu e75d0bd446 Adds compression level selection capability.. 2022-08-26 20:56:55 +02:00
Ahmed Yasin Koculu e388fb5179 Prevent multiple threads read same disk segment block. 2022-08-26 19:21:16 +02:00
Ahmed Yasin Koculu ab2563f8b6 Adds Brotli and Zstd compression methods. 2022-08-26 18:39:31 +02:00
Ahmed Yasin Koculu aabbecc59d Updates benchmark results. 2022-08-26 17:26:56 +02:00
Ahmed Yasin Koculu d26a6918a6 Improves circular cache. Drops slow ConcurrentDictionary lookups. 2022-08-26 16:54:48 +02:00
Ahmed Yasin Koculu 0ac7786ae7 Adds BlockCacheReplacementDuration configuration option. 2022-08-26 15:48:49 +02:00
Ahmed Yasin Koculu b112800a68 Fixes ticks / milliseconds confusion. (incosistent naming in .NET Environment.TickCount64 is not tick count but milliseconds count. DateTime.UTCNow.Ticks => is the ticks count) 2022-08-26 15:28:45 +02:00
Ahmed Yasin Koculu 21993f6dea Adds faster decompression for known blob sizes. 2022-08-26 00:05:42 +02:00
Ahmed Yasin Koculu 2862731730 Avoid block read to get last block length. 2022-08-25 23:39:27 +02:00
Ahmed Yasin Koculu 049aa8b43a Update benchmark with configs. 2022-08-25 23:24:14 +02:00
Ahmed Yasin Koculu 7d20899408 Improves iteration speed by avoiding circular block cache lookups. up to +25% 2022-08-25 22:29:06 +02:00
Ahmed Yasin Koculu 59e8e82495 Improves merge speed by avoiding dictionary lookups. +%20 2022-08-25 21:44:26 +02:00
Ahmed Yasin Koculu 7b277cd6df Improves API to support up to 2^63 key-value pairs. 2022-08-25 19:04:44 +02:00
Ahmed Yasin Koculu e257815ca6 Code cleanup. 2022-08-25 16:26:36 +02:00
Ahmed Yasin Koculu aac52ed9be Updates benchmark results. 2022-08-25 16:11:15 +02:00
Ahmed Yasin Koculu d2116edbde Adds LZ4 support. (Many Thanks to @xorxornop - Matt Ducker)
https://github.com/xorxornop/LZ4PCL
2022-08-25 15:41:01 +02:00
Ahmed Yasin Koculu 3576780537 Improves performance by avoiding cpu time queries for cache access ticks. 2022-08-25 13:34:46 +02:00
Ahmed Yasin Koculu 5e3ddc9d96 Adds maintainer periodic timer start/stop capability. 2022-08-25 12:51:01 +02:00
Ahmed Yasin Koculu 65ff442c57 Update docs. 2022-08-25 00:11:11 +02:00
Ahmed Yasin Koculu d137c01484 Check less files. 2022-08-24 23:47:27 +02:00
Ahmed Yasin Koculu c283495526 Updates readme. 2022-08-24 23:44:30 +02:00
Ahmed Yasin Koculu dbecaf3551 Updates docs. 2022-08-24 23:31:20 +02:00
Ahmed Yasin Koculu 3f946b131e Fix set length. 2022-08-24 23:31:07 +02:00
Ahmed Yasin Koculu 48a60b1473 Implements abstraction of ZoneTreeMaintainer. 2022-08-24 22:57:25 +02:00