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
85de2223
Commit
85de2223
authored
Mar 18, 2003
by
monty@narttu.mysql.fi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix of 'halloween bug' with UPDATE of InnoDB tables.
parent
d9dfba6e
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
31 additions
and
0 deletions
+31
-0
mysql-test/r/innodb.result
mysql-test/r/innodb.result
+10
-0
mysql-test/t/innodb.test
mysql-test/t/innodb.test
+11
-0
sql/key.cc
sql/key.cc
+8
-0
strings/strto.c
strings/strto.c
+2
-0
No files found.
mysql-test/r/innodb.result
View file @
85de2223
...
...
@@ -501,3 +501,13 @@ table type possible_keys key key_len ref rows Extra
t1 ALL NULL NULL NULL NULL 4
Field Type Null Key Default Extra
testint int(11) 1
a b
1 1
102 2
103 3
4 4
5 5
6 6
7 7
8 8
9 9
mysql-test/t/innodb.test
View file @
85de2223
...
...
@@ -537,3 +537,14 @@ drop table t1;
create
table
t1
(
testint
int
not
null
default
1
)
type
=
innodb
;
desc
t1
;
drop
table
t1
;
#
# Check update with conflicting key
#
CREATE
TABLE
t1
(
a
int
not
null
primary
key
,
b
int
not
null
,
unique
(
b
))
type
=
innodb
;
INSERT
INTO
t1
values
(
1
,
1
),(
2
,
2
),(
3
,
3
),(
4
,
4
),(
5
,
5
),(
6
,
6
),(
7
,
7
),(
8
,
8
),(
9
,
9
);
# We need the a < 1000 test here to quard against the halloween problems
UPDATE
t1
set
a
=
a
+
100
where
b
between
2
and
3
and
a
<
1000
;
SELECT
*
from
t1
;
drop
table
t1
;
sql/key.cc
View file @
85de2223
...
...
@@ -269,5 +269,13 @@ bool check_if_key_used(TABLE *table, uint idx, List<Item> &fields)
return
1
;
}
}
/*
If table handler has primary key as part of the index, check that primary
key is not updated
*/
if
(
idx
!=
table
->
primary_key
&&
table
->
primary_key
<
MAX_KEY
&&
(
table
->
file
->
option_flag
()
&
HA_PRIMARY_KEY_IN_READ_INDEX
))
return
check_if_key_used
(
table
,
table
->
primary_key
,
fields
);
return
0
;
}
strings/strto.c
View file @
85de2223
...
...
@@ -36,6 +36,8 @@
it can be compiled with the UNSIGNED and/or LONGLONG flag set
*/
#define strtoll glob_strtoll
/* Fix for True64 */
#include <global.h>
#include "m_string.h"
#include "m_ctype.h"
...
...
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