<div dir="ltr">Hello,<div><br></div><div>I am developing an extension for postgres that links dynamically with liblwgeom. I am new to the subject to please bear with me.</div><div><br></div><div>From what I understand, the errors are reported via:</div><br>static void default_errorreporter(const char *fmt, va_list ap);<br>lwreporter lwerror_var = default_errorreporter;<br><div></div><div><br></div><div>and default error reporter calls exit(1). This would terminate the current connection to the database, however then liblwgeom is used from within postgis (> 2.0), these callbacks are overriden with the call:</div><div><br></div>_PG_init(void) <div><br></div><div>in</div><div><br></div><div><a href="https://github.com/postgis/postgis/blob/426d8414298272b4ace32e361a40adfd081b2e60/postgis/postgis_module.c#L44">https://github.com/postgis/postgis/blob/426d8414298272b4ace32e361a40adfd081b2e60/postgis/postgis_module.c#L44</a></div><div><br></div><div>which calls elog or ereport and those function calls in turn also terminate transaction but in a different way.</div><div><br></div><div>So the question is it assumed that anything reported with lwerror not recoverable and should terminate the current transaction and client connection?</div><div><br></div><div>Thank you,</div><div>Igor</div></div>