Hi,
pstate is touched here:
a) BeginCopy line 1489:
        ProcessCopyOptions(pstate, cstate, is_from, options);
b) ProcessCopyOptions line 1137:

                        if (format_specified)
                                ereport(ERROR,
                                                (errcode(ERRCODE_SYNTAX_ERROR),
                                                 errmsg("conflicting or 
redundant options"),
                                                 parser_errposition(pstate, 
defel->location)));

best regards.
Ranier Vilela

________________________________________
De: Tom Lane <t...@sss.pgh.pa.us>
Enviado: sexta-feira, 22 de novembro de 2019 22:17
Para: Ranier Vilela
Cc: pgsql-hack...@postgresql.org
Assunto: Re: [PATCH] Tiny optmization.

Ranier Vilela <ranier_...@hotmail.com> writes:
> Redudant because he it's been dereferenced here:
> line 3410:
>         cstate = BeginCopy(pstate, true, rel, NULL, InvalidOid, attnamelist, 
> options);

Not necessarily ... the rel!=NULL code path there doesn't touch pstate,
and that seems to be what contrib/file_fdw is relying on.

Arguably, the rel==NULL code path in BeginCopy should be prepared to
support pstate being null, too.  But what you proposed here is certainly
not OK.

                        regards, tom lane


Reply via email to