mirror of https://github.com/postgres/postgres
SQL/JSON: Remove useless code in ExecInitJsonExpr()
The code was for adding an unconditional JUMP to the next step, which is unnecessary processing. Reported-by: Jian He <jian.universality@gmail.com> Discussion: https://postgr.es/m/CACJufxEo4sUjKCYtda0_qt9tazqqKPmF1cqhW9KBOUeJFqQd2g@mail.gmail.com Backpatch-through: 17
This commit is contained in:
parent
4fc6a55560
commit
6f9a62b454
|
@ -4312,21 +4312,6 @@ ExecInitJsonExpr(JsonExpr *jsexpr, ExprState *state,
|
|||
scratch->d.constval.isnull = true;
|
||||
ExprEvalPushStep(state, scratch);
|
||||
|
||||
/*
|
||||
* Jump to coerce the NULL using json_populate_type() if needed. Coercing
|
||||
* NULL is only interesting when the RETURNING type is a domain whose
|
||||
* constraints must be checked. jsexpr->use_json_coercion must have been
|
||||
* set in that case.
|
||||
*/
|
||||
if (get_typtype(jsexpr->returning->typid) == TYPTYPE_DOMAIN &&
|
||||
DomainHasConstraints(jsexpr->returning->typid))
|
||||
{
|
||||
Assert(jsexpr->use_json_coercion);
|
||||
scratch->opcode = EEOP_JUMP;
|
||||
scratch->d.jump.jumpdone = state->steps_len + 1;
|
||||
ExprEvalPushStep(state, scratch);
|
||||
}
|
||||
|
||||
/*
|
||||
* To handle coercion errors softly, use the following ErrorSaveContext to
|
||||
* pass to ExecInitExprRec() when initializing the coercion expressions
|
||||
|
|
Loading…
Reference in New Issue