Navigation Menu

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/text/currency: TestLinking fails on ppc64le, s390x #17538

Open
mwhudson opened this issue Oct 21, 2016 · 5 comments
Open

x/text/currency: TestLinking fails on ppc64le, s390x #17538

mwhudson opened this issue Oct 21, 2016 · 5 comments
Labels
NeedsFix The path to resolution is known, but the work has not been done.
Milestone

Comments

@mwhudson
Copy link
Contributor

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

1.7.3

What operating system and processor architecture are you using (go env)?

It's a ppc64le system running Ubuntu (various versions, version not important)

What did you do?

go test -v -p 1 golang.org/x/text/...

What did you expect to see?

Tests passing

What did you see instead?

--- FAIL: TestLinking (1.68s)
currency_test.go:155: size(symbols)-size(base) was 772; want > 2K

This was part of building for the distribution, you can see the full log at:

https://launchpadlibrarian.net/290258937/buildlog_ubuntu-zesty-ppc64el.golang-x-text_0.0~git20161013.0.c745997-1ubuntu1~ppa1_BUILDING.txt.gz

This passes with Go 1.6. But in general this test seems to be a bit of a hostage to the future. I think I'm going to add a distro patch disabling this (and the one in dict_test.go) for now.

@quentinmit quentinmit added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Oct 21, 2016
@quentinmit quentinmit added this to the Unreleased milestone Oct 21, 2016
@katiehockman
Copy link
Contributor

A similar issue is causing failures for multiple builds in text right now. The failures appear to be flaky, with no obvious culprit CL.

--- FAIL: TestLinking (2.13s)
    currency_test.go:155: size(symbols)-size(base) was 822; want > 2K
FAIL
FAIL	golang.org/x/text/currency	2.169s

linux-s390x-ibm: https://build.golang.org/log/2019c0bfd906c37ee9174386a66f69e1e9f71e92
openbsd-arm: https://build.golang.org/log/561cd7eb54add50a1d7a305893724d11b007f567

/cc @mpvl

@katiehockman
Copy link
Contributor

This is failing pretty consistently again for linux-s390x-ibm builds of x/text.
https://build.golang.org/log/a7351175181843160940f4d92c193d27690d9d8b

@ceseo
Copy link
Contributor

ceseo commented Feb 11, 2019

/cc @laboger

@gopherbot
Copy link

Change https://golang.org/cl/170783 mentions this issue: currency: disable flaky TestLinking

@bradfitz bradfitz added the NeedsFix The path to resolution is known, but the work has not been done. label Apr 5, 2019
@gopherbot gopherbot removed the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Apr 5, 2019
gopherbot pushed a commit to golang/text that referenced this issue Apr 5, 2019
It fails on a bunch of builders and it's not clear what it's testing.

It hasn't been fixed since Oct 2016 so it gets disabled.

Updates golang/go#17538

Change-Id: I0f454c46b31b8306cc604c36ec6d06cc6ad703b5
Reviewed-on: https://go-review.googlesource.com/c/text/+/170783
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
@bradfitz
Copy link
Contributor

bradfitz commented Apr 5, 2019

If you resurrect this, see net/http's test:

// Test that cmd/go doesn't link in the HTTP server.                                                                                                                                                   
//                                                                                                                                                                                                     
// This catches accidental dependencies between the HTTP transport and                                                                                                                                 
// server code.                                                                                                                                                                                        
func TestCmdGoNoHTTPServer(t *testing.T) {
        t.Parallel()
        goBin := testenv.GoToolPath(t)
        out, err := exec.Command(goBin, "tool", "nm", goBin).CombinedOutput()
        if err != nil {
                t.Fatalf("go tool nm: %v: %s", err, out)
        }
        wantSym := map[string]bool{
                // Verify these exist: (sanity checking this test)                                                                                                                                     
                "net/http.(*Client).Get":          true,
                "net/http.(*Transport).RoundTrip": true,

                // Verify these don't exist:                                                                                                                                                           
                "net/http.http2Server":           false,
                "net/http.(*Server).Serve":       false,
                "net/http.(*ServeMux).ServeHTTP": false,
                "net/http.DefaultServeMux":       false,
        }
        for sym, want := range wantSym {
                got := bytes.Contains(out, []byte(sym))
                if !want && got {
                        t.Errorf("cmd/go unexpectedly links in HTTP server code; found symbol %q in cmd/go", sym)
                }
                if want && !got {
                        t.Errorf("expected to find symbol %q in cmd/go; not found", sym)
                }
        }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsFix The path to resolution is known, but the work has not been done.
Projects
None yet
Development

No branches or pull requests

7 participants