3838 A custom scan provider will typically add paths for a base relation by
3939 setting the following hook, which is called after the core code has
4040 generated all the access paths it can for the relation (except for
41- Gather paths, which are made after this call so that they can use
42- partial paths added by the hook):
41+ Gatherand Gather Merge paths, which are made after this call so that
42+ they can use partial paths added by the hook):
4343<programlisting>
4444typedef void (*set_rel_pathlist_hook_type) (PlannerInfo *root,
4545 RelOptInfo *rel,
@@ -53,9 +53,10 @@ extern PGDLLIMPORT set_rel_pathlist_hook_type set_rel_pathlist_hook;
5353 Although this hook function can be used to examine, modify, or remove
5454 paths generated by the core system, a custom scan provider will typically
5555 confine itself to generating <structname>CustomPath</structname> objects and adding
56- them to <literal>rel</literal> using <function>add_path</function>. The custom scan
57- provider is responsible for initializing the <structname>CustomPath</structname>
58- object, which is declared like this:
56+ them to <literal>rel</literal> using <function>add_path</function>, or
57+ <function>add_partial_path</function> if they are partial paths. The
58+ custom scan provider is responsible for initializing the
59+ <structname>CustomPath</structname> object, which is declared like this:
5960<programlisting>
6061typedef struct CustomPath
6162{