Re: Problem with heap_form_tuple error

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Stephen Woodbridge <woodbri(at)swoodbridge(dot)com>
Cc: PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Problem with heap_form_tuple error
Date: 2012-11-05 15:34:21
Message-ID: 27404.1352129661@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Stephen Woodbridge <woodbri(at)swoodbridge(dot)com> writes:
> I'm have a problem with heap_form_tuple error
> ERROR: invalid memory alloc request size 1149502660
> I've read through a ton of examples and read through the code and the
> docs and I'm sure I'm doing something stupid but I'm not seeing it.

Hm ... you're setting up arguments to heap_form_tuple like this:

> values[1] = CStringGetDatum(pstrdup(stdaddr->building));

This is only correct if the corresponding column of the tupledesc is
declared as being type "cstring", which I'm willing to bet it isn't.
heap_form_tuple does not do any type conversion --- the datums provided
have to be of the right types already.

You could feed the string through the input function for the column's
type, but perhaps what you really ought to do is use
BuildTupleFromCStrings rather than using heap_form_tuple directly.

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Achilleas Mantzios 2012-11-05 16:26:22 Re: Memory issue on FreeBSD
Previous Message Daniel Serodio (lists) 2012-11-05 15:21:11 Error registering at postgresql.org