Thread: Error: could not find a feasible split point for "obs_v_file_id_index"

Error: could not find a feasible split point for "obs_v_file_id_index"

From
Robert Creager
Date:
Hey All,

While doing some daily processing, I ran across the following error:

ERROR:  could not find a feasible split point for "obs_v_file_id_index"
STATEMENT: UPDATE obs_v SET mag = obs_v.imag + zp.zero_v + cg.color_v *
(obs_v.imag - i.imag), use = true FROM color_groups AS cg, zero_pair AS zp,
obs_i AS i, files AS f, groups AS g WHERE obs_v.star_id = i.star_id AND
obs_v.file_id = f.file_id AND cg.group_id = g.group_id AND g.night_id =
f.night_id AND g.group_id = 149 AND zp.pair_id = f.pair_id

version: 7.4.1.

table schema:

---------+---------+------------------------------------------------
 x       | real    | not null
 y       | real    | not null
 imag    | real    | not null
 smag    | real    | not null
 loc     | spoint  | not null
 obs_id  | integer | not null default nextval('"obs_id_seq"'::text)
 file_id | integer | not null
 use     | boolean | default false
 solve   | boolean | default false
 star_id | integer |
 mag     | real    |
Inexes:    "obs_v_file_id_index" btree (file_id)
    "obs_v_loc_index" gist (loc)
    "obs_v_obs_id_index" btree (obs_id)
    "obs_v_star_id_index" btree (star_id)
    "obs_v_use_index" btree (use)
Foreign-key constraints:
    "obs_v_files_constraint" FOREIGN KEY (file_id) REFERENCES files(file_id) ON
DELETE CASCADE
    "obs_v_star_id_constraint" FOREIGN KEY (star_id) REFERENCES
catalog(star_id) ON DELETE SET NULL
Triggers:
    obs_v_trig BEFORE INSERT OR DELETE OR UPDATE ON obs_v FOR EACH ROW EXECUTE
PROCEDURE observations_trigger

Help?

Cheers,
Rob

--
 06:52:56 up 15 days, 17:15,  3 users,  load average: 2.05, 2.12, 2.22
Linux 2.6.5-02 #8 SMP Mon Jul 12 21:34:44 MDT 2004
Robert Creager <Robert_Creager@LogicalChaos.org> writes:
> While doing some daily processing, I ran across the following error:

> ERROR:  could not find a feasible split point for "obs_v_file_id_index"

>  file_id | integer | not null
> Inexes:    "obs_v_file_id_index" btree (file_id)

On an index on an *integer* column??  That's a can't-happen error in the
first place, and it's particularly silly when the index entries are
small and fixed-width.  I surmise that you have a corrupted index, but
it would be interesting to examine the entrails.  Is it repeatable?
Is the database small enough that you could ship me a tarball copy
(or if not, would you be willing to let me into your system to look at
it)?

            regards, tom lane

Re: Error: could not find a feasible split point for

From
Robert Creager
Date:
When grilled further on (Mon, 30 Aug 2004 11:31:12 -0400),
Tom Lane <tgl@sss.pgh.pa.us> confessed:

> Robert Creager <Robert_Creager@LogicalChaos.org> writes:
> > While doing some daily processing, I ran across the following error:
>
> > ERROR:  could not find a feasible split point for "obs_v_file_id_index"
>
> >  file_id | integer | not null
> > Inexes:    "obs_v_file_id_index" btree (file_id)
>
> On an index on an *integer* column??  That's a can't-happen error in the
> first place, and it's particularly silly when the index entries are
> small and fixed-width.  I surmise that you have a corrupted index, but
> it would be interesting to examine the entrails.  Is it repeatable?
> Is the database small enough that you could ship me a tarball copy
> (or if not, would you be willing to let me into your system to look at
> it)?
>
>             regards, tom lane

The error is repeatable (with a script that runs in a few minutes).  A recent
dump 528Mb compressed (10Gb on disk).  As for access, presumably you want in as
postgres?

Any chance you have a gpg key somewhere for encryption?  I did a quick check and
didn't find any...

Cheers,
Rob

--
 20:00:25 up 16 days,  6:22,  3 users,  load average: 3.79, 3.97, 3.99
Linux 2.6.5-02 #8 SMP Mon Jul 12 21:34:44 MDT 2004