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
c76ab0a4
Commit
c76ab0a4
authored
Mar 28, 2006
by
mskold@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix for Bug #15722 Engine_condition_pushdown fails when using blobs(text)
parent
df80048d
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
3 deletions
+32
-3
mysql-test/r/ndb_condition_pushdown.result
mysql-test/r/ndb_condition_pushdown.result
+17
-1
mysql-test/t/ndb_condition_pushdown.test
mysql-test/t/ndb_condition_pushdown.test
+11
-1
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+4
-1
No files found.
mysql-test/r/ndb_condition_pushdown.result
View file @
c76ab0a4
...
@@ -1766,5 +1766,21 @@ select * from t3 left join t4 on t4.attr2 = t3.attr2 where t4.attr1 > 1 and t4.a
...
@@ -1766,5 +1766,21 @@ select * from t3 left join t4 on t4.attr2 = t3.attr2 where t4.attr1 > 1 and t4.a
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 t3 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort
1 SIMPLE t3 ALL NULL NULL NULL NULL 6 Using temporary; Using filesort
1 SIMPLE t4 ALL NULL NULL NULL NULL 6 Using where
1 SIMPLE t4 ALL NULL NULL NULL NULL 6 Using where
create table t5 (a int primary key auto_increment, b tinytext not null)
engine = ndb;
insert into t5 (b) values ('jonas'), ('jensing'), ('johan');
set engine_condition_pushdown = off;
select * from t5 where b like '%jo%' order by a;
a b
1 jonas
3 johan
set engine_condition_pushdown = on;
explain select * from t5 where b like '%jo%';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
select * from t5 where b like '%jo%' order by a;
a b
1 jonas
3 johan
set engine_condition_pushdown = @old_ecpd;
set engine_condition_pushdown = @old_ecpd;
DROP TABLE t1,t2,t3,t4;
DROP TABLE t1,t2,t3,t4
,t5
;
mysql-test/t/ndb_condition_pushdown.test
View file @
c76ab0a4
...
@@ -1639,5 +1639,15 @@ select * from t2 where (attr1 < 2) = (attr2 < 2) order by pk1;
...
@@ -1639,5 +1639,15 @@ select * from t2 where (attr1 < 2) = (attr2 < 2) order by pk1;
explain
explain
select
*
from
t3
left
join
t4
on
t4
.
attr2
=
t3
.
attr2
where
t4
.
attr1
>
1
and
t4
.
attr3
<
5
or
t4
.
attr1
is
null
order
by
t4
.
pk1
;
select
*
from
t3
left
join
t4
on
t4
.
attr2
=
t3
.
attr2
where
t4
.
attr1
>
1
and
t4
.
attr3
<
5
or
t4
.
attr1
is
null
order
by
t4
.
pk1
;
# bug#15722
create
table
t5
(
a
int
primary
key
auto_increment
,
b
tinytext
not
null
)
engine
=
ndb
;
insert
into
t5
(
b
)
values
(
'jonas'
),
(
'jensing'
),
(
'johan'
);
set
engine_condition_pushdown
=
off
;
select
*
from
t5
where
b
like
'%jo%'
order
by
a
;
set
engine_condition_pushdown
=
on
;
explain
select
*
from
t5
where
b
like
'%jo%'
;
select
*
from
t5
where
b
like
'%jo%'
order
by
a
;
set
engine_condition_pushdown
=
@
old_ecpd
;
set
engine_condition_pushdown
=
@
old_ecpd
;
DROP
TABLE
t1
,
t2
,
t3
,
t4
;
DROP
TABLE
t1
,
t2
,
t3
,
t4
,
t5
;
sql/ha_ndbcluster.cc
View file @
c76ab0a4
...
@@ -6587,7 +6587,10 @@ void ndb_serialize_cond(const Item *item, void *arg)
...
@@ -6587,7 +6587,10 @@ void ndb_serialize_cond(const Item *item, void *arg)
context
->
expecting_field_result
(
INT_RESULT
))
context
->
expecting_field_result
(
INT_RESULT
))
:
true
))
&&
:
true
))
&&
// Bit fields no yet supported in scan filter
// Bit fields no yet supported in scan filter
type
!=
MYSQL_TYPE_BIT
)
type
!=
MYSQL_TYPE_BIT
&&
// No BLOB support in scan filter
type
!=
MYSQL_TYPE_TINY_BLOB
&&
type
!=
MYSQL_TYPE_BLOB
)
{
{
const
NDBCOL
*
col
=
tab
->
getColumn
(
field
->
field_name
);
const
NDBCOL
*
col
=
tab
->
getColumn
(
field
->
field_name
);
DBUG_ASSERT
(
col
);
DBUG_ASSERT
(
col
);
...
...
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