ECPG patchset
От | Boszormenyi Zoltan |
---|---|
Тема | ECPG patchset |
Дата | |
Msg-id | 4A9FC2AA.1080603@cybertec.at обсуждение исходный текст |
Ответы |
Re: ECPG patchset
(Boszormenyi Zoltan <zb@cybertec.at>)
|
Список | pgsql-hackers |
Hi, we have updated our patchset to current 8.5 CVS. The actual patches will be in emails coming as answers to this one. As two patches were already included, the remaining patches are as follows: 1. dynamic cursorname 2. sqlda support 3. describe support 4. proper out-of-scope declare/open/fetch for cursors in compat mode Changes (the numbers indicate the patch it was made in): 1. ECPG auto-generated grammar couldn't deal with grammar objects having both an "addon" and a "rule" extension, emittingan extra '{' between the "addon" and the original rule code blocks. Fix was needed for parse.pl and now the grammarlooks nicer, my previous question was solved by it. 2. No more ecpg_compare_sqlda_with_PGresult() function, it triggered most of the time anyway, it's cheaper to unconditionallyfree() and malloc(). No more realloc(), it ruined the internal pointers inside the sqlda structure. A small leak fix for FETCH when a decimal or numeric was used: > diff -durpN pgsql.dyncursor/src/interfaces/ecpg/ecpglib/data.c > pgsql.sqlda/src/interfaces/ecpg/ecpglib/data.c > --- pgsql.dyncursor/src/interfaces/ecpg/ecpglib/data.c 2009-08-08 > 17:19:45.000000000 +0200 > +++ pgsql.sqlda/src/interfaces/ecpg/ecpglib/data.c 2009-09-03 > 12:56:36.000000000 +0200 > @@ -554,7 +554,7 @@ ecpg_get_data(const PGresult *results, i > else > > PGTYPESnumeric_to_decimal(nres, (decimal *) (var + offset * act_tuple)); > > - free(nres); > + PGTYPESnumeric_free(nres); > break; > > case ECPGt_interval: Now sqlda usage is valgrind-clean. We added the possibility to extend SQLDA for multi-row FETCH, using the ->desc_nextpointer, but not implemented. Multi-row FETCH is not available in Informix. 3. Only updated to current CVS. 4. Fixed uninitialized pointers that were discovered by valgrind and were causing problems on HP-UX. (Small malloc()s seemto be zeroed out by Fedora 9's glibc, but not on HP-UX.) Best regards, Zoltán Böszörményi -- Bible has answers for everything. Proof: "But let your communication be, Yea, yea; Nay, nay: for whatsoever is more than these cometh of evil." (Matthew 5:37) - basics of digital technology. "May your kingdom come" - superficial description of plate tectonics ---------------------------------- Zoltán Böszörményi Cybertec Schönig & Schönig GmbH http://www.postgresql.at/
В списке pgsql-hackers по дате отправления: