Async dblink functions require a named connection, and therefore should
use DBLINK_GET_NAMED_CONN rather than DBLINK_GET_CONN. Problem found by Peter Eisentraut and patch by Fujii Masao.
This commit is contained in:
parent
eb03cff820
commit
8af3596d6b
@ -613,16 +613,13 @@ Datum
|
||||
dblink_send_query(PG_FUNCTION_ARGS)
|
||||
{
|
||||
PGconn *conn = NULL;
|
||||
char *connstr = NULL;
|
||||
char *sql = NULL;
|
||||
remoteConn *rconn = NULL;
|
||||
char *msg;
|
||||
bool freeconn = false;
|
||||
int retval;
|
||||
|
||||
if (PG_NARGS() == 2)
|
||||
{
|
||||
DBLINK_GET_CONN;
|
||||
DBLINK_GET_NAMED_CONN;
|
||||
sql = text_to_cstring(PG_GETARG_TEXT_PP(1));
|
||||
}
|
||||
else
|
||||
@ -711,13 +708,13 @@ dblink_record_internal(FunctionCallInfo fcinfo, bool is_async)
|
||||
if (PG_NARGS() == 2)
|
||||
{
|
||||
/* text,bool */
|
||||
DBLINK_GET_CONN;
|
||||
DBLINK_GET_NAMED_CONN;
|
||||
fail = PG_GETARG_BOOL(1);
|
||||
}
|
||||
else if (PG_NARGS() == 1)
|
||||
{
|
||||
/* text */
|
||||
DBLINK_GET_CONN;
|
||||
DBLINK_GET_NAMED_CONN;
|
||||
}
|
||||
else
|
||||
/* shouldn't happen */
|
||||
|
Loading…
Reference in New Issue
Block a user