Uploaded image for project: 'Percona XtraDB Cluster'
  1. Percona XtraDB Cluster
  2. PXC-1212

LP #966679: Able to query table under-going an RSU while node is desyned from Cluster

    Details

    • Type: Bug
    • Status: Done
    • Priority: Low
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Documentation
    • Labels:

      Description

      **Reported in Launchpad by Patrick Zoblisein last update 16-11-2015 11:09:09

      As per the Percona FAQ:
      http://www.percona.com/doc/percona-xtradb-cluster/faq.html#q-how-can-i-check-the-galera-node-health
      Unknown error (node is online but Galera is not connected/synced with the cluster)

      1) Wsrep_OSU_method=RSU on node1/2/3

      2) Node1/2/3: mysql u root p eshow create table t1
      ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

      Table Create Table

      ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

      t1 CREATE TABLE `t1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `hostname` varchar(64) NOT NULL,
      `port` int(11) NOT NULL,
      `instime` datetime NOT NULL,
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB AUTO_INCREMENT=51875647 DEFAULT CHARSET=latin1

      ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
      1 row in set (0.00 sec)

      3) Beginning row counts of t1 on all three nodes:
      -------------------------------------------------------

      count @@hostname now()

      -------------------------------------------------------

      17291893 Node1 2012-03-26 10:45:31

      -------------------------------------------------------
      -------------------------------------------------------

      count @@hostname now()

      -------------------------------------------------------

      17291893 node2 2012-03-26 10:45:32

      --------------------------------------------------------------+
      --------------------------------------------------------------+

      count @@hostname now()

      --------------------------------------------------------------+

      17291893 node3 2012-03-26 10:45:31

      --------------------------------------------------------------+

      4) Add a column to table t1 on node1:

      mysql> select now();
      ---------------------

      now()

      ---------------------

      2012-03-26 10:46:15

      ---------------------
      1 row in set (0.00 sec)

      mysql> ALTER TABLE repl.t1 add column10 int;
      Query OK, 17291893 rows affected (2 min 55.97 sec)
      Records: 17291893 Duplicates: 0 Warnings: 0

      mysql> select now();
      ---------------------

      now()

      ---------------------

      2012-03-26 10:49:11

      ---------------------
      1 row in set (0.00 sec)

      5) Login to node1 - able to select a row from the table under-going RSU (node1) - was expecting to get an "Unknown Command" message based on the FAQ linked above.

      mysql> select *,now() from t1 where port=9999;
      ------------------------------------------------------------

      id hostname port instime now()

      ------------------------------------------------------------

      51875649 RSU-test 9999 2012-03-26 10:44:19 2012-03-26 10:46:57

      ------------------------------------------------------------
      1 row in set (7.04 sec)

      6) Log messages from all three nodes:

      [root@node1]# cat node1.err
      120326 10:46:15 [Note] WSREP: Node 1 (node1) desyncs itself from group
      120326 10:46:15 [Note] WSREP: Shifting SYNCED -> DONOR/DESYNCED (TO: 28807712)
      120326 10:46:15 [Note] WSREP: Provider paused at ea8d8c3e-5bba-11e1-0800-0bdfe5c74f3a:28807712
      120326 10:49:11 [Note] WSREP: Provider resumed.
      120326 10:49:11 [Note] WSREP: Node 1 (node1) resyncs itself to group
      120326 10:49:11 [Note] WSREP: Shifting DONOR/DESYNCED -> JOINED (TO: 28807712)
      120326 10:49:11 [Note] WSREP: Member 1 (node1) synced with group.
      120326 10:49:11 [Note] WSREP: Shifting JOINED -> SYNCED (TO: 28807712)
      120326 10:49:11 [Note] WSREP: Synchronized with group, ready for connections

      [root@node2]# cat node2.err
      120326 10:46:16 [Note] WSREP: Node 1 (node1) desyncs itself from group
      120326 10:49:12 [Note] WSREP: Node 1 (node1) resyncs itself to group
      120326 10:49:12 [Note] WSREP: Member 1 (node1) synced with group.

      [root@node3]# cat node3.err
      120326 10:46:14 [Note] WSREP: Node 1 (node1) desyncs itself from group
      120326 10:49:10 [Note] WSREP: Node 1 (node1) resyncs itself to group
      120326 10:49:10 [Note] WSREP: Member 1 (node1) synced with group.

      7) show create table t1

      node1 (node that underwent RSU):
      CREATE TABLE `t1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `hostname` varchar(64) NOT NULL,
      `port` int(11) NOT NULL,
      `instime` datetime NOT NULL,
      `column10` int(11) DEFAULT NULL, New column has been added.
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB AUTO_INCREMENT=51875652 DEFAULT CHARSET=latin1

      node2
      CREATE TABLE `t1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `hostname` varchar(64) NOT NULL,
      `port` int(11) NOT NULL,
      `instime` datetime NOT NULL,
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB AUTO_INCREMENT=51875650 DEFAULT CHARSET=latin1

      node3
      CREATE TABLE `t1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `hostname` varchar(64) NOT NULL,
      `port` int(11) NOT NULL,
      `instime` datetime NOT NULL,
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB AUTO_INCREMENT=51875650 DEFAULT CHARSET=latin1

      Thanks
      Patrick

        Smart Checklist

          Attachments

            Activity

              People

              • Assignee:
                krunal.bauskar Krunal Bauskar
                Reporter:
                lpjirasync lpjirasync (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated: