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
28d3ee65
Commit
28d3ee65
authored
Dec 26, 2006
by
svoj@mysql.com/june.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
After merge fix.
parent
838fe3a0
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
6 deletions
+22
-6
mysql-test/r/index_merge_myisam.result
mysql-test/r/index_merge_myisam.result
+12
-1
sql/opt_range.cc
sql/opt_range.cc
+10
-5
No files found.
mysql-test/r/index_merge_myisam.result
View file @
28d3ee65
...
@@ -286,7 +286,7 @@ NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
...
@@ -286,7 +286,7 @@ NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
explain select * from (select * from t1 where key1 = 3 or key2 =3) as Z where key8 >5;
explain select * from (select * from t1 where key1 = 3 or key2 =3) as Z where key8 >5;
id select_type table type possible_keys key key_len ref rows Extra
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY <derived2> system NULL NULL NULL NULL 1
1 PRIMARY <derived2> system NULL NULL NULL NULL 1
2 DERIVED t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
2 DERIVED t1 index_merge i1,i2 i1,i2 4,4 NULL 2 Using union(i1,i2); Using where
; Using index
create table t3 like t0;
create table t3 like t0;
insert into t3 select * from t0;
insert into t3 select * from t0;
alter table t3 add key9 int not null, add index i9(key9);
alter table t3 add key9 int not null, add index i9(key9);
...
@@ -696,6 +696,17 @@ explain select a from t2 where a='ab';
...
@@ -696,6 +696,17 @@ explain select a from t2 where a='ab';
id select_type table type possible_keys key key_len ref rows Extra
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ref a a 6 const 1 Using where
1 SIMPLE t2 ref a a 6 const 1 Using where
drop table t2;
drop table t2;
CREATE TABLE t1(c1 INT, c2 INT DEFAULT 0, c3 CHAR(255) DEFAULT '',
KEY(c1), KEY(c2), KEY(c3));
INSERT INTO t1(c1) VALUES(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),
(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0),(0);
INSERT INTO t1 VALUES(0,0,0);
CREATE TABLE t2(c1 int);
INSERT INTO t2 VALUES(1);
DELETE t1 FROM t1,t2 WHERE t1.c1=0 AND t1.c2=0;
SELECT * FROM t1;
c1 c2 c3
DROP TABLE t1,t2;
#---------------- Index merge test 2 -------------------------------------------
#---------------- Index merge test 2 -------------------------------------------
SET SESSION STORAGE_ENGINE = MyISAM;
SET SESSION STORAGE_ENGINE = MyISAM;
drop table if exists t1,t2;
drop table if exists t1,t2;
...
...
sql/opt_range.cc
View file @
28d3ee65
...
@@ -1002,6 +1002,11 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT()
...
@@ -1002,6 +1002,11 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT()
if
(
file
)
if
(
file
)
{
{
range_end
();
range_end
();
if
(
head
->
key_read
)
{
head
->
key_read
=
0
;
file
->
extra
(
HA_EXTRA_NO_KEYREAD
);
}
if
(
free_file
)
if
(
free_file
)
{
{
DBUG_PRINT
(
"info"
,
(
"Freeing separate handler 0x%lx (free: %d)"
,
(
long
)
file
,
DBUG_PRINT
(
"info"
,
(
"Freeing separate handler 0x%lx (free: %d)"
,
(
long
)
file
,
...
@@ -1010,10 +1015,6 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT()
...
@@ -1010,10 +1015,6 @@ QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT()
file
->
close
();
file
->
close
();
delete
file
;
delete
file
;
}
}
else
{
file
->
extra
(
HA_EXTRA_NO_KEYREAD
);
}
}
}
delete_dynamic
(
&
ranges
);
/* ranges are allocated in alloc */
delete_dynamic
(
&
ranges
);
/* ranges are allocated in alloc */
free_root
(
&
alloc
,
MYF
(
0
));
free_root
(
&
alloc
,
MYF
(
0
));
...
@@ -1195,7 +1196,11 @@ end:
...
@@ -1195,7 +1196,11 @@ end:
org_file
=
head
->
file
;
org_file
=
head
->
file
;
head
->
file
=
file
;
head
->
file
=
file
;
/* We don't have to set 'head->keyread' here as the 'file' is unique */
/* We don't have to set 'head->keyread' here as the 'file' is unique */
head
->
mark_columns_used_by_index
(
index
);
if
(
!
head
->
no_keyread
)
{
head
->
key_read
=
1
;
head
->
mark_columns_used_by_index
(
index
);
}
head
->
prepare_for_position
();
head
->
prepare_for_position
();
head
->
file
=
org_file
;
head
->
file
=
org_file
;
bitmap_copy
(
&
column_bitmap
,
head
->
read_set
);
bitmap_copy
(
&
column_bitmap
,
head
->
read_set
);
...
...
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