"Dann Corbit" <[EMAIL PROTECTED]> writes:
> The issue is this:
> Postgres describes the column with a typmod of -1 (unknown) and a length
> of 65534.

Oh, you're looking at typlen not typmod.  Please observe the comments in
pg_type.h:

        /*
         * For a fixed-size type, typlen is the number of bytes we use to
         * represent a value of this type, e.g. 4 for an int4.  But for a
         * variable-length type, typlen is negative.  We use -1 to indicate a
         * "varlena" type (one that has a length word), -2 to indicate a
         * null-terminated C string.
         */
        int2            typlen;

You should be treating typlen as signed not unsigned, and not assuming a
fixed width for any negative value.

Since the width refers to the server internal representation, and not to
what comes down the wire, I find it pretty strange for an application to
be using typlen for anything at all actually.

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to