Skip to content

Instantly share code, notes, and snippets.

@wolfeidau
Last active August 29, 2015 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wolfeidau/9168877 to your computer and use it in GitHub Desktop.
Save wolfeidau/9168877 to your computer and use it in GitHub Desktop.
heap profile: 18: 50304 [706: 19785112] @ heap/1048576
2: 16384 [2: 16384] @ 0x2142f 0xe911 0xeb64 0x22b35 0xd2825 0xd56ea 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0xe911 resizefintab+0xa1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/mfinal.c:127
# 0xeb64 runtime.addfinalizer+0x114 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/mfinal.c:172
# 0x22b35 runtime.SetFinalizer+0x215 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:791
# 0xd2825 net.(*netFD).setAddr+0x85 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:57
# 0xd56ea net.(*netFD).accept+0x67a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:404
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
6: 12288 [6: 12288] @ 0x2142f 0x216e9 0x15822 0x15a20 0xd3396 0xe2155 0x86408 0x630f8 0x1a020
# 0x15822 newdefer+0x112 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/panic.c:49
# 0x15a20 runtime.deferproc+0x10 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/panic.c:132
# 0xd3396 net.(*netFD).Read+0x96 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:195
# 0xe2155 net.(*conn).Read+0xc5 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/net.go:122
# 0x86408 io.Copy+0x1c8 /usr/local/Cellar/go/1.2/libexec/src/pkg/io/io.go:352
# 0x630f8 net/http.func·006+0x68 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:161
5: 10240 [5: 10240] @ 0x2142f 0x216e9 0x15822 0x15a20 0x56300 0x1a020
# 0x15822 newdefer+0x112 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/panic.c:49
# 0x15a20 runtime.deferproc+0x10 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/panic.c:132
# 0x56300 net/http.(*conn).serve+0x60 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1099
1: 10240 [1: 10240] @ 0x2142f 0x22891 0x228db 0x188b7 0x18d27 0x19008 0x19216 0x1a609 0xda31 0x2655d 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x228db runtime.cnew+0x3b /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:725
# 0x188b7 runtime.allocm+0x87 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:643
# 0x18d27 newm+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:896
# 0x19008 startm+0xb8 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:974
# 0x19216 handoffp+0x196 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:999
# 0x1a609 runtime.entersyscallblock+0x129 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:1514
# 0xda31 runtime.notetsleepg+0x71 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/lock_sema.c:253
# 0x2655d timerproc+0xbd /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/time.goc:232
2: 576 [2: 576] @ 0x2142f 0x216e9 0x1ab19 0x1aea8 0x1ac63 0x58e2b 0x58b80 0x2206 0x17aff 0x1a020
# 0x58e2b net/http.(*Server).Serve+0x28b /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1644
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
1: 288 [1: 288] @ 0x2142f 0x216e9 0x1ab19 0x1aea8 0x1ac63 0x51615 0x56daa 0x2436 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x51615 net/http.(*conn).closeNotify+0x1f5 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:167
# 0x56daa net/http.(*response).CloseNotify+0x2a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1209
# 0x2436 main.GetMessage+0x146 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:47
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
1: 288 [2: 296] @
0: 0 [1: 48] @ 0x2142f 0x227c2 0xe71ec 0xd56ae 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0xe71ec net.sockaddrToTCP+0x1dc /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:26
# 0xd56ae net.(*netFD).accept+0x63e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:404
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [6: 2112] @ 0x2142f 0x22891 0x2291a 0xa663 0xb828 0xb8b0 0x10049a 0x4ea09 0x5381b 0x56654 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x2291a runtime.cnewarray+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:731
# 0xa663 hash_insert+0xa3 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/hashmap.c:607
# 0xb828 runtime.mapassign+0x88 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/hashmap.c:1114
# 0xb8b0 runtime.mapassign1+0x80 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/hashmap.c:1146
# 0x10049a net/textproto.(*Reader).ReadMIMEHeader+0x49a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/textproto/reader.go:503
# 0x4ea09 net/http.ReadRequest+0x549 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/request.go:570
# 0x5381b net/http.(*conn).readRequest+0x1bb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:575
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [1: 112] @ 0x2142f 0x227c2 0xd555b 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0xd555b net.(*netFD).accept+0x4eb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:395
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 64] @ 0x2142f 0x25495 0x25bd1 0x100346 0x4ea09 0x5381b 0x56654 0x1a020
# 0x25495 gostringsize+0x65 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/string.goc:50
# 0x25bd1 runtime.slicebytetostring+0x31 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/string.goc:257
# 0x100346 net/textproto.(*Reader).ReadMIMEHeader+0x346 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/textproto/reader.go:493
# 0x4ea09 net/http.ReadRequest+0x549 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/request.go:570
# 0x5381b net/http.(*conn).readRequest+0x1bb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:575
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [3: 336] @ 0x2142f 0x227c2 0xc416a 0xc3f68 0x4e98d 0x5381b 0x56654 0x1a020
# 0xc416a net/url.parse+0x1da /usr/local/Cellar/go/1.2/libexec/src/pkg/net/url/url.go:368
# 0xc3f68 net/url.ParseRequestURI+0x48 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/url/url.go:354
# 0x4e98d net/http.ReadRequest+0x4cd /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/request.go:560
# 0x5381b net/http.(*conn).readRequest+0x1bb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:575
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [2: 128] @ 0x2142f 0x227c2 0x1429b6 0x142d28 0xd5657 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0x1429b6 syscall.anyToSockaddr+0x566 /usr/local/Cellar/go/1.2/libexec/src/pkg/syscall/syscall_bsd.go:252
# 0x142d28 syscall.Getsockname+0xb8 /usr/local/Cellar/go/1.2/libexec/src/pkg/syscall/syscall_bsd.go:300
# 0xd5657 net.(*netFD).accept+0x5e7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:403
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [2: 384] @ 0x2142f 0x22788 0x6fc3 0x6f68 0x244c 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x6fc3 newselect+0x53 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/chan.c:632
# 0x6f68 runtime.newselect+0x28 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/chan.c:615
# 0x244c main.GetMessage+0x15c /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:49
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
0: 0 [3: 576] @ 0x2142f 0x227c2 0x87646 0x5152c 0x56daa 0x2436 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x87646 io.Pipe+0x26 /usr/local/Cellar/go/1.2/libexec/src/pkg/io/pipe.go:187
# 0x5152c net/http.(*conn).closeNotify+0x10c /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:154
# 0x56daa net/http.(*response).CloseNotify+0x2a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1209
# 0x2436 main.GetMessage+0x146 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:47
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
0: 0 [1: 64] @ 0x2142f 0x227c2 0x52b4a 0x527ef 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0x52b4a net/http.newBufioWriterSize+0x10a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:479
# 0x527ef net/http.(*Server).newConn+0x25f /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:433
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 96] @ 0x2142f 0x227c2 0xae068 0xae15a 0x529b7 0x52795 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0xae068 bufio.NewReaderSize+0x98 /usr/local/Cellar/go/1.2/libexec/src/pkg/bufio/bufio.go:54
# 0xae15a bufio.NewReader+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/bufio/bufio.go:61
# 0x529b7 net/http.newBufioReader+0x87 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:461
# 0x52795 net/http.(*Server).newConn+0x205 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:432
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [3: 480] @ 0x2142f 0x227c2 0x538fd 0x56654 0x1a020
# 0x538fd net/http.(*conn).readRequest+0x29d /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:590
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [13: 53248] @ 0x2142f 0x22891 0x2291a 0x1e8dd 0x1e818 0xae096 0xae15a 0x529b7 0x52795 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x2291a runtime.cnewarray+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:731
# 0x1e8dd makeslice1+0x4d /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:57
# 0x1e818 runtime.makeslice+0x98 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:38
# 0xae096 bufio.NewReaderSize+0xc6 /usr/local/Cellar/go/1.2/libexec/src/pkg/bufio/bufio.go:55
# 0xae15a bufio.NewReader+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/bufio/bufio.go:61
# 0x529b7 net/http.newBufioReader+0x87 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:461
# 0x52795 net/http.(*Server).newConn+0x205 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:432
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [19: 77824] @ 0x2142f 0x22891 0x2291a 0x1e8dd 0x1e818 0x52b83 0x527ef 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x2291a runtime.cnewarray+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:731
# 0x1e8dd makeslice1+0x4d /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:57
# 0x1e818 runtime.makeslice+0x98 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:38
# 0x52b83 net/http.newBufioWriterSize+0x143 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:479
# 0x527ef net/http.(*Server).newConn+0x25f /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:433
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [16: 32768] @ 0x2142f 0x22891 0x2291a 0x1e8dd 0x1e818 0x52b83 0x5399b 0x56654 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x2291a runtime.cnewarray+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:731
# 0x1e8dd makeslice1+0x4d /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:57
# 0x1e818 runtime.makeslice+0x98 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:38
# 0x52b83 net/http.newBufioWriterSize+0x143 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:479
# 0x5399b net/http.(*conn).readRequest+0x33b /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:593
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [4: 832] @ 0x2142f 0x227c2 0x4e52d 0x5381b 0x56654 0x1a020
# 0x4e52d net/http.ReadRequest+0x6d /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/request.go:522
# 0x5381b net/http.(*conn).readRequest+0x1bb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:575
# 0x56654 net/http.(*conn).serve+0x3b4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1123
0: 0 [597: 19562496] @ 0x2142f 0x22891 0x2291a 0x1e8dd 0x1e818 0x863b2 0x630f8 0x1a020
# 0x22891 cnew+0xc1 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:718
# 0x2291a runtime.cnewarray+0x3a /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:731
# 0x1e8dd makeslice1+0x4d /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:57
# 0x1e818 runtime.makeslice+0x98 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/slice.c:38
# 0x863b2 io.Copy+0x172 /usr/local/Cellar/go/1.2/libexec/src/pkg/io/io.go:350
# 0x630f8 net/http.func·006+0x68 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:161
0: 0 [1: 96] @ 0x2142f 0x6139 0x61e1 0x514db 0x56daa 0x2436 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x514db net/http.(*conn).closeNotify+0xbb /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:148
# 0x56daa net/http.(*response).CloseNotify+0x2a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1209
# 0x2436 main.GetMessage+0x146 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:47
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
0: 0 [4: 448] @ 0x2142f 0x6139 0x61e1 0x7b1af 0x23f1 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x7b1af time.NewTimer+0x2f /usr/local/Cellar/go/1.2/libexec/src/pkg/time/sleep.go:64
# 0x23f1 main.GetMessage+0x101 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:46
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
0: 0 [2: 128] @ 0x2142f 0x227c2 0x1429b6 0x142c23 0xe6c77 0xd526c 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0x1429b6 syscall.anyToSockaddr+0x566 /usr/local/Cellar/go/1.2/libexec/src/pkg/syscall/syscall_bsd.go:252
# 0x142c23 syscall.Accept+0x143 /usr/local/Cellar/go/1.2/libexec/src/pkg/syscall/syscall_bsd.go:279
# 0xe6c77 net.accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/sys_cloexec.go:42
# 0xd526c net.(*netFD).accept+0x1fc /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:379
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 8] @ 0x2142f 0x25495 0x25bd1 0xe3edc 0xda674 0xdaabf 0xe6e39 0x5260c 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0x25495 gostringsize+0x65 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/string.goc:50
# 0x25bd1 runtime.slicebytetostring+0x31 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/string.goc:257
# 0xe3edc net.itod+0x11c /usr/local/Cellar/go/1.2/libexec/src/pkg/net/parse.go:210
# 0xda674 net.IP.String+0x1a4 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/ip.go:273
# 0xdaabf net.ipEmptyString+0x5f /usr/local/Cellar/go/1.2/libexec/src/pkg/net/ip.go:321
# 0xe6e39 net.(*TCPAddr).String+0x69 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock.go:21
# 0x5260c net/http.(*Server).newConn+0x7c /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:424
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 8] @ 0x2142f 0x227c2 0x5151d 0x56daa 0x2436 0x56e00 0x582a3 0x58aae 0x56a57 0x1a020
# 0x5151d net/http.(*conn).closeNotify+0xfd /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:154
# 0x56daa net/http.(*response).CloseNotify+0x2a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1209
# 0x2436 main.GetMessage+0x146 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:47
# 0x56e00 net/http.HandlerFunc.ServeHTTP+0x40 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1220
# 0x582a3 net/http.(*ServeMux).ServeHTTP+0x163 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1496
# 0x58aae net/http.serverHandler.ServeHTTP+0x16e /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1597
# 0x56a57 net/http.(*conn).serve+0x7b7 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1167
0: 0 [3: 384] @ 0x2142f 0x227c2 0x525d1 0x58e02 0x58b80 0x2206 0x17aff 0x1a020
# 0x525d1 net/http.(*Server).newConn+0x41 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:423
# 0x58e02 net/http.(*Server).Serve+0x262 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1640
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 112] @ 0x2142f 0x227c2 0x142b2a 0xe6c77 0xd526c 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0x142b2a syscall.Accept+0x4a /usr/local/Cellar/go/1.2/libexec/src/pkg/syscall/syscall_bsd.go:265
# 0xe6c77 net.accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/sys_cloexec.go:42
# 0xd526c net.(*netFD).accept+0x1fc /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:379
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
0: 0 [1: 2048] @ 0x2142f 0xe8e7 0xeb64 0x22b35 0xd2825 0xd56ea 0xe8257 0xe8327 0x58c31 0x58b80 0x2206 0x17aff 0x1a020
# 0xe8e7 resizefintab+0x77 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/mfinal.c:126
# 0xeb64 runtime.addfinalizer+0x114 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/mfinal.c:172
# 0x22b35 runtime.SetFinalizer+0x215 /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/malloc.goc:791
# 0xd2825 net.(*netFD).setAddr+0x85 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:57
# 0xd56ea net.(*netFD).accept+0x67a /usr/local/Cellar/go/1.2/libexec/src/pkg/net/fd_unix.go:404
# 0xe8257 net.(*TCPListener).AcceptTCP+0x47 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:233
# 0xe8327 net.(*TCPListener).Accept+0x27 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/tcpsock_posix.go:243
# 0x58c31 net/http.(*Server).Serve+0x91 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1622
# 0x58b80 net/http.(*Server).ListenAndServe+0xa0 /usr/local/Cellar/go/1.2/libexec/src/pkg/net/http/server.go:1612
# 0x2206 main.main+0x206 /Users/markw/Code/go/src/github.com/wolfeidau/amqp2http/leaker.go:38
# 0x17aff runtime.main+0x11f /usr/local/Cellar/go/1.2/libexec/src/pkg/runtime/proc.c:220
# runtime.MemStats
# Alloc = 6682968
# TotalAlloc = 392335632
# Sys = 133404408
# Lookups = 38037
# Mallocs = 509926
# Frees = 501804
# HeapAlloc = 6682968
# HeapSys = 103809024
# HeapIdle = 92930048
# HeapInuse = 10878976
# HeapReleased = 0
# HeapObjects = 8122
# Stack = 17809408 / 18612224
# MSpan = 447512 / 917504
# MCache = 12032 / 16384
# BuckHashSys = 1687104
# NextGC = 13188544
# PauseNs = [212477 57469 165143 162753 331047 303020 413237 721833 1166830 2074175 3138793 3482067 4481338 3198659 4759876 3651372 4601044 2777442 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
# NumGC = 18
# EnableGC = true
# DebugGC = false
package main
import (
"flag"
"fmt"
"github.com/golang/glog"
"net/http"
_ "net/http/pprof"
"os"
"runtime"
"time"
)
func main() {
if os.Getenv("GOMAXPROCS") == "" {
runtime.GOMAXPROCS(runtime.NumCPU())
}
flag.Parse()
go func() {
glog.Info(http.ListenAndServe("localhost:6060", nil))
}()
glog.Info("Service start")
var DefaultServeMux = http.NewServeMux()
// DefaultServeMux.Handler(, )
DefaultServeMux.HandleFunc("/queue/", GetMessage)
s := &http.Server{
Addr: ":8080",
Handler: DefaultServeMux,
ReadTimeout: 20 * time.Second,
WriteTimeout: 20 * time.Second,
MaxHeaderBytes: 1 << 10,
}
glog.Fatal(s.ListenAndServe())
}
func GetMessage(w http.ResponseWriter, r *http.Request) {
// vars := mux.Vars(r)
queue := r.RequestURI
glog.Infof("Get for queue %s", queue)
timer := time.NewTimer(time.Second * 10)
notifyCh := w.(http.CloseNotifier).CloseNotify()
select {
case <-timer.C:
fmt.Fprint(w, "OK")
case <-notifyCh:
glog.Infof("connection closed")
timer.Stop()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment