diff --git a/internal/unionstore/memdb_art.go b/internal/unionstore/memdb_art.go index c7c1b21d9..af2db73f7 100644 --- a/internal/unionstore/memdb_art.go +++ b/internal/unionstore/memdb_art.go @@ -138,6 +138,15 @@ func (db *artDBWithContext) BatchGet(ctx context.Context, keys [][]byte) (map[st return m, nil } +// Dirty implements the MemBuffer interface. +func (db *artDBWithContext) Dirty() bool { + if !db.skipMutex { + db.RLock() + defer db.RUnlock() + } + return db.ART.Dirty() +} + // GetMetrics implements the MemBuffer interface. func (db *artDBWithContext) GetMetrics() Metrics { return Metrics{} } diff --git a/internal/unionstore/memdb_rbt.go b/internal/unionstore/memdb_rbt.go index c805f4993..4cac5347c 100644 --- a/internal/unionstore/memdb_rbt.go +++ b/internal/unionstore/memdb_rbt.go @@ -148,6 +148,15 @@ func (db *rbtDBWithContext) BatchGet(ctx context.Context, keys [][]byte) (map[st return m, nil } +// Dirty implements the MemBuffer interface. +func (db *rbtDBWithContext) Dirty() bool { + if !db.skipMutex { + db.RLock() + defer db.RUnlock() + } + return db.RBT.Dirty() +} + // GetMetrics implements the MemBuffer interface. func (db *rbtDBWithContext) GetMetrics() Metrics { return Metrics{} }