[sheepdog] [PATCH 1/3] journal: ignore invalid journal files

Hitoshi Mitake mitake.hitoshi at gmail.com
Wed Apr 10 10:21:15 CEST 2013


At Wed, 10 Apr 2013 14:10:52 +0800,
Liu Yuan wrote:
> 
> On 04/10/2013 12:32 AM, Hitoshi Mitake wrote:
> >  	if (do_recover(old) < 0)
> > -		return -1;
> > +		sd_iprintf("recoverying from journal file (old) failed");
> >  	if (do_recover(new) < 0)
> > -		return -1;
> > -
> > -	return 0;
> > +		sd_iprintf("recoverying from journal file (new) failed");
> >  }
> 
> Suppose following case:
> 
> Sheep crash and has some logs in the journal. When sheep init, journal
> is replayed and some disk is read-only, so replay fails. I think we
> should exit at this case, because users can works on this broken disk
> and get it write capable again or replace it with a new disk and put the
> old data on it. In either way, users can re-start the sheep and the
> reply will go well.
> 
> So I think we should exit on do_recover().

I couldn't suppose the above case. I'll add panic() when do_recover()
fails in v2.

Thanks,
Hitoshi



More information about the sheepdog mailing list