On Fri, Apr 23, 2021 at 6:45 PM Tom Lane <t...@sss.pgh.pa.us> wrote: > > Greg Nancarrow <gregn4...@gmail.com> writes: > > I'm curious. The FmgrBuiltin struct includes the "strict" flag, so > > that would "lock down the value" of the strict flag, wouldn't it? > > It does, but that's much more directly a property of the function's > C code than parallel-safety is. >
Isn't parallel safety also the C code property? I mean unless someone changes the built-in function code, changing that property would be dangerous. The other thing is even if a user is allowed to change one function's property, how will they know which other functions are called by that function and whether they are parallel-safe or not. For example, say if the user wants to change the parallel safe property of a built-in function brin_summarize_new_values, unless she changes its code and the functions called by it like brin_summarize_range, it would be dangerous. So, isn't it better to disallow changing parallel safety for built-in functions? Also, if the strict property of built-in functions is fixed internally, why we allow users to change it and is that of any help? -- With Regards, Amit Kapila.