aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/json.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2016-03-14 19:23:29 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2016-03-14 19:23:29 -0400
commit5864d6a4b62ada2ad60a8c456b4ee62972a9c10d (patch)
treea99f4d3ae8800f1c2bbd27ec40c0b78cfba4fd1b /src/backend/utils/adt/json.c
parent28048cbaa285b8ac46940e4b39f985d9885fc698 (diff)
downloadpostgresql-5864d6a4b62ada2ad60a8c456b4ee62972a9c10d.tar.gz
postgresql-5864d6a4b62ada2ad60a8c456b4ee62972a9c10d.zip
Provide a planner hook at a suitable place for creating upper-rel Paths.
In the initial revision of the upper-planner pathification work, the only available way for an FDW or custom-scan provider to inject Paths representing post-scan-join processing was to insert them during scan-level GetForeignPaths or similar processing. While that's not impossible, it'd require quite a lot of duplicative processing to look forward and see if the extension would be capable of implementing the whole query. To improve matters for custom-scan providers, provide a hook function at the point where the core code is about to start filling in upperrel Paths. At this point Paths are available for the whole scan/join tree, which should reduce the amount of redundant effort considerably. (An alternative design that was suggested was to provide a separate hook for each post-scan-join processing step, but that seems messy and not clearly more useful.) Following our time-honored tradition, there's no documentation for this hook outside the source code. As-is, this hook is only meant for custom scan providers, which we can't assume very much about. A followon patch will implement an FDW callback to let FDWs do the same thing in a somewhat more structured fashion.
Diffstat (limited to 'src/backend/utils/adt/json.c')
0 files changed, 0 insertions, 0 deletions