On Mon, Aug 17, 2009 at 11:35 AM, Greg Stark <[email protected]> wrote:
> On Mon, Aug 17, 2009 at 4:23 PM, Bryan Murphy<[email protected]> > wrote: > > I've identified 82 bad records. When I try to query for the records, > > we get the following: > > ERROR: missing chunk number 0 for toast value 25692661 in > pg_toast_25497233 > > That's fine. I've run into that in a few other tables and have just been > > deleting the offending records. However, in this particular table, when > I > > try and delete the records, I get the following error message: > > ERROR: attempted to delete invisible tuple > > I'm at a loss what to do next. > > Can you select xmin,xmax,ctid from the bad tuples? > > And also the output of pg_resetxlog -n. I suspect you may have failed > to restore properly and have tuples from the "future" in your > database. Perhaps you're missing at the last WAL file in your > recovery? > > If that's the case you may be able to get out of it with pg_resetxlog > and then cleaning up but it would be good to see the data first before > changing things. Here's the xmin/xmax/ctid for three problematic records: prodpublic=# select xmin,xmax,ctid from items_extended where id in ('34537ed90d7546d78f2c172fc8eed687', '3e1d99b7124742b7aaf2f869f7637b0e', '499b464f141a48619c5ce0475cbe9150'); xmin | xmax | ctid -----------+-----------+------------ 262232659 | 308810030 | (689496,3) 262629744 | 308810034 | (692765,1) 262643188 | 308810035 | (692920,9) (3 rows) I have not yet run pg_resetxlog. Thanks, Bryan
