From 250b0acac488af9576d98907a241ba6c6d06b64d Mon Sep 17 00:00:00 2001 From: Ted Yu Date: Wed, 15 Jan 2020 16:57:12 -0800 Subject: [PATCH] mvcc: check the error return in defragdb (#11524) Co-authored-by: yutedz <54038175+yutedz@users.noreply.github.com> --- mvcc/backend/backend.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mvcc/backend/backend.go b/mvcc/backend/backend.go index 9a96bee2a..92cb843cb 100644 --- a/mvcc/backend/backend.go +++ b/mvcc/backend/backend.go @@ -492,7 +492,7 @@ func defragdb(odb, tmpdb *bolt.DB, limit int) error { } tmpb.FillPercent = 0.9 // for seq write in for each - b.ForEach(func(k, v []byte) error { + if pErr := b.ForEach(func(k, v []byte) error { count++ if count > limit { err = tmptx.Commit() @@ -509,7 +509,9 @@ func defragdb(odb, tmpdb *bolt.DB, limit int) error { count = 0 } return tmpb.Put(k, v) - }) + }); pErr != nil { + return pErr + } } return tmptx.Commit()