On 12/29/2025 7:44 PM, Tom Lane wrote: > Bryan Green <[email protected]> writes: >> One notable behavioral change: check hooks using GUC_EXTRA_IS_CONTEXT >> now use palloc() instead of guc_malloc(). The old approach with >> guc_malloc() allowed check hooks to return false on OOM, letting the >> caller handle it at the appropriate error level. With palloc() an OOM >> throws an immediate ERROR. This seemed like an acceptable tradeoff > > Why? It seems both inconsistent and unsafe. > > regards, tom lane Fair enough to call me on that. I mainly thought that if we are having problems allocating what is usually a few bytes then throwing an error would have been acceptable. Based on your comment about unsafe and a bit deeper thinking I can see where this is probably not a welcome change in behavior. I suppose we could catch the error and convert it to a false return.
-- Bryan Green EDB: https://www.enterprisedb.com
