file-format: BlackfireProbe
Cost-Dimensions: wt cpu mu pmu
graph-root-id: net/http.(*conn).serve

net/http.checkConnErrorWriter.Write==>net.(*conn).Write//1 70000 0 0 0
database/sql.(*DB).Query==>database/sql.(*DB).QueryContext//1 240000 0 0 0
github.com/lib/pq.dial==>github.com/lib/pq.defaultDialer.DialContext//1 150000 0 0 0
database/sql.(*DB).conn==>database/sql.(*driverConn).Close//1 110000 0 0 0
syscall.Close==>syscall.Syscall//6 60000 0 0 0
github.com/lib/pq.(*conn).auth==>github.com/lib/pq.(*conn).send//1 10000 0 0 0
github.com/lib/pq.(*conn).auth==>github.com/lib/pq.(*conn).recv//1 10000 0 0 0
database/sql.dsnConnector.Connect==>github.com/lib/pq.(*Driver).Open//1 270000 0 0 0
net.socket==>net.(*netFD).dial//1 90000 0 0 0
runtime.makeslice==>runtime.mallocgc//1 10000 0 0 0
syscall.Syscall==>runtime.entersyscall//1 40000 0 0 0
runtime.newstack==>runtime.copystack//1 20000 0 0 0
database/sql.(*DB).removeDepLocked==>runtime.mapdelete//1 10000 0 0 0
runtime.assertI2I2==>runtime.getitab//1 10000 0 0 0
net/http.(*Request).wantsClose==>net/http.hasToken//1 10000 0 0 0
net.(*sysDialer).doDialTCP==>net.internetSocket//1 130000 0 0 0
main.(*Store).StoreWidget==>database/sql.(*DB).Exec//1 230000 0 0 0
database/sql.(*driverConn).finalClose==>database/sql.withLock//1 100000 0 0 0
database/sql.(*DB).queryDC==>database/sql.withLock//1 40000 0 0 0
runtime.gentraceback==>runtime.funcspdelta//1 10000 0 0 0
syscall.Getpeername==>syscall.getpeername//1 10000 0 0 0
net/http.(*conn).close==>net.(*conn).Close//1 30000 0 0 0
runtime.systemstack==>runtime.entersyscall_sysmon//1 40000 0 0 0
runtime.newproc==>runtime.systemstack//1 10000 0 0 0
github.com/lib/pq.(*conn).startup==>github.com/lib/pq.(*conn).processParameterStatus//1 10000 0 0 0
github.com/gorilla/mux.(*Router).Match==>github.com/gorilla/mux.(*Route).Match//1 10000 0 0 0
net.(*conn).Write==>net.(*netFD).Write//1 180000 0 0 0
syscall.Socket==>syscall.socket//1 40000 0 0 0
syscall.Connect==>syscall.connect//1 60000 0 0 0
github.com/lib/pq.parseEnviron==>strings.SplitN//1 20000 0 0 0
runtime.newproc1==>runtime.gfget//1 10000 0 0 0
database/sql.(*DB).Exec==>database/sql.(*DB).ExecContext//1 230000 0 0 0
database/sql.(*DB).execDC.func2==>database/sql.ctxDriverExec//1 30000 0 0 0
database/sql.ctxDriverExec==>github.com/lib/pq.(*conn).ExecContext//1 30000 0 0 0
github.com/lib/pq.(*conn).recv1Buf==>github.com/lib/pq.(*conn).recvMessage//1 20000 0 0 0
github.com/lib/pq.DialOpen==>github.com/lib/pq.NewConnector//1 30000 0 0 0
strings.SplitN==>strings.genSplit//1 20000 0 0 0
github.com/lib/pq.(*conn).processParameterStatus==>time.LoadLocation//1 10000 0 0 0
main.(*HttpServer).httpHandlerGetWidgets==>encoding/json.Marshal//1 10000 0 0 0
bufio.(*Writer).Flush==>net/http.checkConnErrorWriter.Write//1 70000 0 0 0
database/sql.(*DB).exec==>database/sql.(*DB).execDC//1 50000 0 0 0
github.com/lib/pq.(*conn).ExecContext==>github.com/lib/pq.(*conn).Exec//1 30000 0 0 0
runtime.entersyscall==>runtime.reentersyscall//1 40000 0 0 0
github.com/lib/pq.(*conn).sendSimpleMessage==>net.(*conn).Write//1 60000 0 0 0
net/http.(*connReader).abortPendingRead==>sync.(*Cond).Wait//1 10000 0 0 0
github.com/lib/pq.(*conn).auth==>github.com/lib/pq.md5s//1 10000 0 0 0
net.setKeepAlivePeriod==>internal/poll.(*FD).SetsockoptInt//1 20000 0 0 0
database/sql.(*driverConn).Close==>database/sql.(*DB).removeDepLocked//1 10000 0 0 0
encoding/json.sliceEncoder.encode==>encoding/json.arrayEncoder.encode//1 10000 0 0 0
net.sockaddrToTCP==>runtime.newobject//1 10000 0 0 0
time.readFile==>runtime.newstack//1 10000 0 0 0
sync.(*Cond).Wait==>sync.runtime_notifyListWait//1 10000 0 0 0
net.(*sysDialer).dialSerial==>net.(*sysDialer).dialSingle//1 130000 0 0 0
net.socket==>net.sysSocket//1 40000 0 0 0
github.com/lib/pq.(*conn).Close==>github.com/lib/pq.(*conn).Close.func1//1 40000 0 0 0
github.com/lib/pq.(*stmt).exec==>github.com/lib/pq.(*conn).readBindResponse//1 20000 0 0 0
bufio.(*Reader).ReadLine==>bufio.(*Reader).ReadSlice//1 20000 0 0 0
sync.runtime_notifyListWait==>runtime.acquireSudog//1 10000 0 0 0
internal/poll.runtime_pollOpen==>runtime.netpollopen//1 10000 0 0 0
net/http.readRequest==>net/textproto.(*Reader).ReadMIMEHeader//1 20000 0 0 0
syscall.setsockopt==>syscall.Syscall6//2 20000 0 0 0
github.com/lib/pq.(*conn).simpleQuery==>github.com/lib/pq.(*conn).recv1//1 10000 0 0 0
runtime.growslice==>runtime.mallocgc//1 10000 0 0 0
internal/poll.(*FD).Write==>syscall.Write//1 170000 0 0 0
net/http.(*conn).serve==>net/http.(*conn).serve.func1//1 30000 0 0 0
internal/poll.(*FD).Read==>syscall.Read//1 80000 0 0 0
net.(*netFD).dial==>net.sockaddrToTCP//1 10000 0 0 0
github.com/lib/pq.(*conn).sendStartupPacket==>net.(*conn).Write//1 10000 0 0 0
database/sql.(*DB).execDC==>runtime.assertI2I2//1 10000 0 0 0
runtime.tracebackdefers==>runtime.adjustframe//1 10000 0 0 0
net.(*conn).Close==>net.(*netFD).Close//1 70000 0 0 0
net/textproto.(*Reader).ReadMIMEHeader==>runtime.makeslice//1 10000 0 0 0
database/sql.(*DB).execDC==>database/sql.withLock//1 40000 0 0 0
strings.genSplit==>strings.Index//1 20000 0 0 0
runtime.mapaccess1_faststr==>runtime.add//1 10000 0 0 0
internal/poll.(*FD).Init==>internal/poll.(*pollDesc).init//1 10000 0 0 0
database/sql.withLock==>database/sql.(*DB).execDC.func2//1 30000 0 0 0
runtime.futexwakeup==>runtime.futex//4 40000 0 0 0
strings.IndexByte==>indexbytebody//1 10000 0 0 0
time.loadTzinfoFromDirOrZip==>time.readFile//1 10000 0 0 0
runtime.newobject==>runtime.mallocgc//1 30000 0 0 0
main.(*Store).GetAllWidgets==>runtime.growslice//1 10000 0 0 0
github.com/lib/pq.(*conn).startup==>github.com/lib/pq.(*conn).sendStartupPacket//1 10000 0 0 0
net.internetSocket==>net.socket//1 130000 0 0 0
database/sql.(*driverConn).finalClose.func2==>github.com/lib/pq.(*conn).Close//1 100000 0 0 0
bufio.(*Reader).Read==>net.(*conn).Read//1 60000 0 0 0
net.(*netFD).connect==>syscall.Connect//1 60000 0 0 0
time.LoadLocation==>time.loadLocation//1 10000 0 0 0
context.WithValue==>runtime.newobject//1 10000 0 0 0
strings.IndexByte==>internal/bytealg.IndexByteString//1 10000 0 0 0
github.com/lib/pq.parseEnviron==>runtime.makemap_small//1 10000 0 0 0
net/http.(*conn).readRequest==>net/http.(*Request).wantsClose//1 10000 0 0 0
net/http.(*conn).serve//1 680000 0 0 0
database/sql.(*DB).queryDC.func1==>database/sql.ctxDriverQuery//1 40000 0 0 0
strings.Index==>strings.IndexByte//1 20000 0 0 0
net/http.(*conn).serve==>net/http.(*connReader).startBackgroundRead//1 10000 0 0 0
github.com/gorilla/mux.routeRegexpGroup.setMatch==>regexp.(*Regexp).FindStringSubmatchIndex//1 10000 0 0 0
internal/poll.(*FD).Write==>runtime.newstack//1 10000 0 0 0
net/http.(*conn).serve==>net/http.(*response).finishRequest//1 80000 0 0 0
net/http.serverHandler.ServeHTTP==>github.com/gorilla/mux.(*Router).ServeHTTP//1 500000 0 0 0
database/sql.(*DB).conn==>database/sql.dsnConnector.Connect//1 270000 0 0 0
github.com/lib/pq.(*conn).readBindResponse==>github.com/lib/pq.(*conn).recv1//1 10000 0 0 0
github.com/lib/pq.(*conn).prepareTo==>github.com/lib/pq.(*conn).send//1 10000 0 0 0
main.(*Store).GetAllWidgets==>database/sql.(*DB).Query//1 240000 0 0 0
net/http.HandlerFunc.ServeHTTP==>main.(*HttpServer).httpHandlerCreateWidget//1 230000 0 0 0
encoding/json.arrayEncoder.encode==>encoding/json.ptrEncoder.encode//1 10000 0 0 0
net.(*sysDialer).dialTCP==>net.(*sysDialer).doDialTCP//1 130000 0 0 0
github.com/lib/pq.(*Connector).open==>github.com/lib/pq.(*conn).startup//1 90000 0 0 0
syscall.getpeername==>syscall.RawSyscall//1 10000 0 0 0
time.loadTzinfo==>time.loadTzinfoFromDirOrZip//1 10000 0 0 0
github.com/lib/pq.(*conn).startup==>github.com/lib/pq.(*conn).auth//1 30000 0 0 0
database/sql.withLock==>database/sql.(*driverConn).finalClose.func2//1 100000 0 0 0
net.(*netFD).Close==>internal/poll.(*FD).Close//1 70000 0 0 0
github.com/lib/pq.(*conn).simpleQuery==>github.com/lib/pq.(*conn).send//1 30000 0 0 0
bufio.(*Reader).ReadSlice==>bufio.(*Reader).fill//1 20000 0 0 0
database/sql.(*DB).exec==>database/sql.(*DB).conn//1 180000 0 0 0
database/sql.ctxDriverQuery==>github.com/lib/pq.(*conn).QueryContext//1 40000 0 0 0
internal/poll.(*FD).SetsockoptInt==>syscall.SetsockoptInt//1 20000 0 0 0
runtime.systemstack==>runtime.newproc.func1//1 10000 0 0 0
net/http.(*connReader).startBackgroundRead==>runtime.newproc//1 10000 0 0 0
time.loadLocation==>time.loadTzinfo//1 10000 0 0 0
runtime.adjustframe==>runtime.getStackMap//1 10000 0 0 0
github.com/lib/pq.(*conn).Close.func1==>net.(*conn).Close//1 40000 0 0 0
runtime.mallocgc==>runtime.heapBitsSetType//4 40000 0 0 0
database/sql.(*DB).query==>database/sql.(*DB).queryDC//1 40000 0 0 0
github.com/lib/pq.(*conn).query==>github.com/lib/pq.(*conn).simpleQuery//1 40000 0 0 0
io.ReadAtLeast==>bufio.(*Reader).Read//1 60000 0 0 0
syscall.Write==>syscall.write//1 170000 0 0 0
net.(*netFD).Read==>internal/poll.(*FD).Read//1 80000 0 0 0
net/textproto.canonicalMIMEHeaderKey==>runtime.mapaccess1_faststr//1 10000 0 0 0
syscall.read==>syscall.Syscall//4 80000 0 0 0
syscall.SetsockoptInt==>syscall.setsockopt//1 20000 0 0 0
regexp.(*Regexp).FindStringSubmatchIndex==>regexp.(*Regexp).pad//1 10000 0 0 0
runtime.adjustdefers==>runtime.tracebackdefers//1 10000 0 0 0
net/http.(*response).finishRequest==>net/http.(*connReader).abortPendingRead//1 10000 0 0 0
runtime.notewakeup==>runtime.futexwakeup//1 40000 0 0 0
net/textproto.(*Reader).ReadLine==>net/textproto.(*Reader).readLineSlice//1 20000 0 0 0
net/textproto.(*Reader).readLineSlice==>bufio.(*Reader).ReadLine//1 20000 0 0 0
net/http.HandlerFunc.ServeHTTP==>main.(*HttpServer).httpHandlerGetWidgets//1 260000 0 0 0
github.com/lib/pq.DialOpen==>github.com/lib/pq.(*Connector).open//1 240000 0 0 0
github.com/lib/pq.defaultDialer.DialContext==>net.(*Dialer).DialContext//1 150000 0 0 0
runtime.netpollopen==>runtime.epollctl//1 10000 0 0 0
io.ReadFull==>io.ReadAtLeast//1 60000 0 0 0
net/http.(*connReader).Read==>net.(*conn).Read//1 20000 0 0 0
github.com/lib/pq.(*conn).recv1==>github.com/lib/pq.(*conn).recv1Buf//1 20000 0 0 0
github.com/gorilla/mux.(*Router).ServeHTTP==>github.com/gorilla/mux.(*Router).Match//1 10000 0 0 0
runtime.makemap_small==>runtime.newobject//1 10000 0 0 0
net.(*netFD).Write==>internal/poll.(*FD).Write//1 180000 0 0 0
database/sql.(*driverConn).Close==>database/sql.(*driverConn).finalClose//1 100000 0 0 0
net.(*netFD).dial==>net.(*netFD).connect//1 80000 0 0 0
github.com/lib/pq.(*conn).send==>net.(*conn).Write//1 50000 0 0 0
github.com/lib/pq.(*conn).Exec==>github.com/lib/pq.(*stmt).Exec//1 20000 0 0 0
github.com/lib/pq.(*conn).Close==>github.com/lib/pq.(*conn).sendSimpleMessage//1 60000 0 0 0
syscall.connect==>syscall.Syscall//6 60000 0 0 0
github.com/lib/pq.(*conn).recv==>github.com/lib/pq.(*conn).recvMessage//1 50000 0 0 0
syscall.write==>syscall.Syscall//17 170000 0 0 0
net/http.(*conn).serve==>net/http.serverHandler.ServeHTTP//1 500000 0 0 0
github.com/lib/pq.md5s==>runtime.convTslice//1 10000 0 0 0
net/http.(*conn).readRequest==>net/http.readRequest//1 40000 0 0 0
database/sql.withLock==>database/sql.(*DB).queryDC.func1//1 40000 0 0 0
runtime.pcvalue==>runtime.step//1 10000 0 0 0
net/textproto.(*Reader).ReadMIMEHeader==>net/textproto.canonicalMIMEHeaderKey//1 10000 0 0 0
database/sql.(*DB).query==>database/sql.(*DB).conn//1 200000 0 0 0
github.com/lib/pq.Open==>github.com/lib/pq.DialOpen//1 270000 0 0 0
net.sysSocket==>syscall.Socket//1 40000 0 0 0
internal/poll.(*FD).destroy==>syscall.Close//1 60000 0 0 0
net/http.(*conn).serve.func1==>net/http.(*conn).close//1 30000 0 0 0
github.com/lib/pq.(*conn).startup==>github.com/lib/pq.(*conn).recv//1 40000 0 0 0
database/sql.(*DB).ExecContext==>database/sql.(*DB).exec//1 230000 0 0 0
net.(*netFD).connect==>internal/poll.(*FD).Init//1 10000 0 0 0
runtime.entersyscall_sysmon==>runtime.notewakeup//1 40000 0 0 0
net/http.readRequest==>net/textproto.(*Reader).ReadLine//1 20000 0 0 0
github.com/lib/pq.NewConnector==>github.com/lib/pq.parseEnviron//1 30000 0 0 0
net.(*conn).Read==>net.(*netFD).Read//1 80000 0 0 0
net.(*Dialer).DialContext==>net.setKeepAlivePeriod//1 20000 0 0 0
encoding/json.ptrEncoder.encode==>encoding/json.structEncoder.encode//1 10000 0 0 0
github.com/lib/pq.(*Driver).Open==>github.com/lib/pq.Open//1 270000 0 0 0
github.com/lib/pq.(*Connector).open==>github.com/lib/pq.dial//1 150000 0 0 0
internal/poll.(*FD).Close==>internal/poll.(*FD).decref//1 70000 0 0 0
net/http.(*conn).serve==>net/http.(*conn).readRequest//1 50000 0 0 0
github.com/lib/pq.(*stmt).Exec==>github.com/lib/pq.(*stmt).exec//1 20000 0 0 0
net.(*netFD).connect==>syscall.Getpeername//1 10000 0 0 0
net/http.(*conn).serve==>context.WithValue//1 10000 0 0 0
runtime.reentersyscall==>runtime.systemstack//1 40000 0 0 0
runtime.newproc.func1==>runtime.newproc1//1 10000 0 0 0
encoding/json.Marshal==>encoding/json.(*encodeState).marshal//1 10000 0 0 0
github.com/gorilla/mux.(*Router).ServeHTTP==>net/http.HandlerFunc.ServeHTTP//1 490000 0 0 0
database/sql.(*DB).QueryContext==>database/sql.(*DB).query//1 240000 0 0 0
net.(*sysDialer).dialSingle==>net.(*sysDialer).dialTCP//1 130000 0 0 0
internal/poll.(*pollDesc).init==>internal/poll.runtime_pollOpen//1 10000 0 0 0
syscall.Read==>syscall.read//1 80000 0 0 0
encoding/json.(*encodeState).marshal==>encoding/json.(*encodeState).reflectValue//1 10000 0 0 0
internal/poll.(*FD).decref==>internal/poll.(*FD).destroy//1 70000 0 0 0
github.com/lib/pq.(*conn).QueryContext==>github.com/lib/pq.(*conn).query//1 40000 0 0 0
github.com/lib/pq.(*conn).recvMessage==>io.ReadFull//1 60000 0 0 0
net/http.(*response).finishRequest==>bufio.(*Writer).Flush//1 70000 0 0 0
main.(*HttpServer).httpHandlerGetWidgets==>main.(*Store).GetAllWidgets//1 250000 0 0 0
net.(*Dialer).DialContext==>net.(*sysDialer).dialSerial//1 130000 0 0 0
syscall.socket==>syscall.RawSyscall//4 40000 0 0 0
main.(*HttpServer).httpHandlerCreateWidget==>main.(*Store).StoreWidget//1 230000 0 0 0
bufio.(*Reader).fill==>net/http.(*connReader).Read//1 20000 0 0 0
encoding/json.(*encodeState).reflectValue==>encoding/json.sliceEncoder.encode//1 10000 0 0 0
runtime.copystack==>runtime.adjustdefers//1 10000 0 0 0
github.com/lib/pq.(*conn).Exec==>github.com/lib/pq.(*conn).prepareTo//1 10000 0 0 0
runtime.copystack==>runtime.gentraceback//1 10000 0 0 0
runtime.funcspdelta==>runtime.pcvalue//1 10000 0 0 0
github.com/gorilla/mux.(*Route).Match==>github.com/gorilla/mux.routeRegexpGroup.setMatch//1 10000 0 0 0
