]> granicus.if.org Git - postgresql/commit
Provide real selectivity estimators for inet/cidr operators.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 1 Apr 2015 21:11:21 +0000 (17:11 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 1 Apr 2015 21:11:21 +0000 (17:11 -0400)
commit89840d7d3fa943cb932f6a00707fdb17a9cab001
tree1e9b4f8a5fbff0acffa6b5cfa7c7a5da333ce118
parentf770870d9e4d01f4b255a3df6c2c4a2dcfcbcce0
Provide real selectivity estimators for inet/cidr operators.

This patch fills in the formerly-stub networksel() and networkjoinsel()
estimation functions.  Those are used for << <<= >> >>= and && operators
on inet/cidr types.  The estimation is not perfect, certainly, because
we rely on the existing statistics collected for the inet btree operators.
But it's a long way better than nothing, and it's not clear that asking
ANALYZE to collect separate stats for these operators would be a win.

Emre Hasegeli, with reviews from Dilip Kumar and Heikki Linnakangas,
and some further hacking by me
src/backend/utils/adt/network_selfuncs.c