Example wsrep_notify script fails on node shutdown

Bug #1132955 reported by Alex Yurchenko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MySQL patches by Codership
Status tracked in 5.6
5.5
Fix Released
Medium
Yan Zhang
5.6
Fix Released
Medium
Yan Zhang
Percona XtraDB Cluster moved to https://jira.percona.com/projects/PXC
Status tracked in 5.6
5.5
Fix Released
Undecided
Unassigned
5.6
Fix Released
Undecided
Unassigned

Bug Description

Due to empty member list supplied:

/usr/share/mysql/wsrep_notify: line 88: $2: unbound variable
130225 9:49:43 [ERROR] WSREP: Process completed with error: /usr/share/mysql/wsrep_notify --status Undefined --uuid 1a8aaf53-658f-11e2-0800-4dd9205307af --primary no --index -1 --members: 1 (Operation not permitted)

line 88:
        MEMBERS=$2

Tags: patch
Changed in codership-mysql:
milestone: 5.5.30-24.8 → 5.5.31-23.7.4
Changed in percona-xtradb-cluster:
milestone: none → 5.5.31-25
Changed in codership-mysql:
milestone: 5.5.31-23.7.5 → 5.5.32-23.7.6
Revision history for this message
Raghavendra D Prabhu (raghavendra-prabhu) wrote :

Is there any context where the member list can be empty?

From wsrep_notify.cc:
=========
    for (int i = 0; i < view->memb_num; i++)
    {
      wsrep_uuid_print (&view->members[i].id, uuid_str, sizeof(uuid_str));
      cmd_off += snprintf (cmd_ptr + cmd_off, cmd_len - cmd_off,
                           "%c%s/%s/%s", i > 0 ? ',' : ' ',
                           uuid_str, view->members[i].name,
                           view->members[i].incoming);
    }

=========

Is the self (the node on where this runs) not part of view (ie.
view->my_idx being one of view->memb_num)? If not, is this a bug?

Changed in percona-xtradb-cluster:
milestone: 5.5.33-23.7.6 → future-5.5
Changed in codership-mysql:
milestone: 5.5.33-23.7.6 → 5.5.34-24.9
Changed in codership-mysql:
milestone: 5.5.34-25.9 → 5.5.34-25.10
Revision history for this message
Daniel Black (daniel-black) wrote :

This occurs when the mysqld instantance is shutdown. I'm assuming the members are removed before the second calling.

Mar 13 05:39:06 db1 galera_notify: run with: --status Undefined --uuid d30213b2-a989-11e3-ab45-674672f482d1 --primary no --index 0 --members b8810e6f-aa62-11e3-b79c-279691a06c78/db1/106.186.114.215:3306
Mar 13 05:39:06 db1 galera_notify: run with: --status Undefined --uuid d30213b2-a989-11e3-ab45-674672f482d1 --primary no --index -1 --members

Revision history for this message
Daniel Black (daniel-black) wrote :

really easy patch to fix this attached

tags: added: patch
Revision history for this message
Yan Zhang (yan.zhang) wrote :
Revision history for this message
Yan Zhang (yan.zhang) wrote :
Revision history for this message
Alex Yurchenko (ayurchen) wrote :

Yan, I think that fix is in the wrong place. wsrep_notify.sh is just an example script. Fixing it does not fix the problem that anybody who writes his own script will face - namely the dangling --members option. It simply should not be there.

Revision history for this message
Yan Zhang (yan.zhang) wrote :
Revision history for this message
Nirbhay Choubey (nirbhay) wrote :

The 2nd patch left behind an unmatched "fi" (syntax error) in the example script.

http://bazaar.launchpad.net/~codership/codership-mysql/wsrep-5.5/revision/3974#support-files/wsrep_notify.sh

Revision history for this message
Yan Zhang (yan.zhang) wrote :
Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PXC-1297

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.