Re: Error in PQsetvalue
Pavel Golub <pavel@microolap.com>
From: Pavel Golub <pavel@microolap.com>
To: Merlin Moncure <mmoncure@gmail.com>
Cc: Andrew Chernow <ac@esilo.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Pavel Golub <pavel@microolap.com>
Date: 2011-06-06T12:09:15Z
Lists: pgsql-hackers
Hello, guys. You wrote: MM> On Fri, Jun 3, 2011 at 10:36 PM, Andrew Chernow <ac@esilo.com> wrote: >> On 6/3/2011 10:26 PM, Andrew Chernow wrote: >>> >>>>> I disagree -- I think the fix is a one-liner. line 446: >>>>> if (tup_num == res->ntups&& !res->tuples[tup_num]) >>>>> >>>>> should just become >>>>> if (tup_num == res->ntups) >>>>> >>>>> also the memset of the tuple slots when the slot array is expanded can >>>>> be removed. (in addition, the array tuple array expansion should >>>>> really be abstracted, but that isn't strictly necessary here). >>>>> >>>> >>>> All true. This is a cleaner fix to something that was in fact broken ;) >>>> You want >>> >>> Attached a patch that fixes the OP's issue. PQsetvalue now uses pqAddTuple >>> to >>> grow the tuple table and has removed the remnants of an older idea that >>> caused >>> the bug. >>> >> >> Sorry, I attached the wrong patch. Here is the correct one. MM> This looks good. Pavel, want to test it? Sorry for delay in answer. Yeah, I'm glad to. Should I apply this patch by myself? MM> merlin -- With best wishes, Pavel mailto:pavel@gf.microolap.com