From 14911bfdff3b94a667a671c436eb4dbae2a34a04 Mon Sep 17 00:00:00 2001 From: Seebs Date: Tue, 23 Nov 2021 10:00:08 -0600 Subject: [PATCH 1/2] Perform sanity check only if we have the storage it runs on SanityCheckMapping is specific to roaring bitmaps stored in-memory, if we have an RBF backend, we shouldn't even try it, it'll just panic. This implies that, in whatever circumstance we were hitting this, we were getting an error back from the backend. We still need to address that error, but to do that we need to know what it was, which we don't if we panic. --- fragment.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fragment.go b/fragment.go index 674f2da65..ad9283551 100644 --- a/fragment.go +++ b/fragment.go @@ -2485,7 +2485,7 @@ func (f *fragment) importPositions(tx Tx, set, clear []uint64, rowSet map[uint64 err = doFunc() } - if err != nil { + if err != nil && f.storage != nil { // we got an error. it's possible that the error indicates that something went wrong. mappedIn, mappedOut, unmappedIn, errs, e2 := f.storage.SanityCheckMapping(f.currdata.from, f.currdata.to) if errs != 0 { From 8b7d429417d2e430127941d809ce602e0efad64d Mon Sep 17 00:00:00 2001 From: tgruben Date: Mon, 29 Nov 2021 09:18:44 -0600 Subject: [PATCH 2/2] Update README.md --- rbf/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rbf/README.md b/rbf/README.md index 4f6efa072..cbc5b74a7 100644 --- a/rbf/README.md +++ b/rbf/README.md @@ -93,12 +93,12 @@ The leaf page contains a series of cells with the header of: [8] highbits [4] flag [4] child count - [*] array or RLE data + [*] array or RLE data or Handle (a pageno) to Bitmap Data -### Bitmap page +### Bitmap Data page -The data for the bitmap page takes up the entire 8KB. +The data for the bitmap data page takes up the entire 8KB. ## Proof of Concept Notes