mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-8329 MariaDB crashes when replicate_wild_ignore_table is set to NULL.
Rpl_filter::parse_filter_rule() made NULL-safe.
This commit is contained in:
@ -33,5 +33,9 @@ SET @@GLOBAL.replicate_do_db="";
|
|||||||
SELECT @@GLOBAL.replicate_do_db;
|
SELECT @@GLOBAL.replicate_do_db;
|
||||||
@@GLOBAL.replicate_do_db
|
@@GLOBAL.replicate_do_db
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_do_db=null;
|
||||||
|
SELECT @@GLOBAL.replicate_do_db;
|
||||||
|
@@GLOBAL.replicate_do_db
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_do_db = @save_replicate_do_db;
|
SET @@GLOBAL.replicate_do_db = @save_replicate_do_db;
|
||||||
|
@ -40,5 +40,9 @@ SET @@GLOBAL.replicate_do_table="";
|
|||||||
SELECT @@GLOBAL.replicate_do_table;
|
SELECT @@GLOBAL.replicate_do_table;
|
||||||
@@GLOBAL.replicate_do_table
|
@@GLOBAL.replicate_do_table
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_do_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_do_table;
|
||||||
|
@@GLOBAL.replicate_do_table
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_do_table = @save_replicate_do_table;
|
SET @@GLOBAL.replicate_do_table = @save_replicate_do_table;
|
||||||
|
@ -33,5 +33,9 @@ SET @@GLOBAL.replicate_ignore_db="";
|
|||||||
SELECT @@GLOBAL.replicate_ignore_db;
|
SELECT @@GLOBAL.replicate_ignore_db;
|
||||||
@@GLOBAL.replicate_ignore_db
|
@@GLOBAL.replicate_ignore_db
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_ignore_db=null;
|
||||||
|
SELECT @@GLOBAL.replicate_ignore_db;
|
||||||
|
@@GLOBAL.replicate_ignore_db
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_ignore_db = @save_replicate_ignore_db;
|
SET @@GLOBAL.replicate_ignore_db = @save_replicate_ignore_db;
|
||||||
|
@ -40,5 +40,9 @@ SET @@GLOBAL.replicate_ignore_table="";
|
|||||||
SELECT @@GLOBAL.replicate_ignore_table;
|
SELECT @@GLOBAL.replicate_ignore_table;
|
||||||
@@GLOBAL.replicate_ignore_table
|
@@GLOBAL.replicate_ignore_table
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_ignore_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_ignore_table;
|
||||||
|
@@GLOBAL.replicate_ignore_table
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_ignore_table = @save_replicate_ignore_table;
|
SET @@GLOBAL.replicate_ignore_table = @save_replicate_ignore_table;
|
||||||
|
@ -40,5 +40,9 @@ SET @@GLOBAL.replicate_wild_do_table="";
|
|||||||
SELECT @@GLOBAL.replicate_wild_do_table;
|
SELECT @@GLOBAL.replicate_wild_do_table;
|
||||||
@@GLOBAL.replicate_wild_do_table
|
@@GLOBAL.replicate_wild_do_table
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_wild_do_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_wild_do_table;
|
||||||
|
@@GLOBAL.replicate_wild_do_table
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_wild_do_table = @save_replicate_wild_do_table;
|
SET @@GLOBAL.replicate_wild_do_table = @save_replicate_wild_do_table;
|
||||||
|
@ -40,5 +40,9 @@ SET @@GLOBAL.replicate_wild_ignore_table="";
|
|||||||
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
||||||
@@GLOBAL.replicate_wild_ignore_table
|
@@GLOBAL.replicate_wild_ignore_table
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_wild_ignore_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
||||||
|
@@GLOBAL.replicate_wild_ignore_table
|
||||||
|
|
||||||
# Cleanup.
|
# Cleanup.
|
||||||
SET @@GLOBAL.replicate_wild_ignore_table = @save_replicate_wild_ignore_table;
|
SET @@GLOBAL.replicate_wild_ignore_table = @save_replicate_wild_ignore_table;
|
||||||
|
@ -35,5 +35,8 @@ SELECT @@GLOBAL.replicate_do_db;
|
|||||||
SET @@GLOBAL.replicate_do_db="";
|
SET @@GLOBAL.replicate_do_db="";
|
||||||
SELECT @@GLOBAL.replicate_do_db;
|
SELECT @@GLOBAL.replicate_do_db;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_do_db=null;
|
||||||
|
SELECT @@GLOBAL.replicate_do_db;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_do_db = @save_replicate_do_db;
|
SET @@GLOBAL.replicate_do_db = @save_replicate_do_db;
|
||||||
|
@ -44,5 +44,8 @@ SELECT @@GLOBAL.replicate_do_table;
|
|||||||
SET @@GLOBAL.replicate_do_table="";
|
SET @@GLOBAL.replicate_do_table="";
|
||||||
SELECT @@GLOBAL.replicate_do_table;
|
SELECT @@GLOBAL.replicate_do_table;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_do_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_do_table;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_do_table = @save_replicate_do_table;
|
SET @@GLOBAL.replicate_do_table = @save_replicate_do_table;
|
||||||
|
@ -35,5 +35,8 @@ SELECT @@GLOBAL.replicate_ignore_db;
|
|||||||
SET @@GLOBAL.replicate_ignore_db="";
|
SET @@GLOBAL.replicate_ignore_db="";
|
||||||
SELECT @@GLOBAL.replicate_ignore_db;
|
SELECT @@GLOBAL.replicate_ignore_db;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_ignore_db=null;
|
||||||
|
SELECT @@GLOBAL.replicate_ignore_db;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_ignore_db = @save_replicate_ignore_db;
|
SET @@GLOBAL.replicate_ignore_db = @save_replicate_ignore_db;
|
||||||
|
@ -44,5 +44,8 @@ SELECT @@GLOBAL.replicate_ignore_table;
|
|||||||
SET @@GLOBAL.replicate_ignore_table="";
|
SET @@GLOBAL.replicate_ignore_table="";
|
||||||
SELECT @@GLOBAL.replicate_ignore_table;
|
SELECT @@GLOBAL.replicate_ignore_table;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_ignore_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_ignore_table;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_ignore_table = @save_replicate_ignore_table;
|
SET @@GLOBAL.replicate_ignore_table = @save_replicate_ignore_table;
|
||||||
|
@ -44,5 +44,8 @@ SELECT @@GLOBAL.replicate_wild_do_table;
|
|||||||
SET @@GLOBAL.replicate_wild_do_table="";
|
SET @@GLOBAL.replicate_wild_do_table="";
|
||||||
SELECT @@GLOBAL.replicate_wild_do_table;
|
SELECT @@GLOBAL.replicate_wild_do_table;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_wild_do_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_wild_do_table;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_wild_do_table = @save_replicate_wild_do_table;
|
SET @@GLOBAL.replicate_wild_do_table = @save_replicate_wild_do_table;
|
||||||
|
@ -44,5 +44,8 @@ SELECT @@GLOBAL.replicate_wild_ignore_table;
|
|||||||
SET @@GLOBAL.replicate_wild_ignore_table="";
|
SET @@GLOBAL.replicate_wild_ignore_table="";
|
||||||
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
||||||
|
|
||||||
|
SET @@GLOBAL.replicate_wild_ignore_table=null;
|
||||||
|
SELECT @@GLOBAL.replicate_wild_ignore_table;
|
||||||
|
|
||||||
--echo # Cleanup.
|
--echo # Cleanup.
|
||||||
SET @@GLOBAL.replicate_wild_ignore_table = @save_replicate_wild_ignore_table;
|
SET @@GLOBAL.replicate_wild_ignore_table = @save_replicate_wild_ignore_table;
|
||||||
|
@ -279,6 +279,9 @@ Rpl_filter::parse_filter_rule(const char* spec, Add_filter add)
|
|||||||
int status= 0;
|
int status= 0;
|
||||||
char *arg, *ptr, *pstr;
|
char *arg, *ptr, *pstr;
|
||||||
|
|
||||||
|
if (!spec)
|
||||||
|
return false;
|
||||||
|
|
||||||
if (! (ptr= my_strdup(spec, MYF(MY_WME))))
|
if (! (ptr= my_strdup(spec, MYF(MY_WME))))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user