From 0a1ff1d724e8ef71e1d5e602930bec49f0a9053b Mon Sep 17 00:00:00 2001
From: Etsuro Fujita
Date: Thu, 3 Aug 2023 17:45:09 +0900
Subject: Doc: update documentation for creating custom scan paths.
Commit f49842d1e added a new callback for custom scan paths, but missed
updating the documentation.
Back-patch to all supported branches.
Discussion: https://postgr.es/m/CAPmGK15ODkN%2B%3DhkBCufj1HBW0x5OTb65Xuy7ryXchMdiCMpx_g%40mail.gmail.com
---
doc/src/sgml/custom-scan.sgml | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
(limited to 'doc/src')
diff --git a/doc/src/sgml/custom-scan.sgml b/doc/src/sgml/custom-scan.sgml
index b8963a28eb1..4ea00748b42 100644
--- a/doc/src/sgml/custom-scan.sgml
+++ b/doc/src/sgml/custom-scan.sgml
@@ -83,7 +83,7 @@ typedef struct CustomPath
by nodeToString, so that debugging routines that attempt to
print the custom path will work as designed. methods must
point to a (usually statically allocated) object implementing the required
- custom path methods, of which there is currently only one.
+ custom path methods, which are further detailed below.
@@ -123,6 +123,23 @@ Plan *(*PlanCustomPath) (PlannerInfo *root,
be a CustomScan object, which the callback must allocate and
initialize. See for more details.
+
+
+
+List *(*ReparameterizeCustomPathByChild) (PlannerInfo *root,
+ List *custom_private,
+ RelOptInfo *child_rel);
+
+ This callback is called while converting a path parameterized by the
+ top-most parent of the given child relation child_rel
+ to be parameterized by the child relation. The callback is used to
+ reparameterize any paths or translate any expression nodes saved in the
+ given custom_private member of a
+ CustomPath. The callback may use
+ reparameterize_path_by_child,
+ adjust_appendrel_attrs or
+ adjust_appendrel_attrs_multilevel as required.
+
--
cgit v1.2.3