> I've seen this myself on Solaris.  If your default value as specified
> in the CREATE TABLE statement is not exactly as long as the declared
> width of the field, the backend dies with an assertion as soon as you
> INSERT a record that needs to use the default.

Hmm. I see this on Linux also. It is only a problem for the char() type;
both varchar() and text behave properly.

You might want to post something to the bugs list...

                       - Tom

Tue, 24 Mar 1998 06:12:22 +0000
"Thomas G. Lockhart" <lockhart@alumni.caltech.edu>
Re: [QUESTIONS] backend dying on insert on 6.3, not dying on 6.2.1 p7
> I've seen this myself on Solaris.  If your default value as specified
> in the CREATE TABLE statement is not exactly as long as the declared
> width of the field, the backend dies with an assertion as soon as you
> INSERT a record that needs to use the default.
> 
> CREATE TABLE foo
> (
>   i  INT,
>   a  CHAR(4) DEFAULT 'x'
> );
> 
> INSERT INTO a (i) VALUES (23);
> 
> Will blow up the backend.
> 
> CREATE TABLE foo
> (
>   i INT,
>   a CHAR(4) DEFAULT 'x   '
> );
> 

This does not surprise me entirely, especially when char() fails but
varchar() and text work.  It has to do with the way we handle char(). 
Can someone familiar with default handling checking into this.

-- 
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)

Tue, 24 Mar 1998 20:28:49 -0500 (EST)
Bruce Momjian <maillist@candle.pha.pa.us>
Re: [QUESTIONS] backend dying on insert on 6.3, not dying on 6.2.1 p7