On Thursday, 10 November 2016 04:09:29 UTC-5, James Pettyjohn wrote:
>
> I ran into this on go 1.6.2 amd64, seems unlikely this is a core issue and 
> I need to look else where in the project but has anyone seen this before?
>
> fatal error: concurrent map read and map write
>
> goroutine 21619 [running]:
> runtime.throw(0xfefc00, 0x21)
>         /usr/local/go/src/runtime/panic.go:547 +0x90 fp=0xc822727ac0 
> sp=0xc822727aa8
> runtime.mapaccess1(0xca4a00, 0xc828346120, 0xc822727c58, 0x1931c00)
>         /usr/local/go/src/runtime/hashmap.go:289 +0x5a fp=0xc822727b08 
> sp=0xc822727ac0
> net/http.(*Transport).tryPutIdleConn(0xc822c00b40, 0xc82181fc70, 0x0, 0x0)
>         /usr/local/go/src/net/http/transport.go:562 +0x41e fp=0xc822727c90 
> sp=0xc822727b08
> net/http.(*persistConn).readLoop.func2(0xc82181fc70)
>         /usr/local/go/src/net/http/transport.go:1053 +0x32 fp=0xc822727cd0 
> sp=0xc822727c90
> net/http.(*persistConn).readLoop(0xc82181fc70)
>         /usr/local/go/src/net/http/transport.go:1189 +0xc5d 
> fp=0xc822727fa8 sp=0xc822727cd0
> runtime.goexit()
>         /usr/local/go/src/runtime/asm_amd64.s:1998 +0x1 fp=0xc822727fb0 
> sp=0xc822727fa8
> created by net/http.(*Transport).dialConn
>         /usr/local/go/src/net/http/transport.go:857 +0x10a6
>


The locks surrounding idleConn map all look locally fine. Is it possible 
your application has made a (shallow) copy of an http.Transport?  The old 
and new copies would share the same idleConn map "guarded" by different 
idleMu mutexes.



-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to