On 2020-May-05, Ranier Vilela wrote: > And in that specific case, leaving resources blocked, which perhaps, in my > humble opinion, could be released quickly.
I very much doubt that you can measure any difference at all between these two codings of the function. I agree with the principle you mention, of not holding resources for long if they can be released earlier; but in this case the table_close call occurs across a ReleaseSysCache() call, which is hardly of significance. It's not like you have to wait for some other transaction, or wait for I/O, or anything like that that would make it measurable. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services