Ver código fonte

storage: extend timeout for slow CI

1. extend timeout

2. print out stacktrace. When it fails again, we can get more confidence that the
failure is caused by slow IO.
Xiang Li 10 anos atrás
pai
commit
0cba12d991
1 arquivos alterados com 6 adições e 1 exclusões
  1. 6 1
      storage/kvstore_test.go

+ 6 - 1
storage/kvstore_test.go

@@ -20,6 +20,7 @@ import (
 	"math"
 	"math"
 	"os"
 	"os"
 	"reflect"
 	"reflect"
+	"runtime"
 	"testing"
 	"testing"
 	"time"
 	"time"
 
 
@@ -455,7 +456,11 @@ func TestTxnBlockBackendForceCommit(t *testing.T) {
 	s.TxnEnd(id)
 	s.TxnEnd(id)
 	select {
 	select {
 	case <-done:
 	case <-done:
-	case <-time.After(time.Second):
+	case <-time.After(5 * time.Second): // wait 5 seconds for CI with slow IO
+		// print out stack traces of all routines if there is a failure
+		stackTrace := make([]byte, 8*1024)
+		n := runtime.Stack(stackTrace, true)
+		t.Error(string(stackTrace[:n]))
 		t.Fatalf("failed to execute ForceCommit")
 		t.Fatalf("failed to execute ForceCommit")
 	}
 	}
 }
 }