pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Dinesh Pandey <dpandey@secf.com>
To: 'Richard Huxton' <dev@archonet.com>
Cc: pgsql-general@postgresql.org
Cc: 'PostgreSQL' <pgsql-sql@postgresql.org>
Subject: Re: index row size 2728 exceeds btree maximum, 2713
Date: Thu, 1 Jan 2004 15:39:06 +0530
Message-ID: <20050602101340.9FCC75280A@svr1.postgresql.org> (raw)
In-Reply-To: <429ED859.1070308@archonet.com>

I am inserting some log messages in the column "data". (Basically I am
inserting records from reading an xml file)

In the PRIMARY KEY, btree (scan_id, host_ip, port_num, plugin_id, severity,
data) data is of type TEXT and can contain long string values.

The question is how to remove this error "index row size 2728 exceeds btree
maximum, 2713" by increasing the btree size?

The big problem is "I can not add any additional column in this table."

Thanks
Dinesh Pandey

-----Original Message-----
From: pgsql-general-owner@postgresql.org
[mailto:pgsql-general-owner@postgresql.org] On Behalf Of Richard Huxton
Sent: Thursday, June 02, 2005 3:29 PM
To: dpandey@secf.com
Cc: pgsql-general@postgresql.org; 'PostgreSQL'
Subject: Re: [GENERAL] index row size 2728 exceeds btree maximum, 2713

Dinesh Pandey wrote:
> -----------+-----------------------+-----------
>   Column    |         Type       
> -----------+-----------------------+-----------
>  scan_id    | bigint                
>  host_ip    | character varying(15) 
>  port_num | integer               
>  plugin_id  | integer               
>  severity   | character varying(50) 
>  data       | text                  
> 
> Indexes:
>     "pk_scanned_port_info" PRIMARY KEY, btree (scan_id, host_ip, port_num,
> plugin_id, severity, data)
> 
> On inserting record I am getting this error "index row size 2728 exceeds
> btree maximum, 2713"

Well - the error message is clear enough. The question is, what to do.

Without knowing what the table "means", it's difficult to say what the 
primary-key should be, but it seems unlikely to include an 
unlimited-length text-field called "data".

If the data itself doesn't offer any suitable candidate keys (as can 
well be the case) then common practice is to generate a unique number 
and use that as an ID - in PostgreSQL's case by use of the SERIAL 
pseudo-type.

Does that help?
-- 
   Richard Huxton
   Archonet Ltd

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings





view thread (18+ messages)  latest in thread

Message-ID: <20050602101340.9FCC75280A@svr1.postgresql.org>
Permalink:  ../20050602101340.9FCC75280A@svr1.postgresql.org/
Also on:    postgresql.org/message-id/20050602101340.9FCC75280A@svr1.postgresql.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: dpandey@secf.com, dev@archonet.com, pgsql-general@postgresql.org
  Subject: Re: index row size 2728 exceeds btree maximum, 2713
  In-Reply-To: <20050602101340.9FCC75280A@svr1.postgresql.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox