diff --git a/Makefile b/Makefile index b7a74062e..94399afaf 100644 --- a/Makefile +++ b/Makefile @@ -153,23 +153,23 @@ docker-test: # The \-\-\- FAIL avoids counting the extra two FAIL strings at then bottom of log.topt. topt: go test -v -tags='$(BUILD_TAGS)' $(TESTFLAGS) $(NOCHECKPTR) 2>&1 | tee log.topt.roar - @echo " log.topt green: \c"; cat log.topt.roar | grep PASS |wc -l - @echo " log.topt red: \c"; cat log.topt.roar | grep '\-\-\- FAIL' |wc -l + @echo " log.topt.roar green: \c"; cat log.topt.roar | grep PASS |wc -l + @echo " log.topt.roar red: \c"; cat log.topt.roar | grep '\-\-\- FAIL' |wc -l topt-badger: PILOSA_TXSRC=badger go test -v -tags='$(BUILD_TAGS)' $(TESTFLAGS) $(NOCHECKPTR) 2>&1 | tee log.topt.badger - @echo " log.topt green: \c"; cat log.topt.badger | grep PASS |wc -l - @echo " log.topt red: \c"; cat log.topt.badger | grep '\-\-\- FAIL' |wc -l + @echo " log.topt.badger green: \c"; cat log.topt.badger | grep PASS |wc -l + @echo " log.topt.badger red: \c"; cat log.topt.badger | grep '\-\-\- FAIL' |wc -l topt-rbf: PILOSA_TXSRC=rbf go test -v -tags='$(BUILD_TAGS)' $(TESTFLAGS) $(NOCHECKPTR) 2>&1 | tee log.topt.rbf - @echo " log.topt green: \c"; cat log.topt.rbf | grep PASS |wc -l - @echo " log.topt red: \c"; cat log.topt.rbf | grep '\-\-\- FAIL' |wc -l + @echo " log.topt.rbf green: \c"; cat log.topt.rbf | grep PASS |wc -l + @echo " log.topt.rbf red: \c"; cat log.topt.rbf | grep '\-\-\- FAIL' |wc -l topt-race: go test -race -v -tags='$(BUILD_TAGS)' $(TESTFLAGS) $(NOCHECKPTR) 2>&1 | tee log.topt.race - @echo " log.topt green: \c"; cat log.topt.race | grep PASS |wc -l - @echo " log.topt red: \c"; cat log.topt.race | grep '\-\-\- FAIL' |wc -l + @echo " log.topt.race green: \c"; cat log.topt.race | grep PASS |wc -l + @echo " log.topt.race red: \c"; cat log.topt.race | grep '\-\-\- FAIL' |wc -l # Run golangci-lint golangci-lint: require-golangci-lint diff --git a/badger_test.go b/badger_test.go index 354afb684..4f2f09f52 100644 --- a/badger_test.go +++ b/badger_test.go @@ -12,6 +12,11 @@ // See the License for the specific language governing permissions and // limitations under the License. +// badgerdb builds but won't run in 32-bit 386 world, as of 2020 July 20. +// See https://github.com/dgraph-io/badger/issues/1384 for any progress. +// What we see is that the value-log allocations immediately run out of +// memory. So we turn off 386 with a build tag to keep the .circleci happy. + // +build !386 package pilosa diff --git a/fragment_internal_test.go b/fragment_internal_test.go index 16fca1dfc..bf1a0116d 100644 --- a/fragment_internal_test.go +++ b/fragment_internal_test.go @@ -3934,8 +3934,10 @@ func TestImportClearRestart(t *testing.T) { if err != nil { t.Fatalf("initial small import: %v", err) } - if expOpN <= maxOpN && f.opN != expOpN { - t.Errorf("unexpected opN - %d is not %d", f.opN, expOpN) + if idx.Txf.TxType() == roaringFragmentFilesTxn { + if expOpN <= maxOpN && f.opN != expOpN { + t.Errorf("unexpected opN - %d is not %d", f.opN, expOpN) + } } check(t, tx, f, exp) @@ -3952,8 +3954,10 @@ func TestImportClearRestart(t *testing.T) { t.Fatalf("reopening fragment: %v", err) } - if expOpN <= maxOpN && f.opN != expOpN { - t.Errorf("unexpected opN after close/open %d is not %d", f.opN, expOpN) + if idx.Txf.TxType() == roaringFragmentFilesTxn { + if expOpN <= maxOpN && f.opN != expOpN { + t.Errorf("unexpected opN after close/open %d is not %d", f.opN, expOpN) + } } check(t, tx, f, exp) @@ -3962,6 +3966,8 @@ func TestImportClearRestart(t *testing.T) { f2.MaxOpN = maxOpN f2.CacheType = f.CacheType + panicOn(tx.Commit()) // match the f.closeStorage which overlaps the f2 creation. + tx2 := idx.Txf.NewTx(Txo{Write: writable, Index: idx, Fragment: f2}) defer tx2.Rollback() @@ -3969,15 +3975,16 @@ func TestImportClearRestart(t *testing.T) { if err != nil { t.Fatalf("closing storage: %v", err) } - panicOn(tx.Commit()) // match the f.closeStorage which overlaps the f2 creation. err = f2.Open() if err != nil { t.Fatalf("opening new fragment: %v", err) } - if expOpN <= maxOpN && f2.opN != expOpN { - t.Errorf("unexpected opN after close/open %d is not %d", f2.opN, expOpN) + if idx.Txf.TxType() == roaringFragmentFilesTxn { + if expOpN <= maxOpN && f2.opN != expOpN { + t.Errorf("unexpected opN after close/open %d is not %d", f2.opN, expOpN) + } } check(t, tx2, f2, exp) @@ -3996,6 +4003,8 @@ func TestImportClearRestart(t *testing.T) { check(t, tx2, f2, exp) + panicOn(tx2.Commit()) + f3 := newFragment(NewHolder(DefaultPartitionN), f2.path, "i", "f", viewStandard, 0, 0) f3.MaxOpN = maxOpN f3.CacheType = f.CacheType @@ -4007,7 +4016,6 @@ func TestImportClearRestart(t *testing.T) { if err != nil { t.Fatalf("f2 closing storage: %v", err) } - panicOn(tx2.Commit()) err = f3.Open() if err != nil {