On 08/23/21 14:30, Robert Haas wrote: > it seems likely that this proposed > API would have the exact same problem, because it would let people do > exactly the same thing. And, going through this proposed API would > still be significantly more expensive than just accessing the bare > variables, because you'd at least have to do some kind of lookup based > on the GUC name
I think the API ideas in [0] would not let people do exactly the same thing. They would avoid exposing the bare variables to overwrite. Not that there has been any plague of extensions going and overwriting GUCs, but I think in some messages on this thread I detected a sense that in principle it's better if an API precludes it, and that makes sense to me. The second idea also avoids the expense of name-based lookup (except once at extension initialization), and in fact minimizes the cost of obtaining the current value when needed, by slightly increasing the infrequent cost of updating values. Regards, -Chap [0] https://www.postgresql.org/message-id/6123C425.3080409%40anastigmatix.net