Re: Object consistent when EC overwrite rollback happen?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 3, 2017 at 3:08 AM, Wangwenfeng <wang.wenfeng@xxxxxxx> wrote:
> Hi, all
>   I have a trouble with in EC overwrite. In the function ‘generate_transactions’, using the clone_range to prepare the rollback data of EC overwrite. The clone_range is clone NO_GEN data to version data, and the new date will write after it.
> If a transaction contain the clone_range and write, and it has submit to journal, now is applying to data disk.
> If the Host power off suddenly, the transaction has apply to data, but the journal not know this. When the Host power on, maybe journal will replay the transaction which contain clone_range and write date to data disk. If this happen, the second clone_range’ data is error, it is the write data.
> The rollback to the object will cause the data error.
> Would you explain this will happen or not? And the rollback to object will cause the data error or not?

I don't understand the problem you're describing. If we replay the
journal, it will clone_range from the original (i.e., untouched) data
and just redo all the work. Where does cloning the wrong thing come
in?
(You can come up with more complicated scenarios that involve
overwriting the data we originally cloned from, but that is all
protected by versions we store in the filesystem that let us detect
these scenarios and account for them.)
-Greg
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux