[ Joe, would you review this? ]

Your patch has been added to the PostgreSQL unapplied patches list at:

        http://momjian.postgresql.org/cgi-bin/pgpatches

It will be applied as soon as one of the PostgreSQL committers reviews
and approves it.

---------------------------------------------------------------------------


Bruce Momjian wrote:
> Tom Lane wrote:
> > Jonathan Beit-Aharon <[EMAIL PROTECTED]> writes:
> > > &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!conn)<br>
> > > &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
> > >  DBLINK_CONN_NOT_AVAIL;<br>
> > 
> > Could we see this in a less broken format?
> 
> Here is the patch in text format.
> 
> -- 
>   Bruce Momjian                        |  http://candle.pha.pa.us
>   pgman@candle.pha.pa.us               |  (610) 359-1001
>   +  If your life is a hard drive,     |  13 Roberts Road
>   +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

> --- dblink.c    Sat Jan  1 00:43:05 2005
> +++
> /home/jbeitaharon/dev/third/postgreSQL/contrib/dblink/dblink.c
> Thu Sep 22 16:10:20 2005
> @@ -329,12 +329,16 @@
>         if (!conn)
>                 DBLINK_CONN_NOT_AVAIL;
> +
> +       if (rcon)
> +               rcon->remoteTrFlag = (PQtransactionStatus(conn) !=
> PQTRANS_IDLE);
> -       res = PQexec(conn, "BEGIN");
> -       if (PQresultStatus(res) != PGRES_COMMAND_OK)
> -               DBLINK_RES_INTERNALERROR("begin error");
> -
> -       PQclear(res);
> +       if ((!rcon) || (!(rcon->remoteTrFlag))) {
> +               res = PQexec(conn, "BEGIN");
> +               if (PQresultStatus(res) != PGRES_COMMAND_OK)
> +                       DBLINK_RES_INTERNALERROR("begin error");
> +               PQclear(res);
> +       }
>         appendStringInfo(str, "DECLARE %s CURSOR FOR %s", curname,
> sql);
>         res = PQexec(conn, str->data);
> @@ -424,12 +428,13 @@
>         PQclear(res);
> -       /* commit the transaction */
> -       res = PQexec(conn, "COMMIT");
> -       if (PQresultStatus(res) != PGRES_COMMAND_OK)
> -               DBLINK_RES_INTERNALERROR("commit error");
> -
> -       PQclear(res);
> +       if ((!rcon) || (!(rcon->remoteTrFlag))) {
> +               /* commit the transaction */
> +               res = PQexec(conn, "COMMIT");
> +               if (PQresultStatus(res) != PGRES_COMMAND_OK)
> +                       DBLINK_RES_INTERNALERROR("commit error");
> +               PQclear(res);
> +       }
>         PG_RETURN_TEXT_P(GET_TEXT("OK"));
>  }

> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to