wsrep_desync warnings

Bug #1281696 reported by Raghavendra D Prabhu on 2014-02-18
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
MySQL patches by Codership
High
Unassigned
5.5
High
Unassigned
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

With 5.6,

mysql> set global wsrep_desync=ON;
Query OK, 0 rows affected, 2 warnings (0.02 sec)

mysql> show warnings;
+---------+------+----------------------------------------+
| Level | Code | Message |
+---------+------+----------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'ON' |
| Warning | 1231 | 'wsrep_desync' is already OFF. |
+---------+------+----------------------------------------+
2 rows in set (0.00 sec)

mysql> show global variables like '%desync%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wsrep_desync | ON |
+---------------+-------+
1 row in set (0.01 sec)

............
...........

mysql> set global wsrep_desync=OFF;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show warnings
    -> ;
+---------+------+-----------------------------------------+
| Level | Code | Message |
+---------+------+-----------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'OFF' |
+---------+------+-----------------------------------------+
1 row in set (0.00 sec)

description: updated
Przemek (pmalkowski) wrote :

There is also IMHO wrong error when turning the desync to ON twice:

pxc2>show global variables like 'wsrep_desync';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wsrep_desync | OFF |
+---------------+-------+
1 row in set (0.00 sec)

pxc2>set global wsrep_desync=1;
Query OK, 0 rows affected (0.01 sec)

pxc2>set global wsrep_desync=1;
ERROR 1396 (HY000): Operation 'desync' failed for set global wsrep_desync=1

pxc2>show warnings;
+---------+------+---------------------------------------------------------+
| Level | Code | Message |
+---------+------+---------------------------------------------------------+
| Warning | 1231 | 'wsrep_desync' is already ON. |
| Error | 1396 | Operation 'desync' failed for set global wsrep_desync=1 |
+---------+------+---------------------------------------------------------+
2 rows in set (0.00 sec)

But:

pxc2>set global wsrep_desync=0;
Query OK, 0 rows affected (0.00 sec)

pxc2>set global wsrep_desync=0;
Query OK, 0 rows affected, 1 warning (0.00 sec)

pxc2>show warnings;
+---------+------+--------------------------------+
| Level | Code | Message |
+---------+------+--------------------------------+
| Warning | 1231 | 'wsrep_desync' is already OFF. |
+---------+------+--------------------------------+
1 row in set (0.00 sec)

Tested on both PXC 5.5 and 5.6.

This is because the check is incorrect.

var->val->value_bool() returns the old value, var->save_result.... returns the value to be checked in check()

Yan Zhang (yan.zhang) wrote :

@Raghu

I think the check is correct. Everytime wsrep_desync is set 0 or 1, then wsrep->resync()/wsrep->desync() is called. However two consecutive wsrep->resync() calls usually succeed, two consecutive wsrep->desync() calls usually fail.

About the problem that 'set global wsrep_desync=ON/OFF' returns warnings "Truncated incorrect DOUBLE value: 'ON/OFF'", I think maybe mysql does not accept "ON/OFF" as boolean value(seems interpreted as double value). Instead I tried 'set global wsrep_desync=0/1', it works.

Philip Stoev (philip-stoev-f) wrote :

It is the second warning "'wsrep_desync' is already OFF" that is incorrect, as wsrep_desync becomes ON even with the warnings.

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

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

Other bug subscribers