public inbox for [email protected]  
help / color / mirror / Atom feed
From: Joe Conway <[email protected]>
To: Tom Lane <[email protected]>
To: [email protected]
Cc: [email protected]
Subject: Re: dblink_error_message return value
Date: Tue, 2 Oct 2018 08:45:37 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>
	<[email protected]>
	<[email protected]>

On 09/25/2018 03:58 PM, Joe Conway wrote:
> 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?= <[email protected]> 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?


Going once, going twice, ...
(if no complaints will commit soon)

Joe

-- 
Crunchy Data - http://crunchydata.com
PostgreSQL Support for Secure Enterprises
Consulting, Training, & Open Source Development


Attachments:

  [text/x-patch] doc-dblink_error_message-01.patch (1.3K, 2-doc-dblink_error_message-01.patch)
  download | inline diff:
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>
  


  [application/pgp-signature] signature.asc (819B, 3-signature.asc)
  download

view thread (7+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected]
  Subject: Re: dblink_error_message return value
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox