On Tue, Oct 14, 2008 at 10:59 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Merlin Moncure" <mmoncure@gmail.com> writes:
>> Here is another use-case solved by the patch. Previously, there was
>> no easy way to index on a composite function result. The following
>> works in HEAD:
>
>> create function func(f foo, a out int, b out int) returns record ...
>
>> create index foo_idx on foo(func(foo));
>
> Urk ... "works" for small values of "work", perhaps. Did you try using
> the index from a fresh session?
>
> We could support this for named composite types but not for anonymous
> record types. I'm not quite sure how to enforce that distinction
> considering that the opclass is defined to take "record". Maybe we
> should apply CheckAttributeType() to index column types?
yup. being able to do this with anonymous types would be nice
though...put a thumbtack on that :-)
merlin