lib/sync: Add option for sasha-s/go-deadlock
This commit is contained in:
@@ -13,6 +13,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/syncthing/syncthing/lib/logger"
|
||||
"github.com/sasha-s/go-deadlock"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -22,14 +23,15 @@ var (
|
||||
// We make an exception in this package and have an actual "if debug { ...
|
||||
// }" variable, as it may be rather performance critical and does
|
||||
// nonstandard things (from a debug logging PoV).
|
||||
debug = strings.Contains(os.Getenv("STTRACE"), "sync") || os.Getenv("STTRACE") == "all"
|
||||
debug = strings.Contains(os.Getenv("STTRACE"), "sync") || os.Getenv("STTRACE") == "all"
|
||||
useDeadlock = os.Getenv("STDEADLOCK") != ""
|
||||
)
|
||||
|
||||
func init() {
|
||||
l.SetDebug("sync", strings.Contains(os.Getenv("STTRACE"), "sync") || os.Getenv("STTRACE") == "all")
|
||||
|
||||
if n, err := strconv.Atoi(os.Getenv("STLOCKTHRESHOLD")); err == nil {
|
||||
threshold = time.Duration(n) * time.Millisecond
|
||||
deadlock.Opts.DeadlockTimeout = threshold = time.Duration(n) * time.Millisecond
|
||||
}
|
||||
l.Debugf("Enabling lock logging at %v threshold", threshold)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user