On Fri, Dec 3, 2021 at 2:26 PM Fujii Masao <masao.fu...@oss.nttdata.com> wrote:
> > For a cancel request maybe we can just say without te errcontext:
> >                      ereport(WARNING,
> >                              (errmsg("could not get result of cancel
> > request due to timeout")));
> >
> > See the below existing message using "cancel request":
> >                       errmsg("could not send cancel request: %s",
> >
> > For SQL command we can say:
> >                      ereport(WARNING,
> >                              (errmsg("could not get query result due to
> > timeout"),
> >                               query ? errcontext("remote SQL command:
> > %s", query) : 0));
>
> I wonder how pgfdw_get_cleanup_result() can determine which
> log message to report. Probably we can add new boolean argument
> to pgfdw_get_cleanup_result() so that it should be set to true
> for cancel request case, but false for query case. Then
> pgfdw_get_cleanup_result() can decide wihch message to log
> based on that argument. But it seems not good design to me.
> Thought?

Let's not use the boolean just for the cancel request which isn't
scalable IMO. Maybe a macro/enum?

Otherwise, we could just do, although it doesn't look elegant:

if (pgfdw_get_cleanup_result(conn, endtime, &result, "(cancel request)"))

if (strcmp(query, "(cancel request)") == 0)
    WARNING without  "remote SQL command:
else
    WARNING with "remote SQL command:

Regards,
Bharath Rupireddy.


Reply via email to