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, emitting an extra '{' between the "addon"
   and the original rule code blocks. Fix was needed for parse.pl
   and now the grammar looks 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 unconditionally free() 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_next pointer, 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 seem to 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/


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to