• Tom Lane's avatar
    Add an in-core GiST index opclass for inet/cidr types. · f23a5630
    Tom Lane authored
    This operator class can accelerate subnet/supernet tests as well as
    btree-equivalent ordered comparisons.  It also handles a new network
    operator inet && inet (overlaps, a/k/a "is supernet or subnet of"),
    which is expected to be useful in exclusion constraints.
    
    Ideally this opclass would be the default for GiST with inet/cidr data,
    but we can't mark it that way until we figure out how to do a more or
    less graceful transition from the current situation, in which the
    really-completely-bogus inet/cidr opclasses in contrib/btree_gist are
    marked as default.  Having the opclass in core and not default is better
    than not having it at all, though.
    
    While at it, add new documentation sections to allow us to officially
    document GiST/GIN/SP-GiST opclasses, something there was never a clear
    place to do before.  I filled these in with some simple tables listing
    the existing opclasses and the operators they support, but there's
    certainly scope to put more information there.
    
    Emre Hasegeli, reviewed by Andreas Karlsson, further hacking by me
    f23a5630
pg_operator.h 101 KB