-
- Downloads
Adjust indexscan planning logic to keep RestrictInfo nodes associated
with index qual clauses in the Path representation. This saves a little work during createplan and (probably more importantly) allows reuse of cached selectivity estimates during indexscan planning. Also fix latent bug: wrong plan would have been generated for a 'special operator' used in a nestloop-inner-indexscan join qual, because the special operator would not have gotten into the list of quals to recheck. This bug is only latent because at present the special-operator code could never trigger on a join qual, but sooner or later someone will want to do it.
Showing
- src/backend/nodes/outfuncs.c 4 additions, 3 deletionssrc/backend/nodes/outfuncs.c
- src/backend/optimizer/path/costsize.c 4 additions, 1 deletionsrc/backend/optimizer/path/costsize.c
- src/backend/optimizer/path/indxpath.c 77 additions, 28 deletionssrc/backend/optimizer/path/indxpath.c
- src/backend/optimizer/path/orindxpath.c 33 additions, 31 deletionssrc/backend/optimizer/path/orindxpath.c
- src/backend/optimizer/plan/createplan.c 129 additions, 68 deletionssrc/backend/optimizer/plan/createplan.c
- src/backend/optimizer/util/pathnode.c 9 additions, 5 deletionssrc/backend/optimizer/util/pathnode.c
- src/backend/optimizer/util/restrictinfo.c 94 additions, 25 deletionssrc/backend/optimizer/util/restrictinfo.c
- src/backend/utils/adt/selfuncs.c 22 additions, 6 deletionssrc/backend/utils/adt/selfuncs.c
- src/include/nodes/relation.h 21 additions, 19 deletionssrc/include/nodes/relation.h
- src/include/optimizer/paths.h 3 additions, 1 deletionsrc/include/optimizer/paths.h
- src/include/optimizer/restrictinfo.h 4 additions, 1 deletionsrc/include/optimizer/restrictinfo.h
Loading
Please register or sign in to comment