diff --git a/graphql/service.go b/graphql/service.go index 6f6e583359..684fdc7126 100644 --- a/graphql/service.go +++ b/graphql/service.go @@ -17,8 +17,10 @@ package graphql import ( + "context" "encoding/json" "net/http" + "time" "github.com/ethereum/go-ethereum/eth/filters" "github.com/ethereum/go-ethereum/internal/ethapi" @@ -41,7 +43,10 @@ func (h handler) ServeHTTP(w http.ResponseWriter, r *http.Request) { return } - response := h.Schema.Exec(r.Context(), params.Query, params.OperationName, params.Variables) + ctx, cancel := context.WithTimeout(r.Context(), 60*time.Second) + defer cancel() + + response := h.Schema.Exec(ctx, params.Query, params.OperationName, params.Variables) responseJSON, err := json.Marshal(response) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError)