[Gluster-devel] [geo-rep] Adding broken changelog into OLD htime file

Saravanakumar Arumugam sarumuga at redhat.com
Tue Feb 24 12:35:53 UTC 2015


On 02/24/2015 01:56 PM, Vijay Bellur wrote:
> On 02/23/2015 04:25 PM, Saravanakumar Arumugam wrote:
>> Hi,
>> Geo-replication make use of changelog translator (which is used to
>> capture all I/O operations happening in a Volume and this happens per
>> brick).
>> All the I/O operations happening are stored in
>> .glusterfs/changelogs/CHANGELOG.TS (where TS is timestamp).
>> All successful changelogs(in a session) are getting logged into HTIME 
>> file.
>>
>> Now, we have a case where the Brick can go down (for example some crash)
>> and Changelog logging stops.
>>
>> Consider, gluster volume is started again.
>> Now, the last CHANGELOG (which captured I/Os just before crash) is
>> getting included into the new HTIME file.
>> This leads to inconsistent timings. The last CHANGELOG should have been
>> included into the previous HTIME file.
>>
>> I am planning to make changes in changelog translator so that the last
>> CHANGELOG will be included
>> into the previous HTIME file.  It will be renamed as CHANGELOG.<Previous
>> Changelog TS + 1>.
>
> Would this be done as part of the init() routine for changelog xlator?
>
This will done as part of changelog_rollover_changelog() which gets 
called from the main
dispatch routine. changelog_update.

So, NO this will not be called as part  init routine of changelog xlator.

>> This will give better results when changes happened across a specific
>> duration is asked for.
>>
>
> Looks good to me.
>
> Thanks,
> Vijay
>



More information about the Gluster-devel mailing list