Bug 190661 - fenced handles an empty fence-level as a successful fence
fenced handles an empty fence-level as a successful fence
Product: Red Hat Cluster Suite
Classification: Red Hat
Component: fence (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: David Teigland
Cluster QE
Depends On:
  Show dependency treegraph
Reported: 2006-05-04 06:58 EDT by Navid Sheikhol-Eslami
Modified: 2009-04-16 16:31 EDT (History)
1 user (show)

See Also:
Fixed In Version: RHBA-2006-0520
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-05-25 17:05:48 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Navid Sheikhol-Eslami 2006-05-04 06:58:09 EDT
Description of problem:

in the latest fence package (fence-1.32.18), an empty fence-level will be
treated as a successful execution of fencing rather than being skipped.

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


How reproducible:

in a CS4 cluster, create a node and simply define an empty fence-level (without
any fence device attached to it). in /etc/cluster/cluster.conf the node
definition should look like this:

                <clusternode name="node1" votes="1">
                                <method name="1"/>

If "node1" dies, it will be successfully fenced and services will migrate.

Steps to Reproduce:
Actual results:

an empty fence-level is reported as a successful fencing, even if no fencing
actually happens.

Expected results:

an empty fence-level should be skipped and not treated as a success. in the
aforementioned example, fencing should have failed.

Additional info:

re-initializing the "error" variable to -1 should correct this behaviour.

--- fence-1.32.18/fenced/agent.c.orig   2006-05-04 12:01:57.000000000 +0100
+++ fence-1.32.18/fenced/agent.c        2006-04-28 08:44:24.000000000 +0100
@@ -287,6 +287,7 @@
                if (error)

+               error = -1;
                num_devices = count_devices(cd, victim, method);

                for (d = 0; d < num_devices; d++) {
Comment 1 David Teigland 2006-05-09 15:37:44 EDT
fixed, thanks for the patch!
Comment 4 Red Hat Bugzilla 2006-05-25 17:05:48 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.


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