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
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
f384cfe3
Commit
f384cfe3
authored
May 07, 2006
by
aelkin@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge aelkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.0-bug19136
parents
a6619a74
49bc52e5
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
0 deletions
+17
-0
mysql-test/r/rpl_user_variables.result
mysql-test/r/rpl_user_variables.result
+1
-0
mysql-test/t/rpl_user_variables.test
mysql-test/t/rpl_user_variables.test
+6
-0
sql/item_func.cc
sql/item_func.cc
+10
-0
No files found.
mysql-test/r/rpl_user_variables.result
View file @
f384cfe3
...
@@ -106,5 +106,6 @@ slave-bin.000001 # User var 2 # @`a`=5
...
@@ -106,5 +106,6 @@ slave-bin.000001 # User var 2 # @`a`=5
slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a)
slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a)
slave-bin.000001 # User var 2 # @`a`=NULL
slave-bin.000001 # User var 2 # @`a`=NULL
slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a),(@a*5)
slave-bin.000001 # Query 1 # use `test`; insert into t1 values (@a),(@a),(@a*5)
insert into t1 select * FROM (select @var1 union select @var2) AS t2;
drop table t1;
drop table t1;
stop slave;
stop slave;
mysql-test/t/rpl_user_variables.test
View file @
f384cfe3
...
@@ -48,9 +48,15 @@ sync_with_master;
...
@@ -48,9 +48,15 @@ sync_with_master;
select
*
from
t1
;
select
*
from
t1
;
--
replace_column
2
# 5 #
--
replace_column
2
# 5 #
show
binlog
events
from
98
;
show
binlog
events
from
98
;
#
# BUG19136: Crashing log-bin and uninitialized user variables in a derived table
# just to check nothing bad happens anymore
#
connection
master
;
connection
master
;
insert
into
t1
select
*
FROM
(
select
@
var1
union
select
@
var2
)
AS
t2
;
drop
table
t1
;
drop
table
t1
;
save_master_pos
;
save_master_pos
;
connection
slave
;
connection
slave
;
sync_with_master
;
sync_with_master
;
stop
slave
;
stop
slave
;
...
...
sql/item_func.cc
View file @
f384cfe3
...
@@ -3946,14 +3946,24 @@ int get_var_with_binlog(THD *thd, enum_sql_command sql_command,
...
@@ -3946,14 +3946,24 @@ int get_var_with_binlog(THD *thd, enum_sql_command sql_command,
sql_set_variables(), we could instead manually call check() and update();
sql_set_variables(), we could instead manually call check() and update();
this would save memory and time; but calling sql_set_variables() makes
this would save memory and time; but calling sql_set_variables() makes
one unique place to maintain (sql_set_variables()).
one unique place to maintain (sql_set_variables()).
Manipulation with lex is necessary since free_underlaid_joins
is going to release memory belonging to the main query.
*/
*/
List
<
set_var_base
>
tmp_var_list
;
List
<
set_var_base
>
tmp_var_list
;
LEX
*
sav_lex
=
thd
->
lex
,
lex_tmp
;
thd
->
lex
=
&
lex_tmp
;
lex_start
(
thd
,
NULL
,
0
);
tmp_var_list
.
push_back
(
new
set_var_user
(
new
Item_func_set_user_var
(
name
,
tmp_var_list
.
push_back
(
new
set_var_user
(
new
Item_func_set_user_var
(
name
,
new
Item_null
())));
new
Item_null
())));
/* Create the variable */
/* Create the variable */
if
(
sql_set_variables
(
thd
,
&
tmp_var_list
))
if
(
sql_set_variables
(
thd
,
&
tmp_var_list
))
{
thd
->
lex
=
sav_lex
;
goto
err
;
goto
err
;
}
thd
->
lex
=
sav_lex
;
if
(
!
(
var_entry
=
get_variable
(
&
thd
->
user_vars
,
name
,
0
)))
if
(
!
(
var_entry
=
get_variable
(
&
thd
->
user_vars
,
name
,
0
)))
goto
err
;
goto
err
;
}
}
...
...
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