On Fri, 4 Jun 2010, Andre Noll wrote:
> On Wed, Jun 02, 11:19, Sage Weil Wrote
> > Okay, it looks like there is a corrupt PG log. Can you tar up the
> > $osd_data/current/meta directory, and then 'f 8' and 'p /x info.pgid' from
> > gdb (to figure out which pg it's loading)?
>
> It's in decode_nohead():
>
> ...
> Program received signal SIGABRT, Aborted.
> [Switching to Thread 0x7ff115b566f0 (LWP 5045)]
> 0x00007ff1146e9095 in raise () from /lib/libc.so.6
> (gdb) f 8
> #8 0x0000000000540920 in PG::read_log (this=0x7ff1104b6460,
> store=<value optimized out>) at ./include/cstring.h:120
> 120 _data = new char[_len + 1];
> (gdb) p /x info.pgid
> $1 = {v = {preferred = {v = 0xffff}, ps = {v = 0x1bf}, pool = {v =
> 0x0}}}
The pgid's format like $pool.$ps[p$preferred] (where the preferred bit
only shows up if >= 0). In hex. So the pgid above is 0.1bf, and the
corrupted log should be current/meta/pglog_0.1bf_0. If you send me that
file (off list) I can see what the corruption looks like.
If you want to try to bring the osd up without that pg, you can move that
pglog file and current/0.1bf to some other temp directory and restart
cosd.
Thanks!
sage
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html