Bug 1279319

Summary: [GlusterD]: Volume start fails post add-brick on a volume which is not started
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Byreddy <bsrirama>
Component: glusterdAssignee: Mohammed Rafi KC <rkavunga>
Status: CLOSED CURRENTRELEASE QA Contact: Byreddy <bsrirama>
Severity: high Docs Contact:
Priority: unspecified    
Version: rhgs-3.1CC: amukherj, nlevinki, rkavunga, sasundar, vbellur
Target Milestone: ---Keywords: ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: glusterd
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1279351 (view as bug list) Environment:
Last Closed: 2017-03-25 14:24:29 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: 1279351, 1282322    

Description Byreddy 2015-11-09 07:31:40 UTC
Description of problem:
=======================
Volume start is failing with " Commit failed" when brick is added to stopped state volume.


Version-Release number of selected component (if applicable):
=============================================================
glusterfs-3.7.5-5

How reproducible:
=================
100%


Steps to Reproduce:
===================
1.Have one node cluster
2.Create a volume of type Distributed (1*1) // ** DON'T START THE VOLUME **
3.Add a new brick 
4.Start the volume now // it will fail 

Actual results:
===============
Volume start is failing with "Commit failed"


Expected results:
================
Volume start should work without any issue.


Additional info:

Comment 2 Atin Mukherjee 2015-11-09 07:44:40 UTC
Here goes the RCA for the same:

the add-brick code path has caused a regression when brick(s) are added into a volume which is not started. The issue here is although the add-brick throws up a success message it doesn't generate the volfiles because of which at the time of start brick process in volume start the __server_getspec at glusterd fails since the brick volfile doesn't exist.

Comment 4 Byreddy 2015-11-09 09:07:41 UTC
Additional info to reproduce the issue:
=======================================
Update node from 3.1.1 build to 3.1.2 

Then follow the remaining steps specified in description section.

Comment 5 Mohammed Rafi KC 2015-11-09 09:10:53 UTC
Add-brick implementation has been changed to v3 framework from glusterfs-3.7.6 in upstream. if cluster is running a version equal to or less than GLUSTERFS_3_7_5 , we will fall back into the older implementation. This bug is in the fall back code, where it complete the commit phase without creating the volfiles for newly added brick.

Comment 7 Atin Mukherjee 2016-08-16 15:01:06 UTC
The fix is already part of rhgs-3.1.2 as per comment 6, moving it to ON_QA

Comment 8 Byreddy 2016-11-28 04:02:17 UTC
Verified this bug using the build - glusterfs-3.8.4-5.el7rhgs.x86_64

Fix is working good, reported issue no more exist.

Moving to verified state.