aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIssac Trotts <issactrotts@google.com>2018-08-01 21:05:03 -0700
committerIan Lance Taylor <iant@golang.org>2018-08-02 21:56:53 +0000
commit25aaeaa935484e3c341ef8a411069d7dd58afcfa (patch)
tree5cd3ea8bc6177c900ab6b369c6b3df42442f6416
parent6eabfab438fa504df234a079411a3b153257b338 (diff)
downloadgo-25aaeaa935484e3c341ef8a411069d7dd58afcfa.tar.xz
cmd/go: no longer eval symlinks in inDir
Evaluating the symlinks was slowing down test cache checks. Fixes #26562 Fixes #26726 ijt:~/gopath/src/issue26562$ cat foo_test.go package foo_test import ( "fmt" "os" "path/filepath" "testing" ) // package and imports snipped func TestCache(t *testing.T) { tmp := os.TempDir() for i := 0; i < 1000000; i++ { os.Stat(filepath.Join(tmp, fmt.Sprintf("%d", i))) } } ijt:~/gopath/src/issue26562$ time ~/github/go/bin/go test -count=1 PASS ok issue26562 9.444s real 0m10.021s user 0m2.344s sys 0m7.835s ijt:~/gopath/src/issue26562$ time ~/github/go/bin/go test . ok issue26562 (cached) real 0m0.802s user 0m0.551s sys 0m0.306s Change-Id: I3ce7f7b68bb5b9e802069f277e79e1ed3c162622 Reviewed-on: https://go-review.googlesource.com/127635 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-rw-r--r--src/cmd/go/internal/test/test.go10
1 files changed, 1 insertions, 9 deletions
diff --git a/src/cmd/go/internal/test/test.go b/src/cmd/go/internal/test/test.go
index d6fcc2a474..3b6ad049ed 100644
--- a/src/cmd/go/internal/test/test.go
+++ b/src/cmd/go/internal/test/test.go
@@ -1448,15 +1448,7 @@ func computeTestInputsID(a *work.Action, testlog []byte) (cache.ActionID, error)
}
func inDir(path, dir string) bool {
- if str.HasFilePathPrefix(path, dir) {
- return true
- }
- xpath, err1 := filepath.EvalSymlinks(path)
- xdir, err2 := filepath.EvalSymlinks(dir)
- if err1 == nil && err2 == nil && str.HasFilePathPrefix(xpath, xdir) {
- return true
- }
- return false
+ return str.HasFilePathPrefix(path, dir)
}
func hashGetenv(name string) cache.ActionID {