validate_opclass was renamed to amvalidate.
It seems to me, that amvalidate method of AM should get as argument only Oid of
operator family. Layout and meaning of amproc/amop fields are differ for
different AM and there isn't an AM which implements all possible features.
Actually, I'm a bit confused with follow piece of code (ginvalidate, for
instance):
foreach(l, opclass->procedures)
{
...
if (proc->lefttype != opclass->intype
|| proc->righttype != opclass->intype)
continue;
...
That is amproc could contain a row, which connected to some operator class but
this fact will be missed this check and may be, never used or used wrongly.
Despite these observations, I think that this work is needed.
--
Teodor Sigaev E-mail: teo...@sigaev.ru
WWW: http://www.sigaev.ru/
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers