Loading mysql-test/r/ndb_read_multi_range.result +104 −0 Original line number Diff line number Diff line Loading @@ -263,3 +263,107 @@ a b c d 10 10 10 10 drop table t2; drop table t1; CREATE TABLE t1 ( a int(11) NOT NULL, b int(11) NOT NULL, c datetime default NULL, PRIMARY KEY (a), KEY idx_bc (b,c) ) ENGINE=ndbcluster; INSERT INTO t1 VALUES (406989,67,'2006-02-23 17:08:46'), (150078,67,'2005-10-26 11:17:45'), (406993,67,'2006-02-27 11:20:57'), (245655,67,'2005-12-08 15:59:08'), (406994,67,'2006-02-27 11:26:46'), (256,67,NULL), (398341,67,'2006-02-20 04:48:44'), (254,67,NULL),(1120,67,NULL), (406988,67,'2006-02-23 17:07:22'), (255,67,NULL), (398340,67,'2006-02-20 04:38:53'),(406631,67,'2006-02-23 10:49:42'), (245653,67,'2005-12-08 15:59:07'),(406992,67,'2006-02-24 16:47:18'), (245654,67,'2005-12-08 15:59:08'),(406995,67,'2006-02-28 11:55:00'), (127261,67,'2005-10-13 12:17:58'),(406991,67,'2006-02-24 16:42:32'), (245652,67,'2005-12-08 15:58:27'),(398545,67,'2006-02-20 04:53:13'), (154504,67,'2005-10-28 11:53:01'),(9199,67,NULL),(1,67,'2006-02-23 15:01:35'), (223456,67,NULL),(4101,67,NULL),(1133,67,NULL), (406990,67,'2006-02-23 18:01:45'),(148815,67,'2005-10-25 15:34:17'), (148812,67,'2005-10-25 15:30:01'),(245651,67,'2005-12-08 15:58:27'), (154503,67,'2005-10-28 11:52:38'); create table t11 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 asc; create table t12 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 desc; create table t21 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 asc; create table t22 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 desc; select * from t11 order by 1,2,3; a b c 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL select * from t12 order by 1,2,3; a b c 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL select * from t21 order by 1,2,3; a b c 1 67 2006-02-23 15:01:35 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL 245651 67 2005-12-08 15:58:27 245652 67 2005-12-08 15:58:27 245653 67 2005-12-08 15:59:07 245654 67 2005-12-08 15:59:08 245655 67 2005-12-08 15:59:08 398340 67 2006-02-20 04:38:53 398341 67 2006-02-20 04:48:44 398545 67 2006-02-20 04:53:13 406631 67 2006-02-23 10:49:42 406988 67 2006-02-23 17:07:22 406989 67 2006-02-23 17:08:46 406990 67 2006-02-23 18:01:45 406991 67 2006-02-24 16:42:32 406992 67 2006-02-24 16:47:18 406993 67 2006-02-27 11:20:57 406994 67 2006-02-27 11:26:46 406995 67 2006-02-28 11:55:00 select * from t22 order by 1,2,3; a b c 1 67 2006-02-23 15:01:35 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL 245651 67 2005-12-08 15:58:27 245652 67 2005-12-08 15:58:27 245653 67 2005-12-08 15:59:07 245654 67 2005-12-08 15:59:08 245655 67 2005-12-08 15:59:08 398340 67 2006-02-20 04:38:53 398341 67 2006-02-20 04:48:44 398545 67 2006-02-20 04:53:13 406631 67 2006-02-23 10:49:42 406988 67 2006-02-23 17:07:22 406989 67 2006-02-23 17:08:46 406990 67 2006-02-23 18:01:45 406991 67 2006-02-24 16:42:32 406992 67 2006-02-24 16:47:18 406993 67 2006-02-27 11:20:57 406994 67 2006-02-27 11:26:46 406995 67 2006-02-28 11:55:00 DROP TABLE t1, t11, t12, t21, t22; mysql-test/t/ndb_read_multi_range.test +38 −0 Original line number Diff line number Diff line Loading @@ -200,3 +200,41 @@ select * from t2 order by a; drop table t2; drop table t1; # bug17729 CREATE TABLE t1 ( a int(11) NOT NULL, b int(11) NOT NULL, c datetime default NULL, PRIMARY KEY (a), KEY idx_bc (b,c) ) ENGINE=ndbcluster; INSERT INTO t1 VALUES (406989,67,'2006-02-23 17:08:46'), (150078,67,'2005-10-26 11:17:45'), (406993,67,'2006-02-27 11:20:57'), (245655,67,'2005-12-08 15:59:08'), (406994,67,'2006-02-27 11:26:46'), (256,67,NULL), (398341,67,'2006-02-20 04:48:44'), (254,67,NULL),(1120,67,NULL), (406988,67,'2006-02-23 17:07:22'), (255,67,NULL), (398340,67,'2006-02-20 04:38:53'),(406631,67,'2006-02-23 10:49:42'), (245653,67,'2005-12-08 15:59:07'),(406992,67,'2006-02-24 16:47:18'), (245654,67,'2005-12-08 15:59:08'),(406995,67,'2006-02-28 11:55:00'), (127261,67,'2005-10-13 12:17:58'),(406991,67,'2006-02-24 16:42:32'), (245652,67,'2005-12-08 15:58:27'),(398545,67,'2006-02-20 04:53:13'), (154504,67,'2005-10-28 11:53:01'),(9199,67,NULL),(1,67,'2006-02-23 15:01:35'), (223456,67,NULL),(4101,67,NULL),(1133,67,NULL), (406990,67,'2006-02-23 18:01:45'),(148815,67,'2005-10-25 15:34:17'), (148812,67,'2005-10-25 15:30:01'),(245651,67,'2005-12-08 15:58:27'), (154503,67,'2005-10-28 11:52:38'); create table t11 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 asc; create table t12 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 desc; create table t21 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 asc; create table t22 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 desc; select * from t11 order by 1,2,3; select * from t12 order by 1,2,3; select * from t21 order by 1,2,3; select * from t22 order by 1,2,3; DROP TABLE t1, t11, t12, t21, t22; sql/ha_ndbcluster.cc +3 −1 Original line number Diff line number Diff line Loading @@ -6081,7 +6081,9 @@ ha_ndbcluster::setup_recattr(const NdbRecAttr* curr) if ((* value).ptr) { DBUG_ASSERT(curr != 0); (* value).rec= curr; NdbValue* val= m_value + curr->getColumn()->getColumnNo(); DBUG_ASSERT(val->ptr); val->rec= curr; curr= curr->next(); } } Loading Loading
mysql-test/r/ndb_read_multi_range.result +104 −0 Original line number Diff line number Diff line Loading @@ -263,3 +263,107 @@ a b c d 10 10 10 10 drop table t2; drop table t1; CREATE TABLE t1 ( a int(11) NOT NULL, b int(11) NOT NULL, c datetime default NULL, PRIMARY KEY (a), KEY idx_bc (b,c) ) ENGINE=ndbcluster; INSERT INTO t1 VALUES (406989,67,'2006-02-23 17:08:46'), (150078,67,'2005-10-26 11:17:45'), (406993,67,'2006-02-27 11:20:57'), (245655,67,'2005-12-08 15:59:08'), (406994,67,'2006-02-27 11:26:46'), (256,67,NULL), (398341,67,'2006-02-20 04:48:44'), (254,67,NULL),(1120,67,NULL), (406988,67,'2006-02-23 17:07:22'), (255,67,NULL), (398340,67,'2006-02-20 04:38:53'),(406631,67,'2006-02-23 10:49:42'), (245653,67,'2005-12-08 15:59:07'),(406992,67,'2006-02-24 16:47:18'), (245654,67,'2005-12-08 15:59:08'),(406995,67,'2006-02-28 11:55:00'), (127261,67,'2005-10-13 12:17:58'),(406991,67,'2006-02-24 16:42:32'), (245652,67,'2005-12-08 15:58:27'),(398545,67,'2006-02-20 04:53:13'), (154504,67,'2005-10-28 11:53:01'),(9199,67,NULL),(1,67,'2006-02-23 15:01:35'), (223456,67,NULL),(4101,67,NULL),(1133,67,NULL), (406990,67,'2006-02-23 18:01:45'),(148815,67,'2005-10-25 15:34:17'), (148812,67,'2005-10-25 15:30:01'),(245651,67,'2005-12-08 15:58:27'), (154503,67,'2005-10-28 11:52:38'); create table t11 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 asc; create table t12 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 desc; create table t21 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 asc; create table t22 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 desc; select * from t11 order by 1,2,3; a b c 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL select * from t12 order by 1,2,3; a b c 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL select * from t21 order by 1,2,3; a b c 1 67 2006-02-23 15:01:35 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL 245651 67 2005-12-08 15:58:27 245652 67 2005-12-08 15:58:27 245653 67 2005-12-08 15:59:07 245654 67 2005-12-08 15:59:08 245655 67 2005-12-08 15:59:08 398340 67 2006-02-20 04:38:53 398341 67 2006-02-20 04:48:44 398545 67 2006-02-20 04:53:13 406631 67 2006-02-23 10:49:42 406988 67 2006-02-23 17:07:22 406989 67 2006-02-23 17:08:46 406990 67 2006-02-23 18:01:45 406991 67 2006-02-24 16:42:32 406992 67 2006-02-24 16:47:18 406993 67 2006-02-27 11:20:57 406994 67 2006-02-27 11:26:46 406995 67 2006-02-28 11:55:00 select * from t22 order by 1,2,3; a b c 1 67 2006-02-23 15:01:35 254 67 NULL 255 67 NULL 256 67 NULL 1120 67 NULL 1133 67 NULL 4101 67 NULL 9199 67 NULL 223456 67 NULL 245651 67 2005-12-08 15:58:27 245652 67 2005-12-08 15:58:27 245653 67 2005-12-08 15:59:07 245654 67 2005-12-08 15:59:08 245655 67 2005-12-08 15:59:08 398340 67 2006-02-20 04:38:53 398341 67 2006-02-20 04:48:44 398545 67 2006-02-20 04:53:13 406631 67 2006-02-23 10:49:42 406988 67 2006-02-23 17:07:22 406989 67 2006-02-23 17:08:46 406990 67 2006-02-23 18:01:45 406991 67 2006-02-24 16:42:32 406992 67 2006-02-24 16:47:18 406993 67 2006-02-27 11:20:57 406994 67 2006-02-27 11:26:46 406995 67 2006-02-28 11:55:00 DROP TABLE t1, t11, t12, t21, t22;
mysql-test/t/ndb_read_multi_range.test +38 −0 Original line number Diff line number Diff line Loading @@ -200,3 +200,41 @@ select * from t2 order by a; drop table t2; drop table t1; # bug17729 CREATE TABLE t1 ( a int(11) NOT NULL, b int(11) NOT NULL, c datetime default NULL, PRIMARY KEY (a), KEY idx_bc (b,c) ) ENGINE=ndbcluster; INSERT INTO t1 VALUES (406989,67,'2006-02-23 17:08:46'), (150078,67,'2005-10-26 11:17:45'), (406993,67,'2006-02-27 11:20:57'), (245655,67,'2005-12-08 15:59:08'), (406994,67,'2006-02-27 11:26:46'), (256,67,NULL), (398341,67,'2006-02-20 04:48:44'), (254,67,NULL),(1120,67,NULL), (406988,67,'2006-02-23 17:07:22'), (255,67,NULL), (398340,67,'2006-02-20 04:38:53'),(406631,67,'2006-02-23 10:49:42'), (245653,67,'2005-12-08 15:59:07'),(406992,67,'2006-02-24 16:47:18'), (245654,67,'2005-12-08 15:59:08'),(406995,67,'2006-02-28 11:55:00'), (127261,67,'2005-10-13 12:17:58'),(406991,67,'2006-02-24 16:42:32'), (245652,67,'2005-12-08 15:58:27'),(398545,67,'2006-02-20 04:53:13'), (154504,67,'2005-10-28 11:53:01'),(9199,67,NULL),(1,67,'2006-02-23 15:01:35'), (223456,67,NULL),(4101,67,NULL),(1133,67,NULL), (406990,67,'2006-02-23 18:01:45'),(148815,67,'2005-10-25 15:34:17'), (148812,67,'2005-10-25 15:30:01'),(245651,67,'2005-12-08 15:58:27'), (154503,67,'2005-10-28 11:52:38'); create table t11 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 asc; create table t12 select * from t1 where b = 67 AND (c IS NULL OR c > NOW()) order by 3 desc; create table t21 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 asc; create table t22 select * from t1 where b = 67 AND (c IS NULL OR c > '2005-12-08') order by 3 desc; select * from t11 order by 1,2,3; select * from t12 order by 1,2,3; select * from t21 order by 1,2,3; select * from t22 order by 1,2,3; DROP TABLE t1, t11, t12, t21, t22;
sql/ha_ndbcluster.cc +3 −1 Original line number Diff line number Diff line Loading @@ -6081,7 +6081,9 @@ ha_ndbcluster::setup_recattr(const NdbRecAttr* curr) if ((* value).ptr) { DBUG_ASSERT(curr != 0); (* value).rec= curr; NdbValue* val= m_value + curr->getColumn()->getColumnNo(); DBUG_ASSERT(val->ptr); val->rec= curr; curr= curr->next(); } } Loading