Hello,

8.4.0 installation on i686 modern Linux, a simple production app with ~4
users entering data; normalised, no weird stuff happening there.  Recently:

  ERROR:  missing chunk number 0 for toast value 120741 in pg_toast_29644

This table has table_log and a "before update" trigger setting
"NEW.last_modified = now()".  The broken toast is a HTML blob, stored in
a "text" column.

This particular row currently has last_modified="2009-08-11", but table_log
says it has been updated on "2009-08-12" -- so, data loss.

Please see the attachment for the xmin,xmax,cmin,cmax,ctid values of
these rows.  Andrew Gireth has asked for the hexdump of page 539 of the
"promocje" table: http://radek.cc/promocje.hexdump


About a week after I've upgraded to 8.4, the users of this application
have started to complain, that some rows are disappearing.

-- 
Radosław Zieliński <ra...@pld-linux.org>
bug=# select id, last_modified, xmin,xmax,cmin,cmax,ctid from public.promocje 
where id = 4300;
  id  |       last_modified        | xmin | xmax | cmin | cmax |  ctid   
------+----------------------------+------+------+------+------+---------
 4300 | 2009-08-11 09:54:11.007351 | 3819 | 6179 |    0 |    0 | (539,7)
(1 row)

bug=# select id, trigger_mode, trigger_tuple, trigger_changed, trigger_id, 
last_modified, xmin,xmax,cmin,cmax,ctid from log.promocje where id = 4300 order 
by trigger_id;
  id  | trigger_mode | trigger_tuple |        trigger_changed        | 
trigger_id |       last_modified        | xmin | xmax | cmin | cmax |   ctid    
------+--------------+---------------+-------------------------------+------------+----------------------------+------+------+------+------+-----------
 4300 | INSERT       | new           | 2009-07-31 09:40:19.748167+02 |       
8247 | 2009-07-31 09:40:19.748167 | 2190 |    0 |    0 |    0 | (1139,8)
 4300 | UPDATE       | old           | 2009-08-11 09:54:11.007351+02 |       
8818 | 2009-07-31 09:40:19.748167 | 3819 |    0 |    2 |    2 | (1213,3)
 4300 | UPDATE       | new           | 2009-08-11 09:54:11.007351+02 |       
8819 | 2009-08-11 09:54:11.007351 | 3819 |    0 |    3 |    3 | (1213,4)
 4300 | UPDATE       | old           | 2009-08-12 16:25:14.16324+02  |       
9241 | 2009-08-11 09:54:11.007351 | 4971 |    0 |    2 |    2 | (1257,9)
 4300 | UPDATE       | new           | 2009-08-12 16:25:14.16324+02  |       
9242 | 2009-08-12 16:25:14.16324  | 4971 |    0 |    3 |    3 | (1257,10)
(5 rows)



------------------------------------------------
--     The same as the two above, with \x
------------------------------------------------

msawi11_bug=# select id, last_modified, xmin,xmax,cmin,cmax,ctid from 
public.promocje where id = 4300;
-[ RECORD 1 ]-+---------------------------
id            | 4300
last_modified | 2009-08-11 09:54:11.007351
xmin          | 3819
xmax          | 6179
cmin          | 0
cmax          | 0
ctid          | (539,7)


bug=# select id, trigger_mode, trigger_tuple, trigger_changed, trigger_id, 
last_modified, xmin,xmax,cmin,cmax,ctid from log.promocje where id = 4300 order 
by trigger_id;
-[ RECORD 1 ]---+------------------------------
id              | 4300
trigger_mode    | INSERT
trigger_tuple   | new
trigger_changed | 2009-07-31 09:40:19.748167+02
trigger_id      | 8247
last_modified   | 2009-07-31 09:40:19.748167
xmin            | 2190
xmax            | 0
cmin            | 0
cmax            | 0
ctid            | (1139,8)
-[ RECORD 2 ]---+------------------------------
id              | 4300
trigger_mode    | UPDATE
trigger_tuple   | old
trigger_changed | 2009-08-11 09:54:11.007351+02
trigger_id      | 8818
last_modified   | 2009-07-31 09:40:19.748167
xmin            | 3819
xmax            | 0
cmin            | 2
cmax            | 2
ctid            | (1213,3)
-[ RECORD 3 ]---+------------------------------
id              | 4300
trigger_mode    | UPDATE
trigger_tuple   | new
trigger_changed | 2009-08-11 09:54:11.007351+02
trigger_id      | 8819
last_modified   | 2009-08-11 09:54:11.007351
xmin            | 3819
xmax            | 0
cmin            | 3
cmax            | 3
ctid            | (1213,4)
-[ RECORD 4 ]---+------------------------------
id              | 4300
trigger_mode    | UPDATE
trigger_tuple   | old
trigger_changed | 2009-08-12 16:25:14.16324+02
trigger_id      | 9241
last_modified   | 2009-08-11 09:54:11.007351
xmin            | 4971
xmax            | 0
cmin            | 2
cmax            | 2
ctid            | (1257,9)
-[ RECORD 5 ]---+------------------------------
id              | 4300
trigger_mode    | UPDATE
trigger_tuple   | new
trigger_changed | 2009-08-12 16:25:14.16324+02
trigger_id      | 9242
last_modified   | 2009-08-12 16:25:14.16324
xmin            | 4971
xmax            | 0
cmin            | 3
cmax            | 3
ctid            | (1257,10)


Attachment: pgpB0w5Hfi4eB.pgp
Description: PGP signature

Reply via email to