"Merlin Moncure" <mmoncure@xxxxxxxxx> writes: > AIUI, the biggest problem with the current behavior is that there is > no way to usefully index composite types, it looks like > create index bar_idx on bar(f); > create index bar_idx on bar((f).*); > create index bar_idx on bar((f).a, (f).b); The last case works, you just don't have enough parentheses. regression=# create type mytype as (a int, b float); CREATE TYPE regression=# create table foo(f mytype); CREATE TABLE regression=# create index fooi on foo(((f).a), ((f).b)); CREATE INDEX regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match