Dus de crash wordt veroorzaakt doordat de db-aanwijzer nul is. Dit betekent dat een code die die verbinding op lijn 40 probeert te gebruiken, paniek veroorzaakt.
rows, errrows := db.Query(...
De db-aanwijzer is nul omdat, zoals Peter opmerkte, http.ListenAndServe blokkeert, wat niets betekent nadat het zal lopen.
Probeer dit voorbeeld lokaal uit te voeren om het probleem te zien:
package main
import (
"net/http"
)
func Group(res http.ResponseWriter, req *http.Request) {
println("group handler")
}
func main() {
http.HandleFunc("/group/", Group)
err := http.ListenAndServe(":9001", nil)
if err != nil {
panic(err)
}
println("Running code after ListenAndServe (only happens when server shuts down)")
}
U ziet het bericht Running code niet.