Hi,

So I'm still investigating data corruption issues.  They have some
serious TOAST index corruption too; for example,

For example, notice how an indexscan returns invalid chunk_ids here:

select xmin,xmax,ctid,cmin, chunk_id, chunk_seq,length(chunk_data)
from pg_toast.pg_toast_18141
 where chunk_id between 194679500 and 194679700
order by chunk_id;
  xmin   |  xmax   |    ctid     | cmin | chunk_id  | chunk_seq | length
---------+---------+-------------+------+-----------+-----------+--------
 9767631 |       0 | (2855683,1) |   27 |  94929948 |         1 |     26
 9767659 |       0 | (2855683,5) |   28 |  94929949 |         1 |     26
 9767659 |       0 | (2855683,6) |   32 |  94929950 |         1 |     26
 9767659 |       0 | (2855683,7) |   34 |  94929951 |         1 |     26
 9767797 | 9773223 | (2855684,4) |   36 |  94929958 |         1 |     27
 9767797 | 9773223 | (2855684,5) |   38 |  94929959 |         1 |     27
 9767797 |       0 | (2855684,6) |   41 |  94929960 |         1 |     27



One thing that surprised me is that they are seeing such short values
being pushed out to TOAST.  The rows are typically 156 bytes wide, and
the values being pushed out are 30 bytes, so I fail to see why it would
get done.  Any theories?  Is this normal?

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to