From: | Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp> |
---|---|
To: | rareddy(at)redhat(dot)com |
Cc: | Raiford(at)labware(dot)com, pgsql-odbc(at)postgresql(dot)org |
Subject: | Re: BYTEA Fields and Memory Consumption |
Date: | 2011-04-15 03:34:51 |
Message-ID: | 4DA7BCDB.3090606@tpf.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Hi Ramesh,
(2011/04/15 8:48), Ramesh Reddy wrote:
> In my experience even when using 'lo' the driver only got the first
> chunk of data which is equal to the length of the buffer that client
> provided and never went back to ask for next chunk.
Clients have to call some special API/methods provided by the
interface they are using, e.g. ODBC native apps calls SQLPutData(),
ADO apps calls AppendChunk().
regards,
Hiroshi Inoue
> Also, I am not sure how one can read multiple blocks from client code?
>
> Ramesh..
>
> On Fri, 2011-04-15 at 08:42 +0900, Hiroshi Inoue wrote:
>> (2011/04/14 21:17), Raiford(at)labware(dot)com wrote:
>>> Hi Hiroshi-san,
>>>
>>> Thank you for your response. Could you clarify one thing for me? Are you
>>> suggesting that when using an lo datatype with the lo module installed,
>>
>> You don't have to install the lo module. Please type
>>
>> create domain lo as oid;
>>
>> and use the lo type.
>>
>>> the ODBC driver automatically sends the data in pieces?
>>
>> Yes.
>>
>> regards,
>> Hiroshi Inoue
>>
>> > Or does it only
>>> open the possibility for me to use the lo_import() function? If
>>> everything is handled internally in the ODBC driver, it would certainly
>>> help a lot :)
>>>
>>> Jon
>>>
>>> From: Hiroshi Inoue<inoue(at)tpf(dot)co(dot)jp>
>>> To: Raiford(at)labware(dot)com
>>> Cc: pgsql-odbc(at)postgresql(dot)org
>>> Date: 04/13/2011 11:42 PM
>>> Subject: Re: [ODBC] BYTEA Fields and Memory Consumption
>>> Sent by: pgsql-odbc-owner(at)postgresql(dot)org
>>> ------------------------------------------------------------------------
>>>
>>> Hi,
>>>
>>> (2011/04/13 21:09), Raiford(at)labware(dot)com wrote:
>>> > I have an issue where even though I break a large BYTEA object up into
>>> > multiple pieces, the ODBC driver just rejoins the pieces in memory and
>>> > tries to send it all out at once. I took a look at the code and sure
>>> > enough the driver just keeps reallocating memory for each chunk of data
>>> > that I add.
>>>
>>> Yes you are right.
>>>
>>> > Can I assume Postgres has no mechanism to send this data
>>> > across the wire in pieces? Are there any common practices for dealing
>>> > with this?
>>>
>>> Please try lo type instead of bytea type.
>>>
>>> regards,
>>> Hiroshi Inoue
From | Date | Subject | |
---|---|---|---|
Next Message | Carlo Curatolo | 2011-05-05 12:04:55 | PostgreSQL OLE DB Provider not visible in Excel 2010 |
Previous Message | Ramesh Reddy | 2011-04-14 23:48:21 | Re: BYTEA Fields and Memory Consumption |