Revert current_query() change to use debug_query_string again; add comment.
authorBruce Momjian <bruce@momjian.us>
Thu, 8 Jan 2009 00:13:22 +0000 (00:13 +0000)
committerBruce Momjian <bruce@momjian.us>
Thu, 8 Jan 2009 00:13:22 +0000 (00:13 +0000)
doc/src/sgml/func.sgml
src/backend/utils/adt/misc.c

index 8b3830766d6d005ad5a72bc00143687e1b0c4606..5fc43e5efc7b99b2368912c7cb3fe3df68d3d71c 100644 (file)
@@ -11343,8 +11343,7 @@ postgres=# select * from unnest2(array[[1,2],[3,4]]);
       <row>
        <entry><literal><function>current_query</function></literal></entry>
        <entry><type>text</type></entry>
-       <entry>text of the currently executing query (might match
-         client-supplied query or be internal query string)</entry>
+       <entry>text of the currently executing query (might contain more than one statement)</entry>
       </row>  
 
       <row>
index 9ca40f85f44ace7df7ad0bf12c2393378739d453..a4a1a6c7bd0b8a1beb06156af0ff78b4937a5865 100644 (file)
@@ -31,7 +31,6 @@
 #include "storage/pmsignal.h"
 #include "storage/procarray.h"
 #include "utils/builtins.h"
-#include "tcop/pquery.h"
 #include "tcop/tcopprot.h"
 
 #define atooid(x)  ((Oid) strtoul((x), NULL, 10))
@@ -56,11 +55,16 @@ current_database(PG_FUNCTION_ARGS)
 /*
  * current_query()
  *  Expose the current query to the user (useful in stored procedures)
+ *  We might want to use ActivePortal->sourceText someday. 
  */
 Datum
 current_query(PG_FUNCTION_ARGS)
 {
-       PG_RETURN_TEXT_P(cstring_to_text(ActivePortal->sourceText));
+       /* there is no easy way to access the more concise 'query_string' */
+       if (debug_query_string)
+               PG_RETURN_TEXT_P(cstring_to_text(debug_query_string));
+       else
+               PG_RETURN_NULL();
 }
 
 /*