Thread: failed index creation: ERROR: index_formtuple
Hello - I've had a nonclustered index on a column of type "character varying(11)" for many years. I dropped it and went to recreate the exact same index, but it fails every time. create index edata_idx1 on edata (mbrnum); mbrnum is character varying(11) number of rows in table: 1326205 postgresql 7.3.4 on Linux 2.4.9-31 ERROR: index_formtuple: data takes 28640 bytes, max is 8191 Any ideas? Any work arounds? Sincerely, Nate Teller
"Nate Teller" <nate.teller@mindspring.com> writes: > I've had a nonclustered index on a column of type "character varying(11)" > for many years. > I dropped it and went to recreate the exact same index, but it fails every > time. > ERROR: index_formtuple: data takes 28640 bytes, max is 8191 Ugh :-(. It's certainly not possible for a valid varchar(11) value to need 28k bytes. You have evidently got some corrupted data in your table. I'd suggest scanning the table for clearly-bogus rows and getting rid of them. Another approach is to pg_dump the table and try to reload it. regards, tom lane