On 09/25/2018 01:50 PM, Joe Conway wrote: > On 08/08/2018 11:57 AM, Tom Lane wrote: >> =?utf-8?q?PG_Doc_comments_form?= <nore...@postgresql.org> writes: >>> The following documentation comment has been logged on the website: >>> Documentation says: >> >>> Return Value >>> Returns last error message, or an empty string if there has been no error in >>> this connection. >>> Which is invalid. >>> Actually it returns 'OK' string if no error was raised. >> >> Good catch! The code's quite clear about it, but the SGML docs need >> fixed. > > > As mentioned on the nearby thread, will fix. I suppose this ought to be > back-patched. > > >>> Secondly >>> dblink_is_busy must be first called to make dblink_error_message returns an >>> error message. (Tested on 9.6.9) >> >> Meh. I see what you're getting at here, I think, but that seems like a >> completely wrong/misleading statement of the issue. Joe, can you think of >> better phraseology? > > Maybe a note, something like this? > ------------ > When asynchronous queries are initiated by dblink_send_query(), the > error message associated with the connection might not get updated until > the server's response message is consumed. This typically means that > dblink_is_busy() or dblink_get_result() should be called prior to > dblink_error_message(), so that any error generated by the asynchronous > query() will be visible. > ------------
And now with the corresponding patch attached. Thoughts/comments? Joe -- Crunchy Data - http://crunchydata.com PostgreSQL Support for Secure Enterprises Consulting, Training, & Open Source Development
diff --git a/doc/src/sgml/dblink.sgml b/doc/src/sgml/dblink.sgml index 87e14ea..97dc3b8 100644 *** a/doc/src/sgml/dblink.sgml --- b/doc/src/sgml/dblink.sgml *************** dblink_error_message(text connname) retu *** 1165,1175 **** <title>Return Value</title> <para> ! Returns last error message, or an empty string if there has been no error in this connection. </para> </refsect1> <refsect1> <title>Examples</title> --- 1165,1189 ---- <title>Return Value</title> <para> ! Returns last error message, or <literal>OK</literal> if there has been no error in this connection. </para> </refsect1> + <refsect1> + <title>Notes</title> + + <para> + When asynchronous queries are initiated by + <function>dblink_send_query</function>, the error message associated with + the connection might not get updated until the server's response message + is consumed. This typically means that <function>dblink_is_busy</function> + or <function>dblink_get_result</function> should be called prior to + <function>dblink_error_message</function>, so that any error generated by + the asynchronous query will be visible. + </para> + </refsect1> + <refsect1> <title>Examples</title>
signature.asc
Description: OpenPGP digital signature