Skip site navigation (1) Skip section navigation (2)

Re: libECPG: Warning: get descriptor: 7.1 and 7.2 arenot

From: Christof Petig <christof(at)petig-baender(dot)de>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-interfaces(at)postgresql(dot)org, Michael Meskes <meskes(at)postgresql(dot)org>
Subject: Re: libECPG: Warning: get descriptor: 7.1 and 7.2 arenot
Date: 2001-10-08 06:39:47
Message-ID: 3BC14A33.B251D9AE@petig-baender.de (view raw or flat)
Thread:
Lists: pgsql-interfaces
Peter Eisentraut wrote:

> Christof Petig writes:
>
> > I just noticed that libecpg.so.3.2.0 and libecpg.so.3.3.0 are not binary
> > compatible.
> > A program using get descriptor stopped working (still under
> > investigation) once I installed the new libecpg.
>
> I seem to remember that some enums were rearranged or renumbered.  Look
> there.

You guessed right. I think I found the problem ...

@@ -67,10 +68,11 @@
                ECPGd_ret_octet,
                ECPGd_scale,
                ECPGd_type,
+               ECPGd_cardinality,
                ECPGd_EODT                              /* End of descriptor
typ
es. */
        };


IIRC the list of descriptor types is terminated by ECPGd_EODT. So the new
library can't figure out where the old code's argument stop.

Fix: put ECPGd_cardinality behind ECPGd_EODT.
I reordered them because of logical considerations, maybe we should weight
binary compatibility more than beautiful-sortedness of enum values.

Michael: Would you swap the lines?

Thanks
    Christof



In response to

Responses

pgsql-interfaces by date

Next:From: Michael MeskesDate: 2001-10-08 08:11:32
Subject: Re: libECPG: Warning: get descriptor: 7.1 and 7.2 arenot binary compatible (yet)
Previous:From: pooja agarwalDate: 2001-10-07 06:05:59
Subject: normalization problem

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group