Skip to content

Commit ff6e83f

Browse files
committed
FIX: removal corruption caused by stale _lastBucket pointing into freed buckets.
Correct chain unlinking so tail removal no longer leaves dangling Next links. Ensure moved entry slot updates the owning bucket after compaction. Introduce kickout-on-insert to restore home-bucket invariant for foreign heads. Prevents overlapping chains and hard-to-reproduce lookup failures.
1 parent d1d2e30 commit ff6e83f

File tree

18 files changed

+3881
-2401
lines changed

18 files changed

+3881
-2401
lines changed

src/Concurrent/CMap.cs

Lines changed: 0 additions & 1083 deletions
This file was deleted.

src/Core/BlitzMap.cs

Lines changed: 699 additions & 467 deletions
Large diffs are not rendered by default.

src/Core/CMap.cs

Lines changed: 1083 additions & 0 deletions
Large diffs are not rendered by default.

src/Core/RobinHoodMap.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
#nullable enable
1414

15-
namespace Faster.Map;
15+
namespace Faster.Map.Core;
1616

1717
/// <summary>
1818
/// A specialized implementation of <see cref="RobinhoodMap{TKey, TValue, THasher}"/> that

0 commit comments

Comments
 (0)