Bug 1224647 - [RFE] Provide hourly scrubbing option
Summary: [RFE] Provide hourly scrubbing option
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: bitrot
Version: 3.7.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Venky Shankar
QA Contact: RajeshReddy
bugs@gluster.org
URL:
Whiteboard:
Depends On: 1224596
Blocks: glusterfs-3.7.1 1226132
TreeView+ depends on / blocked
 
Reported: 2015-05-25 08:59 UTC by Venky Shankar
Modified: 2016-07-13 22:34 UTC (History)
6 users (show)

Fixed In Version: glusterfs-3.7.1
Doc Type: Bug Fix
Doc Text:
Clone Of: 1224596
: 1226132 (view as bug list)
Environment:
Last Closed: 2015-06-02 08:03:14 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)

Description Venky Shankar 2015-05-25 08:59:43 UTC
+++ This bug was initially created as a clone of Bug #1224596 +++

Description of problem:
Provide an option to scrub the filesystem every hour.

Version-Release number of selected component (if applicable):
mainline

--- Additional comment from Anand Avati on 2015-05-25 01:39:47 EDT ---

REVIEW: http://review.gluster.org/10893 (features/bitrot: reimplement scrubbing frequency) posted (#3) for review on master by Venky Shankar (vshankar@redhat.com)

--- Additional comment from Anand Avati on 2015-05-25 01:39:49 EDT ---

REVIEW: http://review.gluster.org/10892 (contrib/timer-wheel: mod_timer() and friends) posted (#3) for review on master by Venky Shankar (vshankar@redhat.com)

--- Additional comment from Anand Avati on 2015-05-25 02:12:57 EDT ---

REVIEW: http://review.gluster.org/10901 (contrib/timer-wheel: mod_timer() and friends) posted (#1) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

--- Additional comment from Anand Avati on 2015-05-25 02:12:59 EDT ---

REVIEW: http://review.gluster.org/10902 (features/bitrot: reimplement scrubbing frequency) posted (#1) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

Comment 1 Anand Avati 2015-05-25 09:04:02 UTC
REVIEW: http://review.gluster.org/10902 (features/bitrot: reimplement scrubbing frequency) posted (#2) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

Comment 2 Anand Avati 2015-05-25 09:04:07 UTC
REVIEW: http://review.gluster.org/10901 (contrib/timer-wheel: mod_timer() and friends) posted (#2) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

Comment 3 Anand Avati 2015-05-29 05:08:02 UTC
REVIEW: http://review.gluster.org/10901 (contrib/timer-wheel: mod_timer() and friends) posted (#3) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

Comment 4 Anand Avati 2015-05-29 05:37:41 UTC
REVIEW: http://review.gluster.org/10902 (features/bitrot: reimplement scrubbing frequency) posted (#3) for review on release-3.7 by Venky Shankar (vshankar@redhat.com)

Comment 5 Anand Avati 2015-05-31 04:13:30 UTC
COMMIT: http://review.gluster.org/10901 committed in release-3.7 by Venky Shankar (vshankar@redhat.com) 
------
commit 5f6876918e9c353bf0ebcd35707fb5cd8876c956
Author: Venky Shankar <vshankar@redhat.com>
Date:   Fri May 22 11:54:11 2015 +0530

    contrib/timer-wheel: mod_timer() and friends
    
    Couple of timer-wheel api's to modify timer expiry times:
    
      mod_timer()
      mod_timer_pending()
    
    Both the api's perform almost the same job with one minute
    difference: mod_timer_pending() modifies timer expiry only
    if the timer is pending (i.e. being tracked in timer-wheel).
    
    Change-Id: Iae64934854ccfd6b081b849bff998ae3c3021bac
    BUG: 1224647
    Signed-off-by: Venky Shankar <vshankar@redhat.com>
    Reviewed-on: http://review.gluster.org/10901
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Tested-by: NetBSD Build System <jenkins@build.gluster.org>

Comment 6 Anand Avati 2015-05-31 04:14:16 UTC
COMMIT: http://review.gluster.org/10902 committed in release-3.7 by Venky Shankar (vshankar@redhat.com) 
------
commit 85173e43faba9bbedd287a4103c129e289829e1f
Author: Venky Shankar <vshankar@redhat.com>
Date:   Thu May 21 19:55:02 2015 +0530

    features/bitrot: reimplement scrubbing frequency
    
    This patch reimplments existing scrub-frequency mechanism used
    to schedule scrubber runs. Existing mechanism uses periodic
    sleeps (waking up periodically on minimum granularity) and
    performing a number of tracking checks based on counters and
    sleep times. This patch does away with all the nifty counters
    and uses timer-wheel to schedule scrub runs.
    
    Scheduling changes are peformed by merely calculating the new
    expiry time and calling mod_timer() [mod_timer_pending() in
    some cases] making the code more debuggable and easier to
    follow. This also introduces "hourly" scrubbing tunable as an
    aid for testing scrubbing during development/testing cycle.
    
    One could also implement on-demand scrubbing with ease: by
    invoking mod_timer() with an expiry of one (1) second, thereby
    scheduling a scrub run the very next second.
    
    Change-Id: I6c7c5f0c6c9f886bf574d88c04cde14b76e60a8b
    BUG: 1224647
    Signed-off-by: Venky Shankar <vshankar@redhat.com>
    Reviewed-on: http://review.gluster.org/10902
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Tested-by: NetBSD Build System <jenkins@build.gluster.org>

Comment 7 Niels de Vos 2015-06-02 08:03:14 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.1, please reopen this bug report.

glusterfs-3.7.1 has been announced on the Gluster Packaging mailinglist [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.packaging/1
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user


Note You need to log in before you can comment on or make changes to this bug.