Re: Change in design for changelog crash consistency wrt snapshot.

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

 



[Adding the right alias for gluster-devel]

On 08/24/2014 05:57 PM, Ajeet Jha wrote:
Hi all,

The current design barriers rename and unlink(in changelog xlator) and allows normal creates and data operations. Geo-replication further relies on xsync (ie. marker xlators's xtime updation) for syncing. This design was taking care of one of the most genuine use-case of not blocking normal archival copy techniques (ie.."copy -a ..." ). But the marker translator being unable to propagate change in xtime till root, in snap volume, causes xsync to miss syncing few files.

The change is design, plans to block/barrier all fops other than data operation(writev and truncate) and store changelogs in call-path with O_SYNC mode and call-back path as well. This call-path journelling in triggered by barrier enable and later stopped with barrier disable notification. Further, this call-path changelog gets replaced among normal changelogs(recorded in call-back path). And later reused in history-api call by geo-replication.

A few questions:

- If changelog updates its journal in call path of fops, why is barriering of such fops needed?

- What kind of updates happen to the journal in the call and call-back paths?

Vijay


After brief talk with Venky on design change, i assume that there are few implications.
1. Breakage of initial design use-cases, like non-blocking archival copy during snapshot.
2. Call-path changelog in written in O_SYNC which may cause a huge delay in fop completion.
3. Large memory usage during barrier of all fops.
​​
I request for suggestions on the change in design.
​​


_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://supercolony.gluster.org/mailman/listinfo/gluster-devel





[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux