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
ac52c977
Commit
ac52c977
authored
Apr 05, 2006
by
ingo@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-bug5390
parents
562386b9
692add61
Changes
4
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
228 additions
and
121 deletions
+228
-121
mysql-test/r/lock.result
mysql-test/r/lock.result
+11
-0
mysql-test/t/lock.test
mysql-test/t/lock.test
+18
-0
sql/lock.cc
sql/lock.cc
+193
-118
sql/table.h
sql/table.h
+6
-3
No files found.
mysql-test/r/lock.result
View file @
ac52c977
...
@@ -47,6 +47,17 @@ unlock tables;
...
@@ -47,6 +47,17 @@ unlock tables;
lock tables t1 write, t1 as t1_alias read;
lock tables t1 write, t1 as t1_alias read;
insert into t1 select index1,nr from t1 as t1_alias;
insert into t1 select index1,nr from t1 as t1_alias;
drop table t1,t2;
drop table t1,t2;
create table t1 (c1 int);
create table t2 (c1 int);
create table t3 (c1 int);
lock tables t1 write, t2 write, t3 write;
drop table t2, t3, t1;
create table t1 (c1 int);
create table t2 (c1 int);
create table t3 (c1 int);
lock tables t1 write, t2 write, t3 write, t1 as t4 read;
alter table t2 add column c2 int;
drop table t1, t2, t3;
create table t1 ( a int(11) not null auto_increment, primary key(a));
create table t1 ( a int(11) not null auto_increment, primary key(a));
create table t2 ( a int(11) not null auto_increment, primary key(a));
create table t2 ( a int(11) not null auto_increment, primary key(a));
lock tables t1 write, t2 read;
lock tables t1 write, t2 read;
...
...
mysql-test/t/lock.test
View file @
ac52c977
...
@@ -61,6 +61,24 @@ insert into t1 select index1,nr from t1 as t1_alias;
...
@@ -61,6 +61,24 @@ insert into t1 select index1,nr from t1 as t1_alias;
drop
table
t1
,
t2
;
drop
table
t1
,
t2
;
#
#
# BUG#5390 - problems with merge tables
# Supplement test for the after-fix optimization
# Check that a dropped table is correctly removed from a lock.
create
table
t1
(
c1
int
);
create
table
t2
(
c1
int
);
create
table
t3
(
c1
int
);
lock
tables
t1
write
,
t2
write
,
t3
write
;
# This removes one table after the other from the lock.
drop
table
t2
,
t3
,
t1
;
#
# Check that a lock merge works.
create
table
t1
(
c1
int
);
create
table
t2
(
c1
int
);
create
table
t3
(
c1
int
);
lock
tables
t1
write
,
t2
write
,
t3
write
,
t1
as
t4
read
;
alter
table
t2
add
column
c2
int
;
drop
table
t1
,
t2
,
t3
;
# Bug7241 - Invalid response when DELETE .. USING and LOCK TABLES used.
# Bug7241 - Invalid response when DELETE .. USING and LOCK TABLES used.
#
#
create
table
t1
(
a
int
(
11
)
not
null
auto_increment
,
primary
key
(
a
));
create
table
t1
(
a
int
(
11
)
not
null
auto_increment
,
primary
key
(
a
));
...
...
sql/lock.cc
View file @
ac52c977
This diff is collapsed.
Click to expand it.
sql/table.h
View file @
ac52c977
...
@@ -237,6 +237,9 @@ struct st_table {
...
@@ -237,6 +237,9 @@ struct st_table {
timestamp_auto_set_type
timestamp_field_type
;
timestamp_auto_set_type
timestamp_field_type
;
table_map
map
;
/* ID bit of table (1,2,4,8,16...) */
table_map
map
;
/* ID bit of table (1,2,4,8,16...) */
uint
lock_position
;
/* Position in MYSQL_LOCK.table */
uint
lock_data_start
;
/* Start pos. in MYSQL_LOCK.locks */
uint
lock_count
;
/* Number of locks */
uint
tablenr
,
used_fields
;
uint
tablenr
,
used_fields
;
uint
temp_pool_slot
;
/* Used by intern temp tables */
uint
temp_pool_slot
;
/* Used by intern temp tables */
uint
status
;
/* What's in record[0] */
uint
status
;
/* What's in record[0] */
...
...
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