<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Microsoft YaHei";
        panose-1:2 11 5 3 2 2 4 2 2 4;}
@font-face
        {font-family:"Microsoft YaHei";
        panose-1:2 11 5 3 2 2 4 2 2 4;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Arial Narrow";
        panose-1:2 11 6 6 2 2 2 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=ZH-CN link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span lang=EN-US style='font-size:14.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Bingpeng is right.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:14.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:14.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>I am sure that the default_int() call the unlink to delete old.tmp , but its input args is filename not including full path<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:14.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Its should be a bug.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><b><span style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'>发件人<span lang=EN-US>:</span></span></b><span lang=EN-US style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'> sheepdog [mailto:sheepdog-bounces@lists.wpkg.org] </span><b><span style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'>代表 </span></b><span lang=EN-US style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'>Bingpeng Zhu<br></span><b><span style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'>发送时间<span lang=EN-US>:</span></span></b><span lang=EN-US style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'> 2014</span><span style='font-size:11.0pt;font-family:"微软雅黑","sans-serif"'>年<span lang=EN-US>9</span>月<span lang=EN-US>18</span>日<span lang=EN-US> 16:31<br></span><b>收件人<span lang=EN-US>:</span></b><span lang=EN-US> Hitoshi Mitake; Ruoyu<br></span><b>抄送<span lang=EN-US>:</span></b><span lang=EN-US> sheepdog<br></span><b>主题<span lang=EN-US>:</span></b><span lang=EN-US> Re: [sheepdog] question about replica recovery failure caused by oid.tmp file<o:p></o:p></span></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><div><div><p class=MsoNormal style='line-height:15.75pt'><span lang=EN-US>Thank you for the advice.<o:p></o:p></span></p></div><div><p class=MsoNormal style='line-height:15.75pt'><span lang=EN-US>default_init() of sheep/store.c  has already had the logic of unlinking oid.tmp files. I'm not sure the reason why oid.tmp file still exists in the system.<o:p></o:p></span></p></div></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><div><p class=MsoNormal><span lang=EN-US style='font-size:9.0pt;font-family:"Arial Narrow","sans-serif"'>------------------ Original ------------------<o:p></o:p></span></p></div><div><div><p class=MsoNormal style='background:#EFEFEF'><b><span lang=EN-US style='font-size:9.0pt'>From: </span></b><span lang=EN-US style='font-size:9.0pt'> "Hitoshi Mitake";<<a href="mailto:mitake.hitoshi@lab.ntt.co.jp">mitake.hitoshi@lab.ntt.co.jp</a>>;<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:#EFEFEF'><b><span lang=EN-US style='font-size:9.0pt'>Date: </span></b><span lang=EN-US style='font-size:9.0pt'> Sep 18, 2014<o:p></o:p></span></p></div><div><p class=MsoNormal style='background:#EFEFEF'><b><span lang=EN-US style='font-size:9.0pt'>To: </span></b><span lang=EN-US style='font-size:9.0pt'> "Ruoyu"<<a href="mailto:liangry@ucweb.com">liangry@ucweb.com</a>>; <o:p></o:p></span></p></div><div><p class=MsoNormal style='background:#EFEFEF'><b><span lang=EN-US style='font-size:9.0pt'>Cc: </span></b><span lang=EN-US style='font-size:9.0pt'> "Bingpeng Zhu"<<a href="mailto:nkuzbp@foxmail.com">nkuzbp@foxmail.com</a>>; "sheepdog"<<a href="mailto:sheepdog@lists.wpkg.org">sheepdog@lists.wpkg.org</a>>; <o:p></o:p></span></p></div><div><p class=MsoNormal style='background:#EFEFEF'><b><span lang=EN-US style='font-size:9.0pt'>Subject: </span></b><span lang=EN-US style='font-size:9.0pt'> Re: [sheepdog] question about replica recovery failure caused by oid.tmp file<o:p></o:p></span></p></div></div><div><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p></div><p class=MsoNormal><span lang=EN-US>At Tue, 16 Sep 2014 10:10:32 +0800,<br>Ruoyu wrote:<br>> <br>> [1  <multipart/alternative (7bit)>]<br>> [1.1  <text/plain; ISO-8859-1 (7bit)>]<br>> Thanks Bingpeng.<br>> I also encountered this problem.<br>> I suggest sheep should scan oid.tmp files and remove them when it is <br>> being started.<br><br>I agree with Ruoyu's opinion. .tmp files should be deleted at<br>initialization time. e.g. default_init() of sheep/store.c would be a<br>good place for it.<br><br>Thanks,<br>Hitoshi<br><br>> <br>> On 2014?09?15? 00:14, Bingpeng Zhu wrote:<br>> > Hi, all:<br>> >      I have a problem in using sheepdog. I create a erasure coded VDI <br>> > and write<br>> >   some data to it. Then, I unplug disk and stop/restart one sheep in a <br>> > short<br>> >   time. After recovery is completed in the latest epoch, I find some <br>> > replica is<br>> >   lost and only the corresponding oid.tmp file exists in the data <br>> > directory. I tried<br>> >   to rebuild the replica using "dog vdi check", but it didn't work. I <br>> > think it is<br>> >   caused by oid.tmp file. I have to delete the oid.tmp file manually <br>> > and then<br>> >   "dog vdi check" successfully recoverd the lost replica.<br>> >       In function default_create_and_write() of sheep/plain_store.c, <br>> > it returns<br>> >   success directly if oid.tmp file exists. I have read the comment in <br>> > this function carefully,<br>> >   it says gateway and recovery thread may try to write the SAME data, <br>> > so it is okay<br>> >   to simply return success here. To solve this problem, I want to <br>> > change the code of<br>> > default_create_and_write() so that replica data will be written even <br>> > oid.tmp file exists.<br>> >   If oid.tmp exists, the function should overwrite it.<br>> > I am not sure if this change will work good for all scenario. <br>> > Especially, I doubt whether<br>> >   this change will lead to old data overwriting new data. But I <br>> > haven't thought out any scenario<br>> >   that will lead to old data overwriting new data. Can someone give me <br>> > some advice to solve this problem?<br>> ><br>> ><br>> ><br>> <br>> [1.2  <text/html; ISO-8859-1 (7bit)>]<br>> <br>> [2  <text/plain; us-ascii (7bit)>]<br>> -- <br>> sheepdog mailing list<br>> <a href="mailto:sheepdog@lists.wpkg.org">sheepdog@lists.wpkg.org</a><br>> <a href="http://lists.wpkg.org/mailman/listinfo/sheepdog">http://lists.wpkg.org/mailman/listinfo/sheepdog</a><o:p></o:p></span></p></div></div></body></html>