diff --git a/http_handler.go b/http_handler.go index 49a87dba3..f6d289cd1 100644 --- a/http_handler.go +++ b/http_handler.go @@ -1420,13 +1420,6 @@ func (h *Handler) handlePostSQL(w http.ResponseWriter, r *http.Request) { // put the requestId in the context ctx := fbcontext.WithRequestID(r.Context(), requestID.String()) - sql := string(b) - rootOperator, err := h.api.CompilePlan(ctx, sql) - if err != nil { - h.writeBadRequest(w, r, err) - return - } - // Write response back to client. w.Header().Set("Content-Type", "application/json") @@ -1501,6 +1494,13 @@ func (h *Handler) handlePostSQL(w http.ResponseWriter, r *http.Request) { } } + sql := string(b) + rootOperator, err := h.api.CompilePlan(ctx, sql) + if err != nil { + writeError(err, false) + return + } + // Get a query iterator. iter, err := rootOperator.Iterator(ctx, nil) if err != nil { diff --git a/sql3/parser/walk.go b/sql3/parser/walk.go index 2453a5e8b..7db4c35a4 100644 --- a/sql3/parser/walk.go +++ b/sql3/parser/walk.go @@ -165,9 +165,6 @@ func walk(v Visitor, node Node) (_ Node, err error) { if err := walkIdent(v, &n.Name); err != nil { return node, err } - // if err := walkIdentList(v, n.UpdateOfColumns); err != nil { - // return node, err - // } for i := range n.Body { if body, err := walk(v, n.Body[i]); err != nil { return node, err @@ -188,15 +185,6 @@ func walk(v Visitor, node Node) (_ Node, err error) { n.WithClause = nil } } - /*for i := range n.ValueLists { - if list, err := walk(v, n.ValueLists[i]); err != nil { - return node, err - } else if list != nil { - n.ValueLists[i] = list.(*ExprList) - } else { - n.ValueLists[i] = nil - } - }*/ for i := range n.Columns { if col, err := walk(v, n.Columns[i]); err != nil { return node, err @@ -289,15 +277,6 @@ func walk(v Visitor, node Node) (_ Node, err error) { n.Select = nil } }*/ - /*if n.UpsertClause != nil { - if clause, err := walk(v, n.UpsertClause); err != nil { - return node, err - } else if clause != nil { - n.UpsertClause = clause.(*UpsertClause) - } else { - n.UpsertClause = nil - } - }*/ case *UpdateStatement: if n.WithClause != nil { @@ -373,21 +352,6 @@ func walk(v Visitor, node Node) (_ Node, err error) { if err := walkExpr(v, &n.WhereExpr); err != nil { return node, err } - // for i := range n.OrderingTerms { - // if term, err := walk(v, n.OrderingTerms[i]); err != nil { - // return node, err - // } else if term != nil { - // n.OrderingTerms[i] = term.(*OrderingTerm) - // } else { - // n.OrderingTerms[i] = nil - // } - // } - // if err := walkExpr(v, &n.LimitExpr); err != nil { - // return node, err - // } - // if err := walkExpr(v, &n.OffsetExpr); err != nil { - // return node, err - // } case *PrimaryKeyConstraint: if err := walkIdent(v, &n.Name); err != nil {