Thread: Missing comments/docs about custom scan path

Missing comments/docs about custom scan path

From
Etsuro Fujita
Date:
Hi,

While working on [1], I noticed $SUBJECT: commit e7cb7ee14 failed to
update comments for the CustomPath struct in pathnodes.h, and commit
f49842d1e failed to update docs about custom scan path callbacks in
custom-scan.sgml, IIUC.  Attached are patches for updating these,
which I created separately for ease of review (patch
update-custom-scan-path-comments.patch for the former and patch
update-custom-scan-path-docs.patch for the latter).  In the second
patch I used almost the same text as for the
ReparameterizeForeignPathByChild callback function in fdwhandler.sgml.

Best regards,
Etsuro Fujita

[1] https://www.postgresql.org/message-id/CAPmGK16ah9JtyVPtdqu6d%3DQGkRX%3DRAzoYQfX7%3DLZ%2BKnqwBfftg%40mail.gmail.com

Attachment

Re: Missing comments/docs about custom scan path

From
Etsuro Fujita
Date:
On Mon, Jul 31, 2023 at 7:05 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
> While working on [1], I noticed $SUBJECT: commit e7cb7ee14 failed to
> update comments for the CustomPath struct in pathnodes.h, and commit
> f49842d1e failed to update docs about custom scan path callbacks in
> custom-scan.sgml, IIUC.  Attached are patches for updating these,
> which I created separately for ease of review (patch
> update-custom-scan-path-comments.patch for the former and patch
> update-custom-scan-path-docs.patch for the latter).  In the second
> patch I used almost the same text as for the
> ReparameterizeForeignPathByChild callback function in fdwhandler.sgml.

There seem to be no objections, so I pushed both.

Best regards,
Etsuro Fujita



Re: Missing comments/docs about custom scan path

From
Etsuro Fujita
Date:
On Thu, Aug 3, 2023 at 6:01 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
> On Mon, Jul 31, 2023 at 7:05 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
> > While working on [1], I noticed $SUBJECT:

Another thing I would like to propose is minor adjustments to the docs
related to parallel query:

    A custom scan provider will typically add paths for a base relation by
    setting the following hook, which is called after the core code has
    generated all the access paths it can for the relation (except for
    Gather paths, which are made after this call so that they can use
    partial paths added by the hook):

For clarity, I think "except for Gather paths" should be "except for
Gather and Gather Merge paths".

    Although this hook function can be used to examine, modify, or remove
    paths generated by the core system, a custom scan provider will
    typically confine itself to generating CustomPath objects and adding
    them to rel using add_path.

For clarity, I think "adding them to rel using add_path" should be eg,
"adding them to rel using add_path, or using add_partial_path if they
are partial paths".

Attached is a patch for that.

Best regards,
Etsuro Fujita

Attachment

Re: Missing comments/docs about custom scan path

From
Richard Guo
Date:

On Tue, Aug 29, 2023 at 5:08 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
Another thing I would like to propose is minor adjustments to the docs
related to parallel query:

    A custom scan provider will typically add paths for a base relation by
    setting the following hook, which is called after the core code has
    generated all the access paths it can for the relation (except for
    Gather paths, which are made after this call so that they can use
    partial paths added by the hook):

For clarity, I think "except for Gather paths" should be "except for
Gather and Gather Merge paths".

    Although this hook function can be used to examine, modify, or remove
    paths generated by the core system, a custom scan provider will
    typically confine itself to generating CustomPath objects and adding
    them to rel using add_path.

For clarity, I think "adding them to rel using add_path" should be eg,
"adding them to rel using add_path, or using add_partial_path if they
are partial paths".

+1.  I can see that this change makes the doc more consistent with the
comments in set_rel_pathlist.

Thanks
Richard

Re: Missing comments/docs about custom scan path

From
Etsuro Fujita
Date:
Hi Richard,

On Wed, Aug 30, 2023 at 11:05 AM Richard Guo <guofenglinux@gmail.com> wrote:
> On Tue, Aug 29, 2023 at 5:08 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote:
>> Another thing I would like to propose is minor adjustments to the docs
>> related to parallel query:
>>
>>     A custom scan provider will typically add paths for a base relation by
>>     setting the following hook, which is called after the core code has
>>     generated all the access paths it can for the relation (except for
>>     Gather paths, which are made after this call so that they can use
>>     partial paths added by the hook):
>>
>> For clarity, I think "except for Gather paths" should be "except for
>> Gather and Gather Merge paths".
>>
>>     Although this hook function can be used to examine, modify, or remove
>>     paths generated by the core system, a custom scan provider will
>>     typically confine itself to generating CustomPath objects and adding
>>     them to rel using add_path.
>>
>> For clarity, I think "adding them to rel using add_path" should be eg,
>> "adding them to rel using add_path, or using add_partial_path if they
>> are partial paths".

> +1.  I can see that this change makes the doc more consistent with the
> comments in set_rel_pathlist.

Agreed.

I have committed the patch.  Thanks for taking a look!

Best regards,
Etsuro Fujita