Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
19b1d592
Commit
19b1d592
authored
Jul 08, 2003
by
guilhem@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
parents
99d22442
46b0e778
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
78 additions
and
17 deletions
+78
-17
include/mysqld_error.h
include/mysqld_error.h
+2
-1
mysql-test/r/rpl_error_ignored_table.result
mysql-test/r/rpl_error_ignored_table.result
+15
-0
mysql-test/t/rpl_error_ignored_table-slave.opt
mysql-test/t/rpl_error_ignored_table-slave.opt
+1
-0
mysql-test/t/rpl_error_ignored_table.test
mysql-test/t/rpl_error_ignored_table.test
+22
-0
sql/log.cc
sql/log.cc
+3
-8
sql/log_event.cc
sql/log_event.cc
+2
-1
sql/share/czech/errmsg.txt
sql/share/czech/errmsg.txt
+1
-0
sql/share/danish/errmsg.txt
sql/share/danish/errmsg.txt
+1
-0
sql/share/dutch/errmsg.txt
sql/share/dutch/errmsg.txt
+1
-0
sql/share/english/errmsg.txt
sql/share/english/errmsg.txt
+1
-0
sql/share/estonian/errmsg.txt
sql/share/estonian/errmsg.txt
+1
-0
sql/share/french/errmsg.txt
sql/share/french/errmsg.txt
+1
-0
sql/share/german/errmsg.txt
sql/share/german/errmsg.txt
+1
-0
sql/share/greek/errmsg.txt
sql/share/greek/errmsg.txt
+1
-0
sql/share/hungarian/errmsg.txt
sql/share/hungarian/errmsg.txt
+1
-0
sql/share/italian/errmsg.txt
sql/share/italian/errmsg.txt
+1
-0
sql/share/japanese/errmsg.txt
sql/share/japanese/errmsg.txt
+1
-0
sql/share/korean/errmsg.txt
sql/share/korean/errmsg.txt
+1
-0
sql/share/norwegian-ny/errmsg.txt
sql/share/norwegian-ny/errmsg.txt
+1
-0
sql/share/norwegian/errmsg.txt
sql/share/norwegian/errmsg.txt
+1
-0
sql/share/polish/errmsg.txt
sql/share/polish/errmsg.txt
+1
-0
sql/share/portuguese/errmsg.txt
sql/share/portuguese/errmsg.txt
+1
-0
sql/share/romanian/errmsg.txt
sql/share/romanian/errmsg.txt
+1
-0
sql/share/russian/errmsg.txt
sql/share/russian/errmsg.txt
+1
-0
sql/share/slovak/errmsg.txt
sql/share/slovak/errmsg.txt
+1
-0
sql/share/spanish/errmsg.txt
sql/share/spanish/errmsg.txt
+1
-0
sql/share/swedish/errmsg.txt
sql/share/swedish/errmsg.txt
+1
-0
sql/share/ukrainian/errmsg.txt
sql/share/ukrainian/errmsg.txt
+1
-0
sql/sql_parse.cc
sql/sql_parse.cc
+11
-7
No files found.
include/mysqld_error.h
View file @
19b1d592
...
...
@@ -253,4 +253,5 @@
#define ER_CANT_USE_OPTION_HERE 1234
#define ER_NOT_SUPPORTED_YET 1235
#define ER_MASTER_FATAL_ERROR_READING_BINLOG 1236
#define ER_ERROR_MESSAGES 237
#define ER_SLAVE_IGNORED_TABLE 1237
/* only the slave SQL thread can be sent this */
#define ER_ERROR_MESSAGES 238
mysql-test/r/rpl_error_ignored_table.result
0 → 100644
View file @
19b1d592
slave stop;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
slave start;
create table t1 (a int primary key);
insert into t1 values (1),(1);
Duplicate entry '1' for key 1
show slave status;
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
127.0.0.1 root 9306 1 master-bin.001 213 slave-relay-bin.002 254 master-bin.001 Yes Yes 0 0 213 254
show tables like 't1';
Tables_in_test (t1)
drop table t1;
mysql-test/t/rpl_error_ignored_table-slave.opt
0 → 100644
View file @
19b1d592
--replicate-ignore-table=test.t1
\ No newline at end of file
mysql-test/t/rpl_error_ignored_table.test
0 → 100644
View file @
19b1d592
# Test for
# Bug #797: If a query is ignored on slave (replicate-ignore-table) the slave
# still checks that it has the same error as on the master.
source
include
/
master
-
slave
.
inc
;
connection
master
;
create
table
t1
(
a
int
primary
key
);
# generate an error that goes to the binlog
--
error
1062
;
insert
into
t1
values
(
1
),(
1
);
save_master_pos
;
connection
slave
;
# as the t1 table is ignored on the slave, the slave should be able to sync
sync_with_master
;
show
slave
status
;
# check that the table has been ignored, because otherwise the test is nonsense
show
tables
like
't1'
;
connection
master
;
drop
table
t1
;
save_master_pos
;
connection
slave
;
sync_with_master
;
sql/log.cc
View file @
19b1d592
...
...
@@ -875,14 +875,9 @@ void MYSQL_LOG::new_file(bool need_lock)
save_log_type
=
log_type
;
name
=
0
;
// Don't free name
close
();
/*
if (save_log_type == LOG_BIN)
{
printf("after close, before open; I wait for 20 seconds\n");
sleep(20);
printf("sleep finished, opening\n");
}
*/
// TODO: at this place is_open() will see the log closed, which is BUG#791.
open
(
old_name
,
save_log_type
,
new_name_ptr
,
index_file_name
,
io_cache_type
,
no_auto_events
,
max_size
);
my_free
(
old_name
,
MYF
(
0
));
...
...
sql/log_event.cc
View file @
19b1d592
...
...
@@ -69,7 +69,8 @@ static void pretty_print_str(FILE* file, char* str, int len)
inline
int
ignored_error_code
(
int
err_code
)
{
return
use_slave_mask
&&
bitmap_is_set
(
&
slave_error_mask
,
err_code
);
return
((
err_code
==
ER_SLAVE_IGNORED_TABLE
)
||
(
use_slave_mask
&&
bitmap_is_set
(
&
slave_error_mask
,
err_code
)));
}
...
...
sql/share/czech/errmsg.txt
View file @
19b1d592
...
...
@@ -247,3 +247,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/danish/errmsg.txt
View file @
19b1d592
...
...
@@ -241,3 +241,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/dutch/errmsg.txt
View file @
19b1d592
...
...
@@ -249,3 +249,4 @@
"Foutieve toepassing/plaatsing van '%s'",
"Deze versie van MySQL ondersteunt nog geen '%s'",
"Kreeg fatale fout %d: '%-.128s' van master tijdens lezen van data uit binaire log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/english/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/estonian/errmsg.txt
View file @
19b1d592
...
...
@@ -243,3 +243,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/french/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/german/errmsg.txt
View file @
19b1d592
...
...
@@ -241,3 +241,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/greek/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/hungarian/errmsg.txt
View file @
19b1d592
...
...
@@ -240,3 +240,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/italian/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Uso/posizione di '%s' sbagliato",
"Questa versione di MySQL non supporta ancora '%s'",
"Errore fatale %d: '%-.128s' dal master leggendo i dati dal log binario",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/japanese/errmsg.txt
View file @
19b1d592
...
...
@@ -240,3 +240,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/korean/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/norwegian-ny/errmsg.txt
View file @
19b1d592
...
...
@@ -240,3 +240,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/norwegian/errmsg.txt
View file @
19b1d592
...
...
@@ -240,3 +240,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/polish/errmsg.txt
View file @
19b1d592
...
...
@@ -242,3 +242,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/portuguese/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/romanian/errmsg.txt
View file @
19b1d592
...
...
@@ -242,3 +242,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/russian/errmsg.txt
View file @
19b1d592
...
...
@@ -240,3 +240,4 @@
" '%s'",
" MySQL '%s'",
" %d: '%-.128s' ",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/slovak/errmsg.txt
View file @
19b1d592
...
...
@@ -246,3 +246,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/spanish/errmsg.txt
View file @
19b1d592
...
...
@@ -239,3 +239,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/swedish/errmsg.txt
View file @
19b1d592
...
...
@@ -238,3 +238,4 @@
"Fel använding/placering av '%s'",
"Denna version av MySQL kan ännu inte utföra '%s'",
"Fick fatalt fel %d: '%-.128s' från master vid läsning av binärloggen"
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/share/ukrainian/errmsg.txt
View file @
19b1d592
...
...
@@ -243,3 +243,4 @@
"Wrong usage/placement of '%s'",
"This version of MySQL doesn't yet support '%s'",
"Got fatal error %d: '%-.128s' from master when reading data from binary log",
"Slave SQL thread ignored the query because of replicate-*-table rules"
sql/sql_parse.cc
View file @
19b1d592
...
...
@@ -1324,7 +1324,11 @@ mysql_execute_command(void)
given and the table list says the query should not be replicated
*/
if
(
table_rules_on
&&
tables
&&
!
tables_ok
(
thd
,
tables
))
{
/* we warn the slave SQL thread */
my_error
(
ER_SLAVE_IGNORED_TABLE
,
MYF
(
0
));
DBUG_VOID_RETURN
;
}
#ifndef TO_BE_DELETED
/*
This is a workaround to deal with the shortcoming in 3.23.44-3.23.46
...
...
@@ -1339,13 +1343,7 @@ mysql_execute_command(void)
#endif
}
/*
Skip if we are in the slave thread, some table rules have been given
and the table list says the query should not be replicated
*/
if
((
lex
->
select_lex
.
next
&&
create_total_list
(
thd
,
lex
,
&
tables
))
||
(
table_rules_on
&&
tables
&&
thd
->
slave_thread
&&
!
tables_ok
(
thd
,
tables
)))
if
(
lex
->
select_lex
.
next
&&
create_total_list
(
thd
,
lex
,
&
tables
))
DBUG_VOID_RETURN
;
/*
...
...
@@ -2330,7 +2328,10 @@ mysql_execute_command(void)
if
(
thd
->
slave_thread
&&
(
!
db_ok
(
lex
->
name
,
replicate_do_db
,
replicate_ignore_db
)
||
!
db_ok_with_wild_table
(
lex
->
name
)))
{
my_error
(
ER_SLAVE_IGNORED_TABLE
,
MYF
(
0
));
break
;
}
if
(
check_access
(
thd
,
CREATE_ACL
,
lex
->
name
,
0
,
1
))
break
;
...
...
@@ -2354,7 +2355,10 @@ mysql_execute_command(void)
if
(
thd
->
slave_thread
&&
(
!
db_ok
(
lex
->
name
,
replicate_do_db
,
replicate_ignore_db
)
||
!
db_ok_with_wild_table
(
lex
->
name
)))
{
my_error
(
ER_SLAVE_IGNORED_TABLE
,
MYF
(
0
));
break
;
}
if
(
check_access
(
thd
,
DROP_ACL
,
lex
->
name
,
0
,
1
))
break
;
if
(
thd
->
locked_tables
||
thd
->
active_transaction
())
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment