Re: [HACKERS] Re: varchar() troubles (fwd)

From: Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>
To: lockhart(at)alumni(dot)caltech(dot)edu (Thomas G(dot) Lockhart)
Cc: vadim(at)sable(dot)krasnoyarsk(dot)su, hackers(at)postgresql(dot)org
Subject: Re: [HACKERS] Re: varchar() troubles (fwd)
Date: 1998-01-16 05:49:02
Message-ID: 199801160549.AAA06799@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>
> > OK, here is a temporary fix to the problem. It does the heap_open(),
> > then replaces the attrs for VARCHAR with attlen of -1. You can't just
> > change the field, because the data is in a cache and you are just
> > returned a pointer.
> >
> > Can I add an 'attdeflen' for "attributed defined length" field to
> > pg_attribute, and change the attlen references needed to the new field?
> > This is the only proper way to fix it.
>
> Bruce, does your "temporary fix" seem to repair all known problems with varchar()? If so, would you be interested in
> holding off on a "proper fix" and coming back to it after v6.3 is released? At that time, we can try solving the general
> problem of retaining column-specific attributes, such as your max len for varchar, declared dimensions for arrays, and
> numeric() and decimal() types. Or, if you have time to try a solution now _and_ come back to it later...
>
> - Tom
>
>

In fact, I am inclined to leave attlen unchanged, and add atttyplen that
is a copy of the length of the type. That way, the attlen for varchar()
really contains the defined length, and atttyplen is used for disk
references, and it is very clear what it means.

--
Bruce Momjian
maillist(at)candle(dot)pha(dot)pa(dot)us

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Oliver Elphick 1998-01-16 06:42:44 Re: [HACKERS] Patch for glibc2 date problems
Previous Message Bruce Momjian 1998-01-16 05:44:11 Re: [HACKERS] Re: varchar() troubles (fwd)