On Tue, Feb 4, 2025 at 11:37 PM Sutou Kouhei <k...@clear-code.com> wrote:
>
> Hi,
>
> In <cad21aodch1io_dgtsmnmz4buwfdpheue_8vqnvi31+78pt7...@mail.gmail.com>
>   "Re: Make COPY format extendable: Extract COPY TO format implementations" 
> on Tue, 4 Feb 2025 17:32:07 -0800,
>   Masahiko Sawada <sawada.m...@gmail.com> wrote:
>
> > BTW we need to check if the return value type of the handler function
> > is copy_handler.
>
> Oh, can we do it without calling a function?

Yes.

> It seems that
> FmgrInfo doesn't have return value type information. Should
> we read pg_catalog.pg_proc or something for it?

Yes, we can do like what we do for TABLESAMPLE for example:

    /* check that handler has correct return type */
    if (get_func_rettype(handlerOid) != TSM_HANDLEROID)
        ereport(ERROR,
                (errcode(ERRCODE_WRONG_OBJECT_TYPE),
                 errmsg("function %s must return type %s",
                        NameListToString(rts->method), "tsm_handler"),
                 parser_errposition(pstate, rts->location)));

Regards,

-- 
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com


Reply via email to