diff options
Diffstat (limited to 'doc/developer-guide/Bug-Reporting-Guidelines.md')
| -rw-r--r-- | doc/developer-guide/Bug-Reporting-Guidelines.md | 128 | 
1 files changed, 128 insertions, 0 deletions
diff --git a/doc/developer-guide/Bug-Reporting-Guidelines.md b/doc/developer-guide/Bug-Reporting-Guidelines.md new file mode 100644 index 00000000000..d03878adebd --- /dev/null +++ b/doc/developer-guide/Bug-Reporting-Guidelines.md @@ -0,0 +1,128 @@ +Before filing a bug +------------------- + +If you are finding any issues, these preliminary checks as useful: + +-   Is SELinux enabled? (you can use `getenforce` to check) +-   Are iptables rules blocking any data traffic? (`iptables -L` can +    help check) +-   Are all the nodes reachable from each other? [ Network problem ] +-   Please search Bugzilla to see if the bug has already been reported +    -   Choose GlusterFS as the "product", and then type something +        relevant in the "words" box. If you are seeing a crash or abort, +        searching for part of the abort message might be effective. If +        you are feeling adventurous you can select the "Advanced search" +        tab; this gives a lot more control but isn't much better for +        finding existing bugs. +    -   If a bug has been already filed for a particular release and you +        found the bug in another release, +        -   please clone the existing bug for the release, you found the +            issue. +        -   If the existing bug is against mainline and you found the +            issue for a release, then the cloned bug *depends on* should +            be set to the BZ for mainline bug. + +Anyone can search in Bugzilla, you don't need an account. Searching +requires some effort, but helps avoid duplicates, and you may find that +your problem has already been solved. + +Reporting A Bug +--------------- + +-   You should have a Bugzilla account +-   Here is the link to file a bug: +    [Bugzilla](https://bugzilla.redhat.com/enter_bug.cgi?product=GlusterFS) +-   The template for filing a bug can be found [ +    *here*](./Bug reporting template.md) + +*Note: Please go through all below sections to understand what +information we need to put in a bug. So it will help the developer to +root cause and fix it* + +### Required Information + +You should gather the information below before creating the bug report. + +#### Package Information + +-   Location from which the packages are used +-   Package Info - version of glusterfs package installed + +#### Cluster Information + +-   Number of nodes in the cluster +-   Hostnames and IPs of the gluster Node [if it is not a security +    issue] +    -   Hostname / IP will help developers in understanding & +        correlating with the logs +-   Output of `gluster peer status` +-   Node IP, from which the "x" operation is done +    -   "x" here means any operation that causes the issue + +#### Volume Information + +-   Number of volumes +-   Volume Names +-   Volume on which the particular issue is seen [ if applicable ] +-   Type of volumes +-   Volume options if available +-   Output of `gluster volume info` +-   Output of `gluster volume status` +-   Get the statedump of the volume with the problem + +`   $ gluster volume statedump `<vol-name> + +This dumps statedump per brick process in `/var/run/gluster` + +*NOTE: Collect statedumps from one gluster Node in a directory.* + +Repeat it in all Nodes containing the bricks of the volume. All the so +collected directories could be archived,compressed and attached to bug + +#### Brick Information + +-   xfs options when brick partition was done +    -   This could be obtained with this command : + +`   $ xfs_info /dev/mapper/vg1-brick` + +-   Extended attributes on the bricks +    -   This could be obtained with this command: + +`   $ getfattr -d -m. -ehex /rhs/brick1/b1` + +#### Client Information + +-   OS Type ( Windows, RHEL ) +-   OS Version : In case of Linux distro get the following : + +`   $ uname -r`\ +`   $ cat /etc/issue` + +-   Fuse or NFS Mount point on the client with output of mount commands +-   Output of `df -Th` command + +#### Tool Information + +-   If any tools are used for testing, provide the info/version about it +-   if any IO is simulated using a script, provide the script + +#### Logs Information + +-   You can check logs for check for issues/warnings/errors. +    -   Self-heal logs +    -   Rebalance logs +    -   Glusterd logs +    -   Brick logs +    -   NFS logs (if applicable) +    -   Samba logs (if applicable) +    -   Client mount log +-   Add the entire logs as attachment, if its very large to paste as a +    comment + +#### SOS report for CentOS/Fedora + +-   Get the sosreport from the involved gluster Node and Client [ in +    case of CentOS /Fedora ] +-   Add a meaningful name/IP to the sosreport, by renaming/adding +    hostname/ip to the sosreport name  | 
