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
533e0551
Commit
533e0551
authored
Apr 14, 2005
by
serg@serg.mylan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
TRUNCATE is always a transaction on itself. pretent we're in auto-commit mode
bug#8151
parent
8790645b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
8 additions
and
2 deletions
+8
-2
mysql-test/r/innodb.result
mysql-test/r/innodb.result
+1
-0
mysql-test/t/innodb.test
mysql-test/t/innodb.test
+1
-0
sql/sql_delete.cc
sql/sql_delete.cc
+6
-2
No files found.
mysql-test/r/innodb.result
View file @
533e0551
...
@@ -821,6 +821,7 @@ truncate table t1;
...
@@ -821,6 +821,7 @@ truncate table t1;
Can't execute the given command because you have active locked tables or an active transaction
Can't execute the given command because you have active locked tables or an active transaction
commit;
commit;
truncate table t1;
truncate table t1;
truncate table t1;
select * from t1;
select * from t1;
a
a
insert into t1 values(1),(2);
insert into t1 values(1),(2);
...
...
mysql-test/t/innodb.test
View file @
533e0551
...
@@ -528,6 +528,7 @@ insert into t1 values(1),(2);
...
@@ -528,6 +528,7 @@ insert into t1 values(1),(2);
truncate
table
t1
;
truncate
table
t1
;
commit
;
commit
;
truncate
table
t1
;
truncate
table
t1
;
truncate
table
t1
;
select
*
from
t1
;
select
*
from
t1
;
insert
into
t1
values
(
1
),(
2
);
insert
into
t1
values
(
1
),(
2
);
delete
from
t1
;
delete
from
t1
;
...
...
sql/sql_delete.cc
View file @
533e0551
...
@@ -590,8 +590,12 @@ int mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
...
@@ -590,8 +590,12 @@ int mysql_truncate(THD *thd, TABLE_LIST *table_list, bool dont_send_ok)
{
{
/* Probably InnoDB table */
/* Probably InnoDB table */
table_list
->
lock_type
=
TL_WRITE
;
table_list
->
lock_type
=
TL_WRITE
;
DBUG_RETURN
(
mysql_delete
(
thd
,
table_list
,
(
COND
*
)
0
,
(
ORDER
*
)
0
,
ulong
save_options
=
thd
->
options
;
HA_POS_ERROR
,
0
));
thd
->
options
&=
~
(
ulong
)
(
OPTION_BEGIN
|
OPTION_NOT_AUTOCOMMIT
);
int
res
=
mysql_delete
(
thd
,
table_list
,
(
COND
*
)
0
,
(
ORDER
*
)
0
,
HA_POS_ERROR
,
0
);
thd
->
options
=
save_options
;
DBUG_RETURN
(
res
);
}
}
if
(
lock_and_wait_for_table_name
(
thd
,
table_list
))
if
(
lock_and_wait_for_table_name
(
thd
,
table_list
))
DBUG_RETURN
(
-
1
);
DBUG_RETURN
(
-
1
);
...
...
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