Received: from localhost (postgresql.org [64.49.215.8]) by postgresql.org (Postfix) with ESMTP id 142BE475BD7 for ; Sun, 3 Nov 2002 19:38:44 -0500 (EST) Received: from megazone.bigpanda.com (megazone.bigpanda.com [63.150.15.178]) by postgresql.org (Postfix) with ESMTP id 2B1EC475AF8 for ; Sun, 3 Nov 2002 19:38:43 -0500 (EST) Received: by megazone.bigpanda.com (Postfix, from userid 1001) id CC7F6D61C; Sun, 3 Nov 2002 16:38:45 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by megazone.bigpanda.com (Postfix) with ESMTP id C239D5C02; Sun, 3 Nov 2002 16:38:45 -0800 (PST) Date: Sun, 3 Nov 2002 16:38:45 -0800 (PST) From: Stephan Szabo To: Cc: Doug McNaught , Subject: Re: 7.2.3: tuple is too big (max 8136) In-Reply-To: <20021104011105.A11131@goldfisch.at> Message-ID: <20021103162643.V91168-100000@megazone23.bigpanda.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Scanned: by AMaViS new-20020517 X-Archive-Number: 200211/96 X-Sequence-Number: 32518 On Mon, 4 Nov 2002 pilsl@goldfisch.at wrote: > On Fri, Nov 01, 2002 at 08:50:54AM -0500, Doug McNaught wrote: > > > > It's possible you are hitting the maximum column limit rather than the > > tuple size limit. The FAQ list the max columns in a table as: > > > > "250-1600 depending on column types" > > > > I already created the table with 1600 cols of varchar(30) so this > should not be the limit. And the errormessage is clearly talking about > the tuples size. (which should not have such a limit in 7.2.3). Technically there is still a tuple size limit. It's just that many types can be pulled out of the main storage of the table and you get a reference to its value in the main storage rather than the value itself. That's how the 8k limit was circumvented. The tuple size limit is part of why there's a maximum column count, AFAIK the main tuple still needs to fit in one page. The create table may succeed even if it's not possible to actually insert non-null values in every column (for example, make a table with 1400 int8 columns, if you try to insert values into each column, it will fail. If you try to insert say only a few values and alot of nulls, it works).