Simplify API for initially hooking custom-path providers into the planner.
Instead of register_custom_path_provider and a CreateCustomScanPath
callback, let's just provide a standard function hook in set_rel_pathlist.
This is more flexible than what was previously committed, is more like the
usual conventions for planner hooks, and requires less support code in the
core. We had discussed this design (including centralizing the
set_cheapest() calls) back in March or so, so I'm not sure why it wasn't
done like this already.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/c2ea2285e978d9289084846a3343cef7d261d880
Modified Files
--------------
src/backend/optimizer/path/allpaths.c | 48 ++++++++++++++-------------------
src/backend/optimizer/util/pathnode.c | 48 ---------------------------------
src/include/nodes/relation.h | 3 ---
src/include/optimizer/pathnode.h | 9 -------
src/include/optimizer/paths.h | 7 +++++
5 files changed, 27 insertions(+), 88 deletions(-)