Ahmed Yasin Koculu
80dff54867
Add delete value confgiuration validation to prevent unexpected not working delete calls.
2023-06-17 00:21:15 +02:00
Ahmed Yasin Koculu
f2d6006e6f
Remove unused pragma directive.
2023-06-08 15:09:55 +02:00
Ahmed Yasin Koculu
606c0a73a0
Fix BTree deadlock on split. ( #36 )
2023-05-29 06:35:44 +02:00
Ahmed Yasin Koculu
5e67bdf803
Reduce code duplication ( #35 )
...
* Remove duplicated binary search code.
* Remove lambdas when possible.
2023-05-28 07:16:36 +02:00
Ahmed Yasin Koculu
46ef5d74f9
Remove redundant unsafe flags. ( #34 )
2023-05-28 02:36:31 +02:00
Ahmed Yasin Koculu
fe9b4be44f
Refactor disk segments ( #33 )
...
* Organize segments subfolders.
* Create subclass disk segments.
* Mark base DiskSegment abstract and activate derived disk segments.
* Perform disposing correctly.
* Refactor namespaces to match containing folders.
* Relocate DataHeaderDevice to the corresponding disk segments.
2023-05-28 02:17:14 +02:00
ksemenenko
9ba1393e34
Add descending comparers for primitive types ( #32 )
2023-05-27 21:39:27 +02:00
Ahmed Yasin Koculu
dc9a2b9f54
Mark new disk segment null after the event is invoked. ( #31 )
2023-05-27 18:54:13 +02:00
Ahmed Yasin Koculu
64f3fb8a33
Code analysis cleanup ( #30 )
...
* Enable code analysis and start cleanup warnings.
* Cleanup default value assignment warnings and more.
* Ignore and fix some warnings.
* Clear naming and reliability warnings.
* Fix disposal related warnings.
* Create auto generated equality operators.
* Seal classes.
2023-05-27 07:48:14 +02:00
Ahmed Yasin Koculu
bae3be27c0
Minor code and CI improvements ( #29 )
...
* Improve QueueItemsChunk construction.
* Add publish nuget package workflow.
2023-05-27 00:44:47 +02:00
Ahmed Yasin Koculu
3e960cef03
Improve (%41) read speed by replacing concurrent queue ( #28 )
...
* Add single producer and single consumer queue using LIFO enumeration capability..
* Use the new queue. Performance improvementr for reads: %41
* Usae inline functions instead of lambda delegates.
2023-05-27 00:04:49 +02:00
Kirill Osenkov
8ad146aaac
Remove duplicated code ( #27 )
2023-05-23 01:44:51 +02:00
Ahmed Yasin Koculu
a75d66887a
Fix typo bug on Int64Serializer helper class. ( #26 )
2023-04-05 02:54:12 +02:00
Ahmed Yasin Koculu
be17ec7713
Fix bug on seeking tp multi part disk segment part borders. ( #23 )
2023-01-14 22:15:46 +01:00
Ahmed Yasin Koculu
55981d0f52
Fix sparse array fast return bug. ( #21 )
...
* Fix sparse array fast return bug.
2023-01-14 09:58:43 +01:00
Ahmed Yasin Koculu
57bdfe1971
Add prefix search tests using iterators. ( #20 )
2023-01-08 16:42:39 +01:00
Ahmed Yasin Koculu
a5fbde6251
Reduce CPU instructions on byte array Crc32 computation. ( #18 )
...
* Reduce CPU instructions on byte array Crc32 computation.
* Create Crc32 classs per hardware to reduce CPU instructions.
* Reduce code duplication.
* Reuse LogEntry read and append functions.
2022-11-20 22:58:40 +01:00
Ahmed Yasin Koculu
379da693ad
Added Agressive inline compiler hint.
2022-11-14 21:27:33 +01:00
Dmitriy Korolev
1ee8900f64
Arm support ( #16 )
...
* Add ARM support
* Add ARM disclamer + format
2022-11-14 08:53:32 +01:00
Ahmed Yasin Koculu
65e67e933b
Upgrade Framework to .Net 7.0.
2022-11-13 20:56:39 +01:00
Ahmed Yasin Koculu
6568c7bdd9
Fix typo in exception message.
2022-11-13 20:19:08 +01:00
Ahmed Yasin Koculu
4194d34f9b
Add wal corruption exception class tests.
2022-10-20 18:18:47 +02:00
Ahmed Yasin Koculu
8ad8311770
Fixed issue caused by AggregateException does not accept null values.
2022-10-20 18:06:08 +02:00
Ahmed Yasin Koculu
e044a83296
Fix null reference exception.
2022-10-20 17:42:39 +02:00
Ahmed Yasin Koculu
e76aa3e720
Bug/11 single character string serializer ( #13 )
...
* Fix string serializer index out of range issue.
* Improve exception message.
2022-10-20 17:11:58 +02:00
Ahmed Yasin Koculu
7e1fba3a15
Unseal benchmark dot net classes.
2022-09-14 18:22:54 +02:00
Ahmed Yasin Koculu
c8921cb158
Seal all classes. https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-6/#peanut-butter
2022-09-14 13:11:42 +02:00
Ahmed Yasin Koculu
b88e95bb28
Set mutable segment volatile.
2022-09-14 13:05:27 +02:00
Ahmed Yasin Koculu
77d9bf87fd
Mark disk segment volatile.
2022-09-03 02:59:07 +02:00
Ahmed Yasin Koculu
59b81f87a7
Simplify benchmarks.
2022-09-03 02:19:05 +02:00
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