浏览代码

lib/db: Undo adding user info to panic msgs (ref #7029) (#7040)

Simon Frei 5 年之前
父节点
当前提交
01a7ef3b0f
共有 2 个文件被更改,包括 10 次插入8 次删除
  1. 8 7
      lib/db/lowlevel.go
  2. 2 1
      lib/db/set.go

+ 8 - 7
lib/db/lowlevel.go

@@ -817,7 +817,8 @@ func (db *Lowlevel) getMetaAndCheck(folder string) *metadataTracker {
 	var err error
 	var err error
 	defer func() {
 	defer func() {
 		if err != nil && !backend.IsClosed(err) {
 		if err != nil && !backend.IsClosed(err) {
-			warnAndPanic(err)
+			l.Warnf("Fatal error: %v", err)
+			obfuscateAndPanic(err)
 		}
 		}
 	}()
 	}()
 
 
@@ -945,14 +946,16 @@ func (db *Lowlevel) verifyLocalSequence(curSeq int64, folder string) bool {
 
 
 	t, err := db.newReadOnlyTransaction()
 	t, err := db.newReadOnlyTransaction()
 	if err != nil {
 	if err != nil {
-		warnAndPanic(err)
+		l.Warnf("Fatal error: %v", err)
+		obfuscateAndPanic(err)
 	}
 	}
 	ok := true
 	ok := true
 	if err := t.withHaveSequence([]byte(folder), curSeq+1, func(fi protocol.FileIntf) bool {
 	if err := t.withHaveSequence([]byte(folder), curSeq+1, func(fi protocol.FileIntf) bool {
 		ok = false // we got something, which we should not have
 		ok = false // we got something, which we should not have
 		return false
 		return false
 	}); err != nil && !backend.IsClosed(err) {
 	}); err != nil && !backend.IsClosed(err) {
-		warnAndPanic(err)
+		l.Warnf("Fatal error: %v", err)
+		obfuscateAndPanic(err)
 	}
 	}
 	t.close()
 	t.close()
 
 
@@ -1165,8 +1168,6 @@ func unchanged(nf, ef protocol.FileIntf) bool {
 
 
 var ldbPathRe = regexp.MustCompile(`(open|write|read) .+[\\/].+[\\/]index[^\\/]+[\\/][^\\/]+: `)
 var ldbPathRe = regexp.MustCompile(`(open|write|read) .+[\\/].+[\\/]index[^\\/]+[\\/][^\\/]+: `)
 
 
-func warnAndPanic(err error) {
-	l.Warnf("Fatal error: %v", err)
-	msg := ldbPathRe.ReplaceAllString(err.Error(), "$1 x: ")
-	panic(msg)
+func obfuscateAndPanic(err error) {
+	panic(ldbPathRe.ReplaceAllString(err.Error(), "$1 x: "))
 }
 }

+ 2 - 1
lib/db/set.go

@@ -531,5 +531,6 @@ func fatalError(err error, opStr string, db *Lowlevel) {
 			}
 			}
 		}
 		}
 	}
 	}
-	warnAndPanic(fmt.Errorf("%v: %w:", opStr, err))
+	l.Warnf("Fatal error: %v: %v", opStr, err)
+	obfuscateAndPanic(err)
 }
 }