On Wed, Feb 04, 2026 at 12:14:06AM -0500, Corey Huinker wrote: > I'll switch to adding the nulls to the array result, and add tests for both > leading and trailing expr missing.
OK, fine by me. Thanks. Let's make something happen to finish all that. > Mild change of subject, it seems that we can't get the expression fake > attnum context into the errors we re-throw in statatt_build_stavalues - it > might make sense to to bring a version of that function into > extended_stats_funcs where we can add the extra parameters for context (and > avoid the need for a text datum version of some longish strings that we've > already just converted from converting json-string to c-string. If I did > make a new function, then that'd be 2 statatt_* functions that no longer > need to be visible outside of attribute_stats.c. Thoughts on both making > the new function, and maybe sending a few of these statatts back to > static-land? Hmm. I am not sure, that depends. How much additional information would these extra parameter bring to the errors generated in statatt_build_stavalues(). We could also set an error context callback (ErrorContextCallback) within import_pg_statistic() or in the loop that calls the routine, with some data based on the counter of "numexprs" to provide more context about where an error is happening. I have used that in the past to avoid complicating functions across multiple levels of a stack (for example, see ReindexPartitions() in indexcmds.c with its ReindexErrorInfo). -- Michael
signature.asc
Description: PGP signature
