Hi hackers,

I have trouble understanding the message I got in response to CREATE INDEX:

CREATE INDEX ecix ON ec USING btree ( ec ec_code_ops );
ERROR:  RelationInvokeStrategy: cannot evaluate strategy 5

The strategy in question is defined as:

INSERT INTO pg_amop (amopid, amopclaid, amopopr, amopstrategy, 
                     amopselect, amopnpages)
   SELECT am.oid, opcl.oid, c.opoid, 5,
        'btreesel'::regproc, 'btreenpage'::regproc
   FROM pg_am am, pg_opclass opcl, ec_code_ops_tmp c
   WHERE amname = 'btree' and opcname = 'ec_code_ops' 
      and c.oprname = '>';

where ec_code_ops_tmp is the result of:

SELECT o.oid AS opoid, o.oprname
INTO TABLE ec_code_ops_tmp
FROM pg_operator o, pg_type t
WHERE o.oprleft = t.oid and o.oprright = t.oid
   and t.typname = 'ec_code';

But I can evaluate this function as an operator without problems:

emp=> select * from test_ec where ec > '5';
       ec
---------
  6.2.-.-
  5.4.1.9
  5.4.3.9
5.2.1.114
(4 rows)


This did not happen to me in older versions, including 6.3.2-release. I am wondering whether something changed in btree after 6.3.2, and how do I accomodate my extensions if it did.

Thank you,

Gene

(I would appreciate a direct reply, as I am not a member of the hackers list)


Sat, 10 Oct 1998 16:06:16 -0400
"Gene Selkov, Jr." <selkovjr@mcs.anl.gov>
a btree strategy hosed in 6.4.BETA1 and in current snapshot