tera icon indicating copy to clipboard operation
tera copied to clipboard

区分current丢失和current本就没有生成

Open taocp opened this issue 8 years ago • 1 comments

tablet第一次load时NewDB()会先生成manifest,再生成current。

情况1. 生成manifest以后立刻就crash了,没来得及生成current. 此时重新load一次。

情况2. 正常生成manifest和current,然而current立刻就丢了,此时发生了一次迁移,重新load一次。

这2种情况貌似不太容易区分?

我的想法: NewDB()先生成manifest,再生成current这个过程,在一个临时目录里进行,完成以后move成lg0/lg1这类目录。因为current后续都是move生成的,预期应该是都在的,不在就是丢失。

taocp avatar Mar 21 '17 06:03 taocp

如果是move之后lg0目录丢失呢

00k avatar Mar 27 '17 04:03 00k