mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-10-06 10:57:51 +00:00
Merge pull request #1120 from molecula/fix-root-record-overflow
Fix rbf write root record iterator reset
This commit is contained in:
commit
5b8cda3c88
3 changed files with 26 additions and 1 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -10,3 +10,4 @@ release-pilosa-fsck.*.*.tar.gz
|
|||
/log.*
|
||||
/tourna.log.*
|
||||
pilosa
|
||||
*.dot
|
||||
|
|
|
|||
|
|
@ -181,7 +181,7 @@ func writeRootRecords(page []byte, itr *immutable.SortedMapIterator) (err error)
|
|||
|
||||
data, err = WriteRootRecord(data, &RootRecord{Name: name.(string), Pgno: pgno.(uint32)})
|
||||
if err != nil {
|
||||
itr.Prev()
|
||||
itr.Seek(name)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -486,6 +486,30 @@ func TestTx_Dump(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestTx_CreateBitmap(t *testing.T) {
|
||||
t.Run("Bulk", func(t *testing.T) {
|
||||
db := MustOpenDB(t)
|
||||
defer MustCloseDB(t, db)
|
||||
|
||||
tx, err := db.Begin(true)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer tx.Rollback()
|
||||
|
||||
if err := tx.CreateBitmap(fmt.Sprintf("%4000x", 0)); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if err := tx.CreateBitmap(fmt.Sprintf("%4000x", 1)); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if err := tx.CreateBitmap(fmt.Sprintf("%4000x", 2)); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := tx.Commit(); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func rbfName(index, field, view string, shard uint64) string {
|
||||
return string(txkey.Prefix(index, field, view, shard))
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue