GIST and GIN currently set their amstrategies entries to 100, which is
a completely arbitrary number, since these index AMs don't impose any
particular interpretation on operator strategy numbers.  Usually it's
far too large and results in wasted space in relcache entries.  But it's
not impossible that it could be too small for a complex opclass.

I propose that we should set pg_am.amstrategies to zero when the index
AM doesn't have a fixed interpretation of strategy numbers.  This would
make it clearer that there's no intended upper bound.  It would also
cause the relcache not to bother trying to preload operator numbers,
which saves time and space --- neither of these AMs ever actually look
at the rd_operator array in relcache entries.

Comments?  Can anyone think of anything that is likely to break?
(I can only see one or two trivial code adjustments that would be

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings

Reply via email to