vlen in libpq using user defined data type - Mailing list pgsql-hackers

From David Hartwig
Subject vlen in libpq using user defined data type
Date
Msg-id 35F6EB3A.23178DCF@insightdist.com
Whole thread Raw
Responses Re: [HACKERS] vlen in libpq using user defined data type  (Bruce Momjian <maillist@candle.pha.pa.us>)
Re: [HACKERS] vlen in libpq using user defined data type  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
I have come across a situation with 6.4 which has rendered at least some
of my home made data types unusable.   Specifically, the data type,
accntnum, is a General Ledger account number type.   (i.e.  9999-99
format)    It is stored internally as an 4 byte integer; it is used
externally as a string and passed by reference internally.  An IP data
type may be handled in a similar way.     I had no problems at 6.3.2.

Anyway, as pqlib reads the string sent to it by the backend (a la psql),
it must first read the length of each string.  The problem is that the
length of the string for accntnum in some outrageously large number
which ultimately hangs psql.  BTW,  atttypemod = -1 and typlen = 4 in
the FE.

Did something changed in the way a string is constructed on the BE
before sending to the FE to cause this?

Have the basic semantics changed (intentionally or unintentionally) for
the establishment of data types?

Any assistance is appreciated.





pgsql-hackers by date:

Previous
From: Brook Milligan
Date:
Subject: Re: [HACKERS] Re: Open portability issues
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] vlen in libpq using user defined data type