On Tue, Jan 31, 2012 at 4:59 AM, Kyotaro HORIGUCHI <horiguchi.kyot...@oss.ntt.co.jp> wrote: > This is fixed version of dblink.c for row processor. > >> i'll re-send the properly fixed patch for dblink.c later. > > - malloc error in initStoreInfo throws ERRCODE_OUT_OF_MEMORY. (new error) > > - storeHandler() now returns FALSE on malloc failure. Garbage > cleanup is done in dblink_fetch() or dblink_record_internal(). > The behavior that this dblink displays this error as 'unkown > error/could not execute query' on the user session is as it did > before.
Another thing: if realloc() fails, the old pointer stays valid. So it needs to be assigned to temp variable first, before overwriting old pointer. And seems malloc() is preferable to palloc() to avoid exceptions inside row processor. Although latter one could be made to work, it might be unnecessary complexity. (store current pqresult into remoteConn?) -- marko -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers