• Tom Lane's avatar
    Drop the rule against included index columns duplicating key columns. · 701fd0bb
    Tom Lane authored
    The initial version of the included-index-column feature stated that
    included columns couldn't be the same as any key column of the index.
    While it'd be pretty silly to do that, since the included column would be
    entirely redundant, we've never prohibited redundant index columns before
    so it's not very consistent to do so here.  Moreover, the prohibition
    was itself badly implemented, so that it failed to reject columns that
    were effectively identical but not spelled quite alike, as reported by
    Aditya Toshniwal.
    
    (Moreover, it's not hard to imagine that for some non-btree index types,
    such cases would be non-silly anyhow: the index might use a lossy
    representation for key columns but be able to support retrieval of the
    original form of included columns.)
    
    Hence, let's just drop the prohibition.
    
    In passing, do some copy-editing on the documentation for the
    included-column feature.
    
    Yugo Nagata; documentation and test corrections by me
    
    Discussion: https://postgr.es/m/CAM9w-_mhBCys4fQNfaiQKTRrVWtoFrZ-wXmDuE9Nj5y-Y7aDKQ@mail.gmail.com
    701fd0bb
index_including.out 17.8 KB