mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-21905: Galera test galera_var_notify_cmd causes hang
The problem is related to performing operations without switching wsrep off, this commit fixes this and allows disabled tests.
This commit is contained in:
@ -34,8 +34,10 @@ SCHEMA="mtr_wsrep_notify"
|
|||||||
MEMB_TABLE="$SCHEMA.membership"
|
MEMB_TABLE="$SCHEMA.membership"
|
||||||
STATUS_TABLE="$SCHEMA.status"
|
STATUS_TABLE="$SCHEMA.status"
|
||||||
|
|
||||||
BEGIN="
|
WSREP_ON='SET wsrep_on=ON'
|
||||||
SET wsrep_on=0;
|
WSREP_OFF='SET wsrep_on=OFF'
|
||||||
|
|
||||||
|
BEGIN="$WSREP_OFF;
|
||||||
CREATE SCHEMA IF NOT EXISTS $SCHEMA;
|
CREATE SCHEMA IF NOT EXISTS $SCHEMA;
|
||||||
CREATE TABLE IF NOT EXISTS $MEMB_TABLE (
|
CREATE TABLE IF NOT EXISTS $MEMB_TABLE (
|
||||||
idx INT,
|
idx INT,
|
||||||
@ -50,9 +52,8 @@ CREATE TABLE IF NOT EXISTS $STATUS_TABLE (
|
|||||||
uuid CHAR(40), /* cluster UUID */
|
uuid CHAR(40), /* cluster UUID */
|
||||||
prim BOOLEAN /* if component is primary */
|
prim BOOLEAN /* if component is primary */
|
||||||
) ENGINE=MEMORY;
|
) ENGINE=MEMORY;
|
||||||
BEGIN;
|
BEGIN"
|
||||||
"
|
END="COMMIT; $WSREP_ON"
|
||||||
END="COMMIT;"
|
|
||||||
|
|
||||||
configuration_change()
|
configuration_change()
|
||||||
{
|
{
|
||||||
@ -71,12 +72,12 @@ configuration_change()
|
|||||||
|
|
||||||
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
||||||
|
|
||||||
echo "$END"
|
echo "$END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
status_update()
|
status_update()
|
||||||
{
|
{
|
||||||
echo "SET wsrep_on=0; BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; COMMIT;"
|
echo "$BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; $END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
trim_string()
|
trim_string()
|
||||||
|
@ -34,8 +34,10 @@ SCHEMA="mtr_wsrep_notify"
|
|||||||
MEMB_TABLE="$SCHEMA.membership"
|
MEMB_TABLE="$SCHEMA.membership"
|
||||||
STATUS_TABLE="$SCHEMA.status"
|
STATUS_TABLE="$SCHEMA.status"
|
||||||
|
|
||||||
BEGIN="
|
WSREP_ON='SET wsrep_on=ON'
|
||||||
SET wsrep_on=0;
|
WSREP_OFF='SET wsrep_on=OFF'
|
||||||
|
|
||||||
|
BEGIN="$WSREP_OFF;
|
||||||
CREATE SCHEMA IF NOT EXISTS $SCHEMA;
|
CREATE SCHEMA IF NOT EXISTS $SCHEMA;
|
||||||
CREATE TABLE IF NOT EXISTS $MEMB_TABLE (
|
CREATE TABLE IF NOT EXISTS $MEMB_TABLE (
|
||||||
idx INT,
|
idx INT,
|
||||||
@ -50,9 +52,8 @@ CREATE TABLE IF NOT EXISTS $STATUS_TABLE (
|
|||||||
uuid CHAR(40), /* cluster UUID */
|
uuid CHAR(40), /* cluster UUID */
|
||||||
prim BOOLEAN /* if component is primary */
|
prim BOOLEAN /* if component is primary */
|
||||||
) ENGINE=MEMORY;
|
) ENGINE=MEMORY;
|
||||||
BEGIN;
|
BEGIN"
|
||||||
"
|
END="COMMIT; $WSREP_ON"
|
||||||
END="COMMIT;"
|
|
||||||
|
|
||||||
configuration_change()
|
configuration_change()
|
||||||
{
|
{
|
||||||
@ -71,12 +72,12 @@ configuration_change()
|
|||||||
|
|
||||||
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
||||||
|
|
||||||
echo "$END"
|
echo "$END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
status_update()
|
status_update()
|
||||||
{
|
{
|
||||||
echo "SET wsrep_on=0; BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; COMMIT;"
|
echo "$BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; $END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
trim_string()
|
trim_string()
|
||||||
|
@ -34,8 +34,10 @@ SCHEMA="wsrep"
|
|||||||
MEMB_TABLE="$SCHEMA.membership"
|
MEMB_TABLE="$SCHEMA.membership"
|
||||||
STATUS_TABLE="$SCHEMA.status"
|
STATUS_TABLE="$SCHEMA.status"
|
||||||
|
|
||||||
BEGIN="
|
WSREP_ON='SET wsrep_on=ON'
|
||||||
SET wsrep_on=0;
|
WSREP_OFF='SET wsrep_on=OFF'
|
||||||
|
|
||||||
|
BEGIN="$WSREP_OFF;
|
||||||
DROP SCHEMA IF EXISTS $SCHEMA; CREATE SCHEMA $SCHEMA;
|
DROP SCHEMA IF EXISTS $SCHEMA; CREATE SCHEMA $SCHEMA;
|
||||||
CREATE TABLE $MEMB_TABLE (
|
CREATE TABLE $MEMB_TABLE (
|
||||||
idx INT UNIQUE PRIMARY KEY,
|
idx INT UNIQUE PRIMARY KEY,
|
||||||
@ -50,9 +52,8 @@ CREATE TABLE $STATUS_TABLE (
|
|||||||
uuid CHAR(40), /* cluster UUID */
|
uuid CHAR(40), /* cluster UUID */
|
||||||
prim BOOLEAN /* if component is primary */
|
prim BOOLEAN /* if component is primary */
|
||||||
) ENGINE=MEMORY;
|
) ENGINE=MEMORY;
|
||||||
BEGIN;
|
BEGIN"
|
||||||
"
|
END="COMMIT; $WSREP_ON"
|
||||||
END="COMMIT;"
|
|
||||||
|
|
||||||
configuration_change()
|
configuration_change()
|
||||||
{
|
{
|
||||||
@ -71,12 +72,12 @@ configuration_change()
|
|||||||
|
|
||||||
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
echo "INSERT INTO $STATUS_TABLE VALUES($idx, $INDEX, '$STATUS', '$CLUSTER_UUID', $PRIMARY);"
|
||||||
|
|
||||||
echo "$END"
|
echo "$END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
status_update()
|
status_update()
|
||||||
{
|
{
|
||||||
echo "SET wsrep_on=0; BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; COMMIT;"
|
echo "$WSREP_OFF; BEGIN; UPDATE $STATUS_TABLE SET status='$STATUS'; $END;"
|
||||||
}
|
}
|
||||||
|
|
||||||
trim_string()
|
trim_string()
|
||||||
|
Reference in New Issue
Block a user