Joseph Shraibman <jks@selectacast.net> writes:
> playpen=# create table jm(
> playpen(# jid int NOT NULL,
> playpen(# mid int ,
> playpen(# UNIQUE(jid, mid)
> playpen(# );
> NOTICE: CREATE TABLE/UNIQUE will create implicit index 'jm_jid_key' for table 'jm'
> CREATE
> Why isn't the index created called 'jm_jid_mid_key' ?
Laziness, mainly. There's a subroutine in the parser that's responsible
for forming these names and doing truncation if they are too long. It
only handles three name components (table, field, and "_key" suffix) at
the moment. Feel free to submit a patch that makes it smarter...
regards, tom lane