Alexander Korotkov <a.korotkov@postgrespro.ru> writes:
> OK. So, as we mentioned before, if we need to expose something of am
> parameters at SQL-level then we need to write special functions which would
> call amhandler and expose it.
> Did we come to the agreement on this solution?
I think we were agreed that we should write functions to expose whatever
needs to be visible at SQL level. I'm not sure that we had a consensus
on exactly which things need to be visible.
One thought here is that we might not want to just blindly duplicate
the existing pg_am behavior anyway. For example, the main use of the
amstrategies column was to allow validation of pg_amop.amopstrategy
entries --- but in 4 out of the 6 existing AMs, knowledge of the AM alone
isn't sufficient information to determine the valid set of strategy
numbers anyway. So inventing a "pg_amstrategies(am oid)" function seems
like it would be repeating a previous failure. Not quite sure what to
do instead, though. We could imagine something like "pg_amstrategies(am
oid, opclass oid)", but I don't see how to implement it without asking
opclasses to provide a validation function, which maybe is a change we
don't want to take on here.
regards, tom lane