> -----Original Message-----
> From: owner-pgsql-hackers@postgreSQL.org
> [mailto:owner-pgsql-hackers@postgreSQL.org]On Behalf Of The Hermit
> Hacker
>
> Okay, I don't know if this has been fixed in 7.0, but:
>
> webcounter=> drop index webhit_referer_raw_url;
> DROP
> webcounter=> create index webhit_referer_raw_url on
> webhit_referer_raw using btree ( referrer_url );
> CREATE
> webcounter=> vacuum verbose webhit_referer_raw;
> NOTICE: --Relation webhit_referer_raw--
> NOTICE: Pages 7910: Changed 3, Reapped 2192, Empty 0, New 0; Tup
> 547520: Vac 43402, Keep/VTL 0/0, Crash 0, UnUsed 4871, MinLen 60,
> MaxLen 312; Re-using: Free/Avail. Space 4388524/4361716;
> EndEmpty/Avail. Pages 0/915. Elapsed 0/0 sec.
> NOTICE: Index webhit_referer_raw_url: Pages 5048; Tuples 547400:
> Deleted 0. Elapsed 0/2 sec.
> NOTICE: Index webhit_referer_raw_url: NUMBER OF INDEX' TUPLES
> (547400) IS NOT THE SAME AS HEAP' (547520)
Hmmm,isn't there old transaction running somewhere ?
If so,this may be due to the use of SnapshotNow in CREATE INDEX
command which Tom already specified a few months ago.
We have already SnapshotAny(Jan added ?) now.
Probably this would be solved by changing SnapshotNow -> SnapshotAny.
> ERROR: Invalid XID in t_cmin
>
Seems this is also related to the potential vacuum bug Tom pointed out
about handling of HEAP_MOVED_IN(OFF) flag. I'm suspicious about
the following stuff. I think HEAP_MIN_INVALID tuples should always
be removed.
/* * If tuple is recently deleted then we must
notremove it * from relation. */
if (tupgone && tuple.t_data->t_xmax >=
XmaxRecen
t) { tupgone = false;
Regards.
Hiroshi Inoue
Inoue@tpf.co.jp