aboutsummaryrefslogtreecommitdiff
path: root/retry.go
diff options
context:
space:
mode:
Diffstat (limited to 'retry.go')
-rw-r--r--retry.go24
1 files changed, 0 insertions, 24 deletions
diff --git a/retry.go b/retry.go
deleted file mode 100644
index 1adcfd0..0000000
--- a/retry.go
+++ /dev/null
@@ -1,24 +0,0 @@
-package stm
-
-import (
- "runtime/pprof"
-)
-
-var retries = pprof.NewProfile("stmRetries")
-
-// retry is a sentinel value. When thrown via panic, it indicates that a
-// transaction should be retried.
-var retry = &struct{}{}
-
-// catchRetry returns true if fn calls tx.Retry.
-func catchRetry[R any](fn Operation[R], tx *Tx) (result R, gotRetry bool) {
- defer func() {
- if r := recover(); r == retry {
- gotRetry = true
- } else if r != nil {
- panic(r)
- }
- }()
- result = fn(tx)
- return
-}