• T
    Restructure pg_opclass, pg_amop, and pg_amproc per previous discussions in · f933766b
    Tom Lane 提交于
    pgsql-hackers.  pg_opclass now has a row for each opclass supported by each
    index AM, not a row for each opclass name.  This allows pg_opclass to show
    directly whether an AM supports an opclass, and furthermore makes it possible
    to store additional information about an opclass that might be AM-dependent.
    pg_opclass and pg_amop now store "lossy" and "haskeytype" information that we
    previously expected the user to remember to provide in CREATE INDEX commands.
    Lossiness is no longer an index-level property, but is associated with the
    use of a particular operator in a particular index opclass.
    
    Along the way, IndexSupportInitialize now uses the syscaches to retrieve
    pg_amop and pg_amproc entries.  I find this reduces backend launch time by
    about ten percent, at the cost of a couple more special cases in catcache.c's
    IndexScanOK.
    
    Initial work by Oleg Bartunov and Teodor Sigaev, further hacking by Tom Lane.
    
    initdb forced.
    f933766b
create_index.sgml 13.2 KB