From a9959498c539c6e63c15040132c574db99a53a5f Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Sat, 16 Feb 2019 23:28:29 +0100 Subject: [PATCH] Overwrite on insert --- src/blobsets.nim | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/blobsets.nim b/src/blobsets.nim index 077d2d2..fec0214 100644 --- a/src/blobsets.nim +++ b/src/blobsets.nim @@ -315,12 +315,12 @@ func insert(trie, l: BlobSet; depth: int): BlobSet = raiseAssert("cannot insert into cold node") of leafNode: if result.table[i].key == l.key: - raise newException(KeyError, "key collision in blob set") - var subtrie = newBlobSet() - subtrie = subtrie.insert(result.table[i], depth) - subtrie = subtrie.insert(l, depth) - result.table[i] = subtrie - assert(result.table[i].kind == hotNode) + result.table[i] = l + else: + var subtrie = newBlobSet() + subtrie = subtrie.insert(result.table[i], depth) + subtrie = subtrie.insert(l, depth) + result.table[i] = subtrie else: result.bitmap = result.bitmap or (1'u64 shl key.sparseIndex) result.table.insert(l, result.compactIndex(key))