Re: Silent MALLOC/REALLOC error - Mailing list pgsql-odbc

From Inoue, Hiroshi
Subject Re: Silent MALLOC/REALLOC error
Date
Msg-id 7153825a-4b01-cb09-1b21-147470a1b04a@dream.email.ne.jp
Whole thread Raw
In response to Silent MALLOC/REALLOC error  (TAKATSUKA Haruka <harukat@sraoss.co.jp>)
Responses Re: Silent MALLOC/REALLOC error  (TAKATSUKA Haruka <harukat@sraoss.co.jp>)
List pgsql-odbc
Hi TAKATSUKA-san,

sorry for the late reply.

On 2018/02/27 18:33, TAKATSUKA Haruka wrote:
> Hello, psqlODBC team.
>
> When we fetch large data via psqlodbc, we sometimes fail to
> get all rows completely without any API's error responses;
> SQLExecDirect returns SQL_SUCCESS and SQLFetch returns just SQL_NODATA.
> But there are QR_REALLOC_error reported in mylog at that time.
>
> I reproduced it by tweaking QR_REALLOC_return_with_error macro
> to intentionally fail to allocate memory frequently.
>
> I propose the patch attached.
> It makes the code in CC_send_query_append() go out the while-loop immediately
> after CC_from_PGresult() at the case PORES_BAD_RESPONSE, PORES_FATAL_ERROR or PORES_NO_MEMORY_ERROR.

Thanks for the bug report.
By applying your patch, subsequent queries after ALLOC errors are 
rejected unfortunately
with the error message 'another command is already in progress'.

I propose the patch attached. Does the patch work well in your test cases?

regards,
Hiroshi Inoue


>
>
> Thanks,
> Haruka Takatsuka

Attachment

pgsql-odbc by date:

Previous
From: Steve Haley
Date:
Subject: Lost Data Connection
Next
From: "Ayappan P2"
Date:
Subject: Compilation fails with XLC in AIX