From 529f9c8fec6c0567b4a89f89e101ebf1df1b3491 Mon Sep 17 00:00:00 2001
From: Cui Guoke <jingjinglake@gmail.com>
Date: Wed, 11 May 2022 22:48:21 +0800
Subject: [PATCH] Update matrixcube from 215b778d2f95 to cfc4bac02bb4 for its
 race fix; (#2470)

---
 go.mod                       |  2 +-
 go.sum                       |  4 ++--
 pkg/vm/driver/aoe/storage.go | 11 +----------
 3 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/go.mod b/go.mod
index 0ef6189c7..96b990fea 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 d06fac19b..73eb24c5e 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 06ccd938a..443e49198 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 {
-- 
GitLab