Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(617)

Issue 6867043: time: avoid data race in locabs

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 4 months ago by vadik
Modified:
8 years, 7 months ago
Reviewers:
Visibility:
Public.

Description

time: avoid data race in locabs This fixes a race condition discovered by: go build -race github.com/unixdj/benchnet/benchnode The problem is essentially the same as issue 3967 (time: data race on local Location), the fix being the same as https://codereview.appspot.com/6460115/ Race trace: ================== WARNING: DATA RACE Write by goroutine 0: time.initLocal() src/pkg/time/zoneinfo_unix.go:49 +0x128 sync.(*Once).Do() src/pkg/sync/once.go:40 +0x8d time.(*Location).get() src/pkg/time/zoneinfo.go:69 +0x70 time.(*Location).lookup() src/pkg/time/zoneinfo.go:102 +0x4c time.Time.locabs() src/pkg/time/time.go:274 +0x179 time.Time.Format() src/pkg/time/format.go:379 +0x60 log/syslog.netConn.writeString() src/pkg/log/syslog/syslog.go:211 +0xc5 log/syslog.(*netConn).writeString() src/pkg/log/syslog/syslog.go:0 +0xf9 log/syslog.(*Writer).writeString() src/pkg/log/syslog/syslog.go:201 +0xd6 log/syslog.(*Writer).Notice() src/pkg/log/syslog/syslog.go:181 +0x61 main.main() github.com/unixdj/benchnet/benchnode/main.go:169 +0xa5e runtime.main() src/pkg/runtime/proc.c:248 +0x91 Previous read by goroutine 5: time.Time.locabs() src/pkg/time/time.go:270 +0x9a time.Time.Format() src/pkg/time/format.go:379 +0x60 log/syslog.netConn.writeString() src/pkg/log/syslog/syslog.go:211 +0xc5 log/syslog.(*netConn).writeString() src/pkg/log/syslog/syslog.go:0 +0xf9 log/syslog.(*Writer).writeString() src/pkg/log/syslog/syslog.go:201 +0xd6 log/syslog.(*Writer).Notice() src/pkg/log/syslog/syslog.go:181 +0x61 main.talk() github.com/unixdj/benchnet/benchnode/proto.go:107 +0xc7 main.netLoop() github.com/unixdj/benchnet/benchnode/main.go:103 +0x88 Goroutine 5 (running) created at: main.main() github.com/unixdj/benchnet/benchnode/main.go:158 +0xa04 runtime.main() src/pkg/runtime/proc.c:248 +0x91

Patch Set 1 #

Patch Set 2 : diff -r 6ec24fe2e501 https://go.googlecode.com/hg/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -3 lines) Patch
M src/pkg/time/time.go View 1 1 chunk +3 lines, -3 lines 0 comments Download

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b