I think this patch is a nice improvement!
On Jan 3, 2019, at 2:08 PM, Andres Freund <andres@anarazel.de> wrote:
> Or we could just add an ERROR variant that doesn't exit. Years back
> I'd proposed that we make the log level a bitmask, but it could also
> just be something like CALLSITE_ERROR or something roughly along those
> lines. There's a few cases in backend code where that'd be beneficial
> too.
I think the logging system can also be applied on pg_regress. Perhaps even
for the external frontend applications?
The patch cannot be applied directly on HEAD. So I patched it on top of
60d99797bf. When I call pg_log_error() in initdb, I see
Program received signal SIGSEGV, Segmentation fault.
__strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:62
62 ../sysdeps/x86_64/multiarch/strlen-avx2.S: No such file or directory.
(gdb) bt
#0 __strlen_avx2 () at ../sysdeps/x86_64/multiarch/strlen-avx2.S:62
#1 0x0000555555568f96 in dopr.constprop ()
#2 0x0000555555569ddb in pg_vsnprintf ()
#3 0x0000555555564236 in pg_log_generic ()
#4 0x000055555555c240 in main ()
I'm not sure what would be causing this behavior. I would appreciate
references or docs for testing and debugging patches more efficiently.
Now I'm having difficulties loading symbols of initdb in gdb.
Thank you,
Donald Dong