diff --git a/go.mod b/go.mod index 0ef6189c7e0738f7589294e683b1480082273430..96b990feab7fb2f358230cdccd3d002452cae869 100644 --- a/go.mod +++ b/go.mod @@ -18,7 +18,7 @@ require ( github.com/google/btree v1.0.1 github.com/google/gofuzz v1.2.0 github.com/lni/goutils v1.3.0 - github.com/matrixorigin/matrixcube v0.3.1-0.20220406054210-215b778d2f95 + github.com/matrixorigin/matrixcube v0.3.1-0.20220511071845-cfc4bac02bb4 github.com/matrixorigin/simdcsv v0.0.0-20210926114300-591bf748a770 github.com/panjf2000/ants/v2 v2.4.6 github.com/pierrec/lz4 v2.6.1+incompatible diff --git a/go.sum b/go.sum index d06fac19b25b93e5978f1c7ae1b73f7555b6df42..73eb24c5ee1bbaa3b0048665c030072455a2b6f6 100644 --- a/go.sum +++ b/go.sum @@ -414,8 +414,8 @@ github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czP github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/matrixorigin/etcd/raft/v3 v3.5.1-0.20210824022435-0203115049c2 h1:s7CQEsRxL8+/sAPW23uIqpwR+M8Aje81AH6w3/ZkxQw= github.com/matrixorigin/etcd/raft/v3 v3.5.1-0.20210824022435-0203115049c2/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= -github.com/matrixorigin/matrixcube v0.3.1-0.20220406054210-215b778d2f95 h1:ijtumZhWxbpJW2pe6BQpjyt5EHZsWwRr4BFUCKDpH7o= -github.com/matrixorigin/matrixcube v0.3.1-0.20220406054210-215b778d2f95/go.mod h1:la08nf8VKIcYmAH/uc/stLiOLzwUJUXluFpaAbfIq+A= +github.com/matrixorigin/matrixcube v0.3.1-0.20220511071845-cfc4bac02bb4 h1:dRHX6Z7DzZ2nNaunhXWVAnKIxWOhpDmVUvsGnHiNxn0= +github.com/matrixorigin/matrixcube v0.3.1-0.20220511071845-cfc4bac02bb4/go.mod h1:la08nf8VKIcYmAH/uc/stLiOLzwUJUXluFpaAbfIq+A= github.com/matrixorigin/simdcsv v0.0.0-20210926114300-591bf748a770 h1:apc228jeCtUvvfkaydzJygk1jdH8y+THma2o73Yv4Vg= github.com/matrixorigin/simdcsv v0.0.0-20210926114300-591bf748a770/go.mod h1:A7O+LRuZcr/BbOLsMzM/q69ZmoLENUMpptYG0pPzTFQ= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= diff --git a/pkg/vm/driver/aoe/storage.go b/pkg/vm/driver/aoe/storage.go index 06ccd938a40db80ecb2f385bcada01a8576ef0fa..443e49198dd058ba4e0f349521cece421f647f0c 100644 --- a/pkg/vm/driver/aoe/storage.go +++ b/pkg/vm/driver/aoe/storage.go @@ -115,16 +115,7 @@ func (s *Storage) adjustFeature() { //Stats returns the stats of the Storage func (s *Storage) Stats() stats.Stats { - // https://github.com/matrixorigin/matrixone/issues/2447 - // TODO: Implement a method with copy semantics for stats.Stats. - // Avoid race condition via `atomic` primitive. - return stats.Stats{ - WrittenKeys: atomic.LoadUint64(&s.stats.WrittenKeys), - WrittenBytes: atomic.LoadUint64(&s.stats.WrittenBytes), - ReadKeys: atomic.LoadUint64(&s.stats.ReadKeys), - ReadBytes: atomic.LoadUint64(&s.stats.ReadBytes), - SyncCount: atomic.LoadUint64(&s.stats.SyncCount), - } + return s.stats.Copy() } func (s *Storage) Feature() storage.Feature {