diff --git a/database/ffldb/blockio_test.go b/database/ffldb/blockio_test.go index 0da53dc41..d51a8bdd1 100644 --- a/database/ffldb/blockio_test.go +++ b/database/ffldb/blockio_test.go @@ -29,7 +29,11 @@ func TestDeleteFile(t *testing.T) { for _, test := range tests { func() { pdb := newTestDb("TestDeleteFile", t) - defer pdb.Close() + defer func() { + if !pdb.closed { + pdb.Close() + } + }() err := pdb.Update(func(dbTx database.Tx) error { dbTx.StoreBlock(testBlock) @@ -39,6 +43,11 @@ func TestDeleteFile(t *testing.T) { t.Fatalf("TestDeleteFile: Error storing block: %s", err) } + err = pdb.Close() + if err != nil { + t.Fatalf("TestDeleteFile: Error closing file before deletion: %s", err) + } + err = pdb.store.deleteFile(test.fileNum) if (err != nil) != test.expectedErr { t.Errorf("TestDeleteFile: %d: Expected error status: %t, but got: %t", diff --git a/database/ffldb/common_test.go b/database/ffldb/common_test.go index 9a070dcb2..cd0dea150 100644 --- a/database/ffldb/common_test.go +++ b/database/ffldb/common_test.go @@ -13,7 +13,7 @@ import ( ) func newTestDb(testName string, t *testing.T) *db { - dbPath := path.Join(os.TempDir(), "db_test") + dbPath := path.Join(os.TempDir(), "db_test", testName) err := os.RemoveAll(dbPath) if err != nil && !os.IsNotExist(err) { t.Fatalf("%s: Error deleting database folder before starting: %s", testName, err) diff --git a/database/ffldb/dbcache.go b/database/ffldb/dbcache.go index 1abe95392..688be525b 100644 --- a/database/ffldb/dbcache.go +++ b/database/ffldb/dbcache.go @@ -533,7 +533,7 @@ func (c *dbCache) flush() error { func (c *dbCache) needsFlush(tx *transaction) bool { // A flush is needed when more time has elapsed than the configured // flush interval. - if time.Since(c.lastFlush) > c.flushInterval { + if time.Since(c.lastFlush) >= c.flushInterval { return true }