[ psqlodbc-Bugs-1011196 ] Cannot insert very large blobs - Mailing list pgsql-odbc

From
Subject [ psqlodbc-Bugs-1011196 ] Cannot insert very large blobs
Date
Msg-id 20120521221319.82121137FC02@pgfoundry.org
Whole thread Raw
List pgsql-odbc
Bugs item #1011196, was opened at 2012-05-21 21:57
You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1011196&group_id=1000125

Category: None
Group: None
Status: Open
Resolution: None
Priority: 3
Submitted By: Michael Vitale (pgdude)
Assigned to: Nobody (None)
Summary: Cannot insert very large blobs

Initial Comment:
I can use the PostgreSQL ODBC driver to insert a blob (bytea) of 128 megabytes, but when I try to insert one that is
399megabytes it fails with: 

Query buffer overflow in copy_statement_with_parameters

The actuall call that fails is SQLExecute.


Here is the snippet of code I see in convert.c:

enlarge_query_statement(QueryBuild *qb, size_t newsize)
{
    size_t    newalsize = INIT_MIN_ALLOC;
    CSTR func = "enlarge_statement";

    if (qb->str_size_limit > 0 && qb->str_size_limit < (int) newsize)
    {
         < here is the branch that is executed>

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

>Comment By: Michael Vitale (pgdude)
Date: 2012-05-21 22:13

Message:
[4272-42.487]SQL_VARBINARY: about to call
convert_to_pgbinary, used = 399966009
[4272-42.488]STATEMENT ERROR: func=enlarge_statement,
desc='', errnum=1, errmsg='Query buffer allocate error in
copy_statement_with_parameters'
[4272-42.496]CONN ERROR: func=enlarge_statement, desc='',
errnum=0, errmsg='(NULL)'
[4272-42.499]retval=-1
[4272-42.500][[SQLGetDiagFieldW]] Handle=(3,08F47DD0) Rec=1
Id=4 info=(09BF6788,12)
[4272-42.500]PGAPI_GetDiagField entering
rec=1[4272-42.500]ER_ReturnError: status = 1, msg = #Query
buffer allocate error in copy_statement_with_parameters#
[4272-42.501]         szSqlState = 'HY000',len=61,
szError='(null)'
[4272-42.501]PGAPI_GetDiagField exiting 0
[4272-42.502][[SQLGetDiagFieldW]] Handle=(3,08F47DD0) Rec=2
Id=4 info=(09BF6788,12)
[4272-42.502]PGAPI_GetDiagField entering
rec=2[4272-42.502]ER_ReturnError: status =


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

You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1011196&group_id=1000125

pgsql-odbc by date:

Previous
From:
Date:
Subject: [ psqlodbc-Bugs-1011196 ] Cannot insert very large blobs
Next
From: Michael Vitale
Date:
Subject: cannot copy very large bytea data