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
67cbda06
Commit
67cbda06
authored
Apr 07, 2006
by
unknown
Browse files
Options
Browse Files
Download
Plain Diff
Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into dl145j.mysql.com:/tmp/5.0.21-bug17284-temp_table
parents
ff5df655
34a72d8d
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
55 additions
and
1 deletion
+55
-1
mysql-test/include/get_binlog_dump_thread_id.inc
mysql-test/include/get_binlog_dump_thread_id.inc
+9
-0
mysql-test/r/rpl_temporary.result
mysql-test/r/rpl_temporary.result
+14
-0
mysql-test/t/rpl_temporary.test
mysql-test/t/rpl_temporary.test
+26
-1
sql/sql_repl.cc
sql/sql_repl.cc
+6
-0
No files found.
mysql-test/include/get_binlog_dump_thread_id.inc
0 → 100644
View file @
67cbda06
--
exec
$MYSQL
test
-
e
'show processlist'
|
grep
'Binlog Dump'
|
cut
-
f1
>
$MYSQLTEST_VARDIR
/
tmp
/
bl_dump_thread_id
--
disable_warnings
drop
table
if
exists
t999
;
--
enable_warnings
create
temporary
table
t999
(
f
int
);
--
replace_result
$MYSQL_TEST_DIR
"."
eval
LOAD
DATA
INFILE
"
$MYSQLTEST_VARDIR
/tmp/bl_dump_thread_id"
into
table
t999
;
let
$id
=
`select f from t999`
;
drop
table
t999
;
mysql-test/r/rpl_temporary.result
View file @
67cbda06
...
...
@@ -89,3 +89,17 @@ f
7
drop table t1,t2;
create temporary table t3 (f int);
create temporary table t4 (f int);
create table t5 (f int);
drop table if exists t999;
create temporary table t999 (f int);
LOAD DATA INFILE "./var/tmp/bl_dump_thread_id" into table t999;
drop table t999;
insert into t4 values (1);
kill `select id from information_schema.processlist where command='Binlog Dump'`;
insert into t5 select * from t4;
select * from t5 /* must be 1 after reconnection */;
f
1
drop temporary table t4;
drop table t5;
mysql-test/t/rpl_temporary.test
View file @
67cbda06
...
...
@@ -129,6 +129,31 @@ drop table t1,t2;
create
temporary
table
t3
(
f
int
);
sync_with_master
;
#
# Bug#17284 erroneous temp table cleanup on slave
#
connection
master
;
create
temporary
table
t4
(
f
int
);
create
table
t5
(
f
int
);
sync_with_master
;
# find dumper's $id
source
include
/
get_binlog_dump_thread_id
.
inc
;
insert
into
t4
values
(
1
);
# a hint how to do that in 5.1
--
replace_result
$id
"`select id from information_schema.processlist where command='Binlog Dump'`"
eval
kill
$id
;
# to stimulate reconnection by slave w/o timeout
insert
into
t5
select
*
from
t4
;
save_master_pos
;
connection
slave
;
sync_with_master
;
select
*
from
t5
/* must be 1 after reconnection */
;
connection
master
;
drop
temporary
table
t4
;
drop
table
t5
;
# The server will now close done
# End of
4.1
tests
# End of
5.0
tests
sql/sql_repl.cc
View file @
67cbda06
...
...
@@ -466,6 +466,12 @@ impossible position";
(rli->group_master_log_pos)
*/
int4store
((
char
*
)
packet
->
ptr
()
+
LOG_POS_OFFSET
+
1
,
0
);
/*
if reconnect master sends FD event with `created' as 0
to avoid destroying temp tables.
*/
int4store
((
char
*
)
packet
->
ptr
()
+
LOG_EVENT_MINIMAL_HEADER_LEN
+
ST_CREATED_OFFSET
+
1
,
(
ulong
)
0
);
/* send it */
if
(
my_net_write
(
net
,
(
char
*
)
packet
->
ptr
(),
packet
->
length
()))
{
...
...
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