Bug 902644
| Summary: | Virt file does not get regenerated after wiping /var/lib/glusterd/groups and restarting glusterd | |||
|---|---|---|---|---|
| Product: | [Red Hat Storage] Red Hat Gluster Storage | Reporter: | shylesh <shmohan> | |
| Component: | glusterd | Assignee: | Avra Sengupta <asengupt> | |
| Status: | CLOSED ERRATA | QA Contact: | SATHEESARAN <sasundar> | |
| Severity: | medium | Docs Contact: | ||
| Priority: | low | |||
| Version: | unspecified | CC: | asengupt, kparthas, psriniva, rhs-bugs, sasundar, vagarwal, vbellur, vraman | |
| Target Milestone: | --- | Keywords: | ZStream | |
| Target Release: | RHGS 2.1.2 | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | glusterfs-3.4.0.33rhs | Doc Type: | Bug Fix | |
| Doc Text: |
Previously, a Virt file would not be regenerated after it is deleted from /var/lib/glusterd/groups and glusterd service is restarted.
It is required to reinstall the gluster-server RPM to regenerate the Virt file. With this update, 'gluster volume set <VOLNAME> group virt' command displays an error message if the Virt file is invalid or deleted.
|
Story Points: | --- | |
| Clone Of: | ||||
| : | 916127 (view as bug list) | Environment: | ||
| Last Closed: | 2014-02-25 07:23:44 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 916127 | |||
|
Description
shylesh
2013-01-22 06:56:17 UTC
'low' priority because removing the file by hand is not recommended. the issue is because the group file gets installed with rpm, and doesn't get touched after that. One way to handle it is giving proper error saying we are missing 'group' file in /var/lib/glusterd, and thus the command will not be supported. (can be done in CLI). /var/lib/glusterd/groups in case of RHS Based on discussion and resaon mentioned in comment #2, the fix in comment #4 is the max that can be done by Development, otherwise, it is good enough to get closed as NOTABUG. VERIFIED this bug with glusterfs-3.4.0.51rhs-el6rhs As per comment 2, "virt" file will not be regenerated in case, if its deleted accidentally or purposefully. But there would be appropriate cli error message, when trying to use that file. Also if the contents of this "virt" file is not in the format of "key=Value", then also appropriate error is thrown. Tested this with various options as below : ------------------------------------------------------------------------ [root@rhss1 ~]# gluster --version glusterfs 3.4.0.51rhs built on Dec 18 2013 11:15:39 Repository revision: git://git.gluster.com/glusterfs.git Copyright (c) 2006-2011 Gluster Inc. <http://www.gluster.com> GlusterFS comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of GlusterFS under the terms of the GNU General Public License. [root@rhss1 ~]# cat /var/lib/glusterd/groups/virt quick-read=off read-ahead=off io-cache=off stat-prefetch=off eager-lock=enable remote-dio=enable quorum-type=auto server-quorum-type=server [root@rhss1 ~]# cp /var/lib/glusterd/groups/virt . [root@rhss1 ~]# ls anaconda-ks.cfg install.log install.log.syslog scripts virt [root@rhss1 ~]# pwd /root ----------------------------------------------------------------- CASE - When 'virt' file is not available ======================================== [root@rhss1 ~]# rm -rf /var/lib/glusterd/groups/virt [root@rhss1 ~]# ls /var/lib/glusterd/groups/ small-file-perf [root@rhss1 ~]# gluster volume set repvol group virt Unable to open file '/var/lib/glusterd/groups/virt'. Error: No such file or directory [root@rhss1 ~]# touch /var/lib/glusterd/groups/virt [root@rhss1 ~]# gluster volume set repvol group virt '/var/lib/glusterd/groups/virt' file format not valid. [root@rhss1 ~]# cp virt /var/lib/glusterd/groups/virt cp: overwrite `/var/lib/glusterd/groups/virt'? y ------------------------------------------------------------------------ CASE - when 'value' is missing for the 'key' in 'virt' file =========================================================== [root@rhss1 ~]# cat /var/lib/glusterd/groups/virt quick-read=off read-ahead=off io-cache= stat-prefetch=off eager-lock=enable remote-dio=enable quorum-type=auto server-quorum-type=server [root@rhss1 ~]# gluster volume set repvol group virt '/var/lib/glusterd/groups/virt' file format not valid. ----------------------------------------------------------------------- CASE - when 'Key' is missing for the 'value' in 'virt'file =========================================================== [root@rhss1 ~]# cat /var/lib/glusterd/groups/virt quick-read=off read-ahead=off =off stat-prefetch=off eager-lock=enable remote-dio=enable quorum-type=auto server-quorum-type=server [root@rhss1 ~]# gluster volume set repvol group virt '/var/lib/glusterd/groups/virt' file format not valid. ------------------------------------------------------------------------ CASE - when 2 'keys' & 2 'values' are missing from 'virt' file ============================================================== [root@rhss1 ~]# vi /var/lib/glusterd/groups/virt [root@rhss1 ~]# cat /var/lib/glusterd/groups/virt quick-read=off read-ahead=off =off =off eager-lock= remote-dio= quorum-type=auto server-quorum-type=server [root@rhss1 ~]# gluster volume set repvol group virt '/var/lib/glusterd/groups/virt' file format not valid. ------------------------------------------------------------------- POSITIVE CASE - Under ideal condition ( 'virt' file's content not altered' ) ============================================================================ [root@rhss1 ~]# cp virt /var/lib/glusterd/groups/virt cp: overwrite `/var/lib/glusterd/groups/virt'? y [root@rhss1 ~]# cat /var/lib/glusterd/groups/virt quick-read=off read-ahead=off io-cache=off stat-prefetch=off eager-lock=enable remote-dio=enable quorum-type=auto server-quorum-type=server [root@rhss1 ~]# gluster volume set repvol group virt volume set: success [root@rhss1 ~]# gluster volume info repvol Volume Name: repvol Type: Replicate Volume ID: 5d6f89d5-cedb-454f-82d0-54be33f2cb55 Status: Started Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: 10.70.37.86:/rhs/brick4/repdir1 Brick2: 10.70.37.187:/rhs/brick4/repdir1 Options Reconfigured: cluster.server-quorum-type: server cluster.quorum-type: auto network.remote-dio: enable cluster.eager-lock: enable performance.stat-prefetch: off performance.io-cache: off performance.read-ahead: off performance.quick-read: off Can you please verify the doc text for technical accuracy? Changed the rpm's name in the doctext. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHEA-2014-0208.html |