Re: PQgetlength vs. octet_length()

From: Michael Clark <codingninja(at)gmail(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: PQgetlength vs. octet_length()
Date: 2009-08-18 15:04:24
Message-ID: bf5d83510908180804y760c2f64o4e9417929da63c85@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Hello - am I in the wrong mailing list for this sort of problem? :-/
Thanks,
Michael.

On Mon, Aug 17, 2009 at 6:28 PM, Michael Clark <codingninja(at)gmail(dot)com>wrote:

> Hello everyone.
> Having a weird issue.
>
> I have a value inserted into a bytea column, which is about 137megs in
> size.
>
> If I use octet_length() to check the size of the column for this specific
> row I get this:
> TestDB=# SELECT octet_length(rawdata) FROM LargeData;
> octet_length
> --------------
> 143721188
>
> When fetching the row through the C API, and I use PQgetlength() on the
> column of the row in question I get:
> (gdb) p (int)PQgetlength(result, rowIndex, i)
> $3 = 544453159
>
>
> I am wondering if I am lacking knowledge that explains why these values are
> different, or if something fishy is going on.
>
> What led me to investigating this is that fetching this row in a C
> application is causing a failure. My programs memory usage balloons to 1.3
> gigs after executing this:
> const char *valC = PQgetvalue(result, rowIndex, i);
>
> Am I doing something wrong, or is there some ideas what I should
> investigate next?
> This seems quite puzzling to me.
>
> Thanks in advance for any help/insight offered,
> Michael.
>
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kevin Grittner 2009-08-18 15:23:20 Re: PQgetlength vs. octet_length()
Previous Message Tom Lane 2009-08-18 14:20:24 Re: Configuration Question

Browse pgsql-hackers by date

  From Date Subject
Next Message Kevin Grittner 2009-08-18 15:23:20 Re: PQgetlength vs. octet_length()
Previous Message Tom Lane 2009-08-18 14:18:02 Re: Lazy Snapshots