On Wed, Mar 24, 2021 at 12:01 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > I don't think I buy the premise that there are exactly two levels > on the client side.
Thanks for sharing your thoughts on this. I agree it's a complex issue, and the idea that there are possibly more than two logical levels is, for me, maybe your most interesting observation.
Upthread Tom mused about how the JDBC driver would handle it. I can tell you that it handles it fine with no changes as does the go driver. Further as Jack pointed out it provides significant performance benefits.
The original discussion correctly surmises that the DESCRIBE statement is rarely (if ever) used as any advantages of sending are nullified by the cost of sending it.
I prefer the GUC as this allows pools to be configured to reset the setting when returning the connection to the pool and setting it correctly for the client when borrowing the connection.