- 26 Mar, 2014 2 commits
-
-
Andrew Gerrand authored
LGTM=josharian R=golang-codereviews, josharian CC=golang-codereviews https://golang.org/cl/80220043
-
Alex Brainman authored
Fixes windows/amd64 build. LGTM=rsc R=golang-codereviews, rsc CC=golang-codereviews https://golang.org/cl/79470046
-
- 25 Mar, 2014 15 commits
-
-
Andrew Gerrand authored
LGTM=r R=r CC=golang-codereviews https://golang.org/cl/79890046
-
Brad Fitzpatrick authored
Disable it until it's debugged so it doesn't hide other real problems on Windows. The test was known to be unreliable anyway (which is why it only needed 1 of 20 runs to pass), but apparently it never passes on Windows. Figure out why later. Update #7634 LGTM=alex.brainman R=adg, alex.brainman CC=golang-codereviews https://golang.org/cl/80110043
-
Keith Randall authored
See http://golang.org/s/go13heapdump for the file format. LGTM=rsc R=rsc, bradfitz, dvyukov, khr CC=golang-codereviews https://golang.org/cl/37540043
-
Ian Lance Taylor authored
TBR=rsc CC=golang-codereviews https://golang.org/cl/80090043
-
Keith Randall authored
Change two-bit stack map entries to encode: 0 = dead 1 = scalar 2 = pointer 3 = multiword If multiword, the two-bit entry for the following word encodes: 0 = string 1 = slice 2 = iface 3 = eface That way, during stack scanning we can check if a string is zero length or a slice has zero capacity. We can avoid following the contained pointer in those cases. It is safe to do so because it can never be dereferenced, and it is desirable to do so because it may cause false retention of the following block in memory. Slice feature turned off until issue 7564 is fixed. Update #7549 LGTM=rsc R=golang-codereviews, bradfitz, rsc CC=golang-codereviews https://golang.org/cl/76380043
-
Ian Lance Taylor authored
The existing code did not have a clear notion of whether memory has been actually reserved. It checked based on whether in 32-bit mode or 64-bit mode and (on GNU/Linux) the requested address, but it confused the requested address and the returned address. LGTM=rsc R=rsc, dvyukov CC=golang-codereviews, michael.hudson https://golang.org/cl/79610043
-
Brad Fitzpatrick authored
This the second part of making persistent HTTPS connections to certain servers (notably Amazon) robust. See the story in part 1: https://golang.org/cl/76400046/ This is the http Transport change that notes whether our net.Conn.Read has ever seen an EOF. If it has, then we use that as an additional signal to not re-use that connection (in addition to the HTTP response headers) Fixes #3514 LGTM=rsc R=agl, rsc CC=golang-codereviews https://golang.org/cl/79240044
-
Brad Fitzpatrick authored
Update #3514 An io.Reader is permitted to return either (n, nil) or (n, io.EOF) on EOF or other error. The tls package previously always returned (n, nil) for a read of size n if n bytes were available, not surfacing errors at the same time. Amazon's HTTPS frontends like to hang up on clients without sending the appropriate HTTP headers. (In their defense, they're allowed to hang up any time, but generally a server hangs up after a bit of inactivity, not immediately.) In any case, the Go HTTP client tries to re-use connections by looking at whether the response headers say to keep the connection open, and because the connection looks okay, under heavy load it's possible we'll reuse it immediately, writing the next request, just as the Transport's always-reading goroutine returns from tls.Conn.Read and sees (0, io.EOF). But because Amazon does send an AlertCloseNotify record before it hangs up on us, and the tls package does its own internal buffering (up to 1024 bytes) of pending data, we have the AlertCloseNotify in an unread buffer when our Conn.Read (to the HTTP Transport code) reads its final bit of data in the HTTP response body. This change makes that final Read return (n, io.EOF) when an AlertCloseNotify record is buffered right after, if we'd otherwise return (n, nil). A dependent change in the HTTP code then notes whether a client connection has seen an io.EOF and uses that as an additional signal to not reuse a HTTPS connection. With both changes, the majority of Amazon request failures go away. Without either one, 10-20 goroutines hitting the S3 API leads to such an error rate that empirically up to 5 retries are needed to complete an API call. LGTM=agl, rsc R=agl, rsc CC=golang-codereviews https://golang.org/cl/76400046
-
Ian Lance Taylor authored
The nproc and ndone fields are uint32. This makes the type consistent. LGTM=minux.ma R=golang-codereviews, minux.ma CC=golang-codereviews https://golang.org/cl/79340044
-
Nigel Tao authored
Strictly speaking, it's not necessary in example_test.go, as the Rows.Close docs say that "If Next returns false, the Rows are closed automatically". However, if the for loop breaks or returns early, it's not obvious that you'll leak unless you explicitly call Rows.Close. LGTM=bradfitz R=bradfitz CC=golang-codereviews, rsc https://golang.org/cl/79330043
-
Russ Cox authored
Structured Exception Handling (SEH) was the first way to handle exceptions (memory faults, divides by zero) on Windows. The S might as well stand for "stack-based": the implementation interprets stack addresses in a few different ways, and it gets subtly confused by Go's management of stacks. It's also something that requires active maintenance during cgo switches, and we've had bugs in that maintenance in the past. We have recently come to believe that SEH cannot work with Go's stack usage. See http://golang.org/issue/7325 for details. Vectored Exception Handling (VEH) is more like a Unix signal handler: you set it once for the whole process and forget about it. This CL drops all the SEH code and replaces it with VEH code. Many special cases and 7 #ifdefs disappear. VEH was introduced in Windows XP, so Go on windows/386 will now require Windows XP or later. The previous requirement was Windows 2000 or later. Windows 2000 immediately preceded Windows XP, so Windows 2000 is the only affected version. Microsoft stopped supporting Windows 2000 in 2010. See http://golang.org/s/win2000-golang-nuts for details. Fixes #7325. LGTM=alex.brainman, r R=golang-codereviews, alex.brainman, stephen.gutekanst, dave CC=golang-codereviews, iant, r https://golang.org/cl/74790043
-
Russ Cox authored
This has come up twice now. Redirect future questions to the explanation in the issue tracker. LGTM=iant, r R=r, iant CC=golang-codereviews https://golang.org/cl/79550043
-
Rob Pike authored
Currently it's always zero, but that is inconsistent with math.Pow and also plain wrong. This is a proposal for how it should be defined. Fixes #7583. LGTM=rsc R=golang-codereviews, iant, gobot, rsc CC=golang-codereviews https://golang.org/cl/76940044
-
Rob Pike authored
Fixes #7252. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/77990044
-
Rob Pike authored
Fixes #7488. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/78050043
-
- 24 Mar, 2014 6 commits
-
-
Russ Cox authored
This rule not existing has been the source of many discussions on golang-dev and on issues. We have stated publicly that it is true, but we have never written it down. Write it down. Fixes #6242. LGTM=r, dan.kortschak, iant, dvyukov R=golang-codereviews, r, dominik.honnef, dvyukov, dan.kortschak, iant, 0xjnml CC=golang-codereviews https://golang.org/cl/75130045
-
Jan Ziak authored
Fixes #6403 LGTM=rsc R=iant, rsc CC=golang-codereviews https://golang.org/cl/72840044
-
Rui Ueyama authored
ReadFrom should not return until it receives a non-nil error or too many contiguous (0, nil)s from a given reader. Currently it immediately returns if it receives one (0, nil). Fixes #7611. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/76400048
-
Jan Ziak authored
Fixes #6902 LGTM=iant R=iant, rsc CC=golang-codereviews https://golang.org/cl/78730049
-
Rui Ueyama authored
bi is a slice and not an array, so bi[:] does not make much sense. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/79280043
-
Dave Cheney authored
LGTM=josharian, dan.kortschak R=golang-codereviews, josharian, dan.kortschak CC=golang-codereviews https://golang.org/cl/75080043
-
- 23 Mar, 2014 3 commits
-
-
Rui Ueyama authored
It's a little bit waste to check if r is not a surrogate code point because RuneError is not a surrogate code point. LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/79230043
-
Rui Ueyama authored
LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/79080044
-
Rui Ueyama authored
LGTM=dave R=golang-codereviews, dave CC=golang-codereviews https://golang.org/cl/79120043
-
- 22 Mar, 2014 2 commits
-
-
Rui Ueyama authored
"min" and "max" in "case '{'" clause are fresh variables. The variables defined in the outer scope never get value other than 0. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/78750044
-
Rui Ueyama authored
Currently Scan ignores an error returned from source if the number of bytes source has read is 0. Fixes #7594. LGTM=gri R=golang-codereviews, bradfitz, gri CC=golang-codereviews https://golang.org/cl/78120043
-
- 21 Mar, 2014 4 commits
-
-
David du Colombier authored
warning: src/cmd/ld/macho.c:595 sign-extended character constant warning: src/cmd/ld/macho.c:595 sign-extended character constant warning: src/cmd/ld/symtab.c:63 sign-extended character constant warning: src/cmd/ld/symtab.c:63 sign-extended character constant LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/76580046
-
David du Colombier authored
LGTM=dvyukov R=dvyukov CC=golang-codereviews https://golang.org/cl/78410043
-
Adam Langley authored
Fixes issue #6976. LGTM=r R=golang-codereviews, r CC=golang-codereviews https://golang.org/cl/72080044
-
Rob Pike authored
They aren't segmented any more, at least with gc. Also improve the comparison of goroutines and threads. Fixes #7373. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/77950044
-
- 20 Mar, 2014 8 commits
-
-
Rob Pike authored
Prose referred to 'b', code used 'buf'. Fixes #7601. LGTM=dominik.honnef R=golang-codereviews, dominik.honnef CC=golang-codereviews https://golang.org/cl/78470043
-
Rémy Oudompheng authored
Revision 3ae4607a43ff introduced CONVNOP layers to fix type checking issues arising from comparisons. The added complexity made 8g run out of registers when compiling an equality function in go.net/ipv6. A similar issue occurred in test/sizeof.go on amd64p32 with 6g. Fixes #7405. LGTM=khr R=rsc, dave, iant, khr CC=golang-codereviews https://golang.org/cl/78100044
-
Rémy Oudompheng authored
Changes adapted from original CL 15680044. LGTM=iant R=rsc, iant, dave CC=golang-codereviews https://golang.org/cl/76150044
-
Rémy Oudompheng authored
LGTM=dave, iant R=iant, khr, rsc, dave CC=golang-codereviews https://golang.org/cl/77960044
-
Chris Manghane authored
LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/78040043
-
Brad Fitzpatrick authored
LGTM=r, agl R=agl, r CC=golang-codereviews https://golang.org/cl/77530044
-
Rémy Oudompheng authored
LGTM=dave R=dave, rsc CC=golang-codereviews https://golang.org/cl/78110043
-
Rui Ueyama authored
Encoding.Decode() failed to detect trailing garbages if input contains "==" followed by garbage smaller than 3 bytes (for example, it failed to detect "x" in "AA==x"). This patch fixes the bug and adds a few tests. LGTM=nigeltao R=golang-codereviews, bradfitz, nigeltao CC=golang-codereviews https://golang.org/cl/75340044
-