[Gluster-devel] Implementation of new command to get start and end time of afr crawl
Venkatesh Somyajulu
vsomyaju at redhat.com
Fri Jan 11 06:48:57 UTC 2013
Description of problem:
------------------------
In a replicate volume , When there are files to be self-healed and an offline brick comes online, the glustershd.log file doesn't report any log messages on start of crawl and end of crawl.
Currently Available options for checking files to be self-healed:-
----------------------------------------------------------------
1. Number of files that has to be self-healed can be obtained from the gluster cli command : "gluster volume heal <vol_name> info"
2. Number of files that got self-healed (Only 1023 entries reported)can be obtained from the gluster cli command : "gluster volume heal <vol_name> info healed"
3. To check pending self-heals other option is to keep monitoring ".glusterfs/indices/xattrop" directory of the source brick.
file. It would be helpful if number of files that got self-healed (only the count) is also reported in the glustershd.log file.
New Implementation:
-------------------
A new glusterd command is proposed which will give the last 50 crawls information.
Below I am describing the initial design plan and need suggestions for the same.
---------------------------------------------------------------------------------------------------
Command Name:
------------------------------------
gluster volume crawlinfo <Volname>
Output [Example is for a replicate volume of replica count 2. Bricks are on two different Machines]
--------
Volume Name: Volname
Volume ID: 66cf8864-af11-4b69-9a6a-267011e7f879
Number of Bricks: 1x2 = 2
Crawl info for Brick Number: 1
Brick Info: 192.168.122.1:/volume/brick1
Crawl Number: 1
Start of crawl: <TIME>
End of crawl: <TIME>
Number of entires to be healed: <Number> //Here Number of entries are count of entries in the xattrop file.
Crawl Number: 2
Start of crawl: <TIME>
End of crawl: <TIME>
Number of entries to be healed: <Number>
Crawl info for Brick Number: 2
Brick Info: 192.168.122.2:/volume/brick2
Crawl Number: 1
Start of crawl: <TIME>
End of crawl: <TIME>
Number of entires to be healed: <Number>
Crawl Number: 2
Start of crawl: <TIME>
End of crawl: <TIME>
Number of entries to be healed: <Number>
If in case crawl is still going on for a brick:
-----------------------------------------------
Crawl info for brick Number: 1
Brick Info: 192.168.122.1:/volume/brick1
Start of crawl: <TIME>
End of crawl: Crawl is still in progress
Number of entries to be healed: <Number>
So for every brick last 50 crawl information will be stored. And command will display those last 50 entries for every brick.
Regards,
Venkatesh Somyajulu
More information about the Gluster-devel
mailing list