Details
Description
On slave , Non-super users can able to execute XA COMMIT/XA ROLLBACK.
slave fails to return an error in read-only mode. It causes the slave to break replication when gtid_strict_mode is enabled.
On Master:
MariaDB [test]> select @@read_only;
|
+-------------+
|
| @@read_only |
|
+-------------+
|
| 0 |
|
+-------------+
|
1 row in set (0.000 sec)
|
MariaDB [test]> XA START 'MyXA';
|
Query OK, 0 rows affected (0.001 sec)
|
|
MariaDB [test]> INSERT INTO test.t1 VALUES(1);
|
Query OK, 1 row affected (0.001 sec)
|
|
MariaDB [test]> XA END 'MyXA';
|
Query OK, 0 rows affected (0.000 sec)
|
|
MariaDB [test]> XA PREPARE 'MyXA';
|
Query OK, 0 rows affected (0.003 sec)
|
On slave:
MariaDB [(none)]> select @@read_only;
|
+-------------+
|
| @@read_only |
|
+-------------+
|
| 1 |
|
+-------------+
|
1 row in set (0.001 sec)
|
|
MariaDB [test]> show grants;
|
+---------------------------------------------------------------------------------------------------------+
|
| Grants for app_user@% |
|
+---------------------------------------------------------------------------------------------------------+
|
| GRANT USAGE ON *.* TO "app_user"@"%" IDENTIFIED BY PASSWORD '*8232A1298A49F710DBEE0B330C42EEC825D4190A' |
|
| GRANT SELECT, INSERT, UPDATE, DELETE ON "test".* TO "app_user"@"%" |
|
+---------------------------------------------------------------------------------------------------------+
|
2 rows in set (0.001 sec)
|
|
MariaDB [(none)]> XA COMMIT 'MyXA';
|
Query OK, 0 rows affected (0.004 sec)
|
|
on Slave:
|
MariaDB [test]> select @@read_only;
|
+-------------+
|
| @@read_only |
|
+-------------+
|
| 1 |
|
+-------------+
|
1 row in set (0.000 sec)
|
|
MariaDB [test]> show grants;
|
+---------------------------------------------------------------------------------------------------------+
|
| Grants for app_user@% |
|
+---------------------------------------------------------------------------------------------------------+
|
| GRANT USAGE ON *.* TO "app_user"@"%" IDENTIFIED BY PASSWORD '*8232A1298A49F710DBEE0B330C42EEC825D4190A' |
|
| GRANT SELECT, INSERT, UPDATE, DELETE ON "test".* TO "app_user"@"%" |
|
+---------------------------------------------------------------------------------------------------------+
|
2 rows in set (0.001 sec)
|
|
MariaDB [test]> XA ROLLBACK 'MyXA';
|
Query OK, 0 rows affected (0.005 sec)
|
|
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Component/s | XA [ 12400 ] |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] |
Affects Version/s | 10.3 [ 22126 ] | |
Affects Version/s | 10.4 [ 22408 ] | |
Affects Version/s | 10.5 [ 23123 ] | |
Affects Version/s | 10.6 [ 24028 ] |
Description |
On slave XA COMMIT/XA ROLLBACK fail to return an error in read-only mode. It cause slave to break replication when gtid_strict_mode is enable.
On Master: {code} MariaDB [test]> select @@read_only; +-------------+ | @@read_only | +-------------+ | 0 | +-------------+ 1 row in set (0.000 sec) MariaDB [test]> XA START 'MyXA'; Query OK, 0 rows affected (0.001 sec) MariaDB [test]> INSERT INTO test.t1 VALUES(1); Query OK, 1 row affected (0.001 sec) MariaDB [test]> XA END 'MyXA'; Query OK, 0 rows affected (0.000 sec) MariaDB [test]> XA PREPARE 'MyXA'; Query OK, 0 rows affected (0.003 sec) {code} On slave: {code} MariaDB [(none)]> select @@read_only; +-------------+ | @@read_only | +-------------+ | 1 | +-------------+ 1 row in set (0.001 sec) MariaDB [(none)]> XA COMMIT 'MyXA'; Query OK, 0 rows affected (0.004 sec) {code} |
On slave , Non-super users can able to execute XA COMMIT/XA ROLLBACK.
slave fails to return an error in read-only mode. It causes the slave to break replication when gtid_strict_mode is enabled. On Master: {code} MariaDB [test]> select @@read_only; +-------------+ | @@read_only | +-------------+ | 0 | +-------------+ 1 row in set (0.000 sec) MariaDB [test]> XA START 'MyXA'; Query OK, 0 rows affected (0.001 sec) MariaDB [test]> INSERT INTO test.t1 VALUES(1); Query OK, 1 row affected (0.001 sec) MariaDB [test]> XA END 'MyXA'; Query OK, 0 rows affected (0.000 sec) MariaDB [test]> XA PREPARE 'MyXA'; Query OK, 0 rows affected (0.003 sec) {code} On slave: {code} MariaDB [(none)]> select @@read_only; +-------------+ | @@read_only | +-------------+ | 1 | +-------------+ 1 row in set (0.001 sec) MariaDB [test]> show grants; +---------------------------------------------------------------------------------------------------------+ | Grants for app_user@% | +---------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO "app_user"@"%" IDENTIFIED BY PASSWORD '*8232A1298A49F710DBEE0B330C42EEC825D4190A' | | GRANT SELECT, INSERT, UPDATE, DELETE ON "test".* TO "app_user"@"%" | +---------------------------------------------------------------------------------------------------------+ 2 rows in set (0.001 sec) MariaDB [(none)]> XA COMMIT 'MyXA'; Query OK, 0 rows affected (0.004 sec) {code} on Slave: {code} MariaDB [test]> select @@read_only; +-------------+ | @@read_only | +-------------+ | 1 | +-------------+ 1 row in set (0.000 sec) MariaDB [test]> show grants; +---------------------------------------------------------------------------------------------------------+ | Grants for app_user@% | +---------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO "app_user"@"%" IDENTIFIED BY PASSWORD '*8232A1298A49F710DBEE0B330C42EEC825D4190A' | | GRANT SELECT, INSERT, UPDATE, DELETE ON "test".* TO "app_user"@"%" | +---------------------------------------------------------------------------------------------------------+ 2 rows in set (0.001 sec) MariaDB [test]> XA ROLLBACK 'MyXA'; Query OK, 0 rows affected (0.005 sec) {code} |
Assignee | Andrei Elkin [ elkin ] |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.3 [ 22126 ] |
Status | Open [ 1 ] | Needs Feedback [ 10501 ] |
Status | Needs Feedback [ 10501 ] | Open [ 1 ] |
Status | Open [ 1 ] | Confirmed [ 10101 ] |
Priority | Major [ 3 ] | Critical [ 2 ] |
Fix Version/s | 10.3 [ 22126 ] |
Status | Confirmed [ 10101 ] | In Progress [ 3 ] |
Assignee | Andrei Elkin [ elkin ] | Brandon Nesterenko [ JIRAUSER48702 ] |
Affects Version/s | 10.7 [ 24805 ] | |
Affects Version/s | 10.8 [ 26121 ] | |
Affects Version/s | 10.9 [ 26905 ] | |
Affects Version/s | 10.10 [ 27530 ] | |
Affects Version/s | 10.11 [ 27614 ] | |
Affects Version/s | 11.0 [ 28320 ] | |
Affects Version/s | 11.1 [ 28549 ] | |
Affects Version/s | 10.3 [ 22126 ] | |
Affects Version/s | 10.4 [ 22408 ] |
Fix Version/s | 10.4 [ 22408 ] |
Assignee | Brandon Nesterenko [ JIRAUSER48702 ] | Andrei Elkin [ elkin ] |
Status | In Progress [ 3 ] | In Review [ 10002 ] |
Link | This issue blocks TODO-4054 [ TODO-4054 ] |
Assignee | Andrei Elkin [ elkin ] | Brandon Nesterenko [ JIRAUSER48702 ] |
issue.field.resolutiondate | 2023-07-11 17:40:09.0 | 2023-07-11 17:40:09.257 |
Component/s | Replication [ 10100 ] | |
Fix Version/s | 10.5.22 [ 29011 ] | |
Fix Version/s | 10.6.15 [ 29013 ] | |
Fix Version/s | 10.9.8 [ 29015 ] | |
Fix Version/s | 10.10.6 [ 29017 ] | |
Fix Version/s | 10.11.5 [ 29019 ] | |
Fix Version/s | 11.0.3 [ 28920 ] | |
Fix Version/s | 11.1.2 [ 28921 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Resolution | Fixed [ 1 ] | |
Status | In Review [ 10002 ] | Closed [ 6 ] |
Labels | replication | server xa |
Zendesk Related Tickets | 115837 |