From: Ole John Aske Date: October 26 2010 10:44am Subject: bzr commit into mysql-5.1-telco-7.0-spj-scan-vs-scan branch (ole.john.aske:3325) List-Archive: http://lists.mysql.com/commits/121912 Message-Id: <20101026104420.790F521D@fimafeng09.norway.sun.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3052081852941500029==" --===============3052081852941500029== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///net/fimafeng09/export/home/tmp/oleja/mysql/mysql-5.1-telco-7.0-spj-scan-scan/ based on revid:ole.john.aske@stripped 3325 Ole John Aske 2010-10-26 spj-svs: 1) Prevent EXPLAIN EXTENDED from reporting single table queries as non-pushable. 2) Updated ndb_gis.result as a result of more EXPLAIN EXTENDED output. modified: mysql-test/suite/ndb/r/ndb_gis.result sql/ha_ndbcluster.cc === modified file 'mysql-test/suite/ndb/r/ndb_gis.result' --- a/mysql-test/suite/ndb/r/ndb_gis.result 2010-07-14 12:40:14 +0000 +++ b/mysql-test/suite/ndb/r/ndb_gis.result 2010-10-26 10:44:16 +0000 @@ -406,6 +406,8 @@ id select_type table type possible_keys 1 SIMPLE g1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort 1 SIMPLE g2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer Warnings: +Note 1644 Table g1 not pushable, 'read_set' contain BLOB columns +Note 1644 Table g2 not pushable, 'read_set' contain BLOB columns Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid` DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; CREATE TABLE t1 ( @@ -958,6 +960,8 @@ id select_type table type possible_keys 1 SIMPLE g1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort 1 SIMPLE g2 ALL NULL NULL NULL NULL 2 100.00 Using join buffer Warnings: +Note 1644 Table g1 not pushable, 'read_set' contain BLOB columns +Note 1644 Table g2 not pushable, 'read_set' contain BLOB columns Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid` DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry; CREATE TABLE t1 ( === modified file 'sql/ha_ndbcluster.cc' --- a/sql/ha_ndbcluster.cc 2010-10-26 09:42:11 +0000 +++ b/sql/ha_ndbcluster.cc 2010-10-26 10:44:16 +0000 @@ -466,7 +466,9 @@ public: ndb_pushed_builder_ctx(AQP::Join_plan& plan) : m_plan(plan), m_join_root(), m_join_scope(), m_const_scope() - { init_pushability(); + { + if (plan.get_access_count() > 1) + init_pushability(); } void set_root(const AQP::Table_access* const join_root) @@ -550,7 +552,7 @@ private: struct pushed_tables { pushed_tables() : - m_maybe_pushable(PUSHABLE_AS_CHILD | PUSHABLE_AS_PARENT), + m_maybe_pushable(0), m_parent(MAX_TABLES), m_ancestors(), m_last_scan_descendant(MAX_TABLES), --===============3052081852941500029== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/ole.john.aske@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: ole.john.aske@stripped\ # 3jmn7rbtja51u86u # target_branch: file:///net/fimafeng09/export/home/tmp/oleja/mysql\ # /mysql-5.1-telco-7.0-spj-scan-scan/ # testament_sha1: 11de9228ca32af0580be5b67d5ea4b006dd79590 # timestamp: 2010-10-26 12:44:20 +0200 # source_branch: bzr+ssh://oaske@stripped/bzrroot/server\ # /mysql-5.1-telco-7.0-spj/ # base_revision_id: ole.john.aske@stripped\ # e4762cj6kd8ks6lv # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWaRkad0AAnPfgFAwUOf//3Y1 xkC////4UAVu7eGgNc5nVOgKASiEp6einoeinpkPUnqA2poAABoNAcwmATACYTCaYAABMmmgYSk1 NpGqeU8pkepsoaDID1GnqD1ANANAkVTZU9NT0nlNHomjTRoaaHqGgZANNNqASSJpo1PQE0aCaZNG ptKZiQYmjQZMjk6gpQxRNefE1vrs+rFrjNRXbJlYmjPJLMUGRESmMzNDsMr2IwjQv5ikBuoKdGEz lIxtsNPsGuEvBkpvylDsj5VmTZcK4rZWcZbKUKZLxzy17rgzgxp1aJA9bcox9xjNvBslGg/69nJr cwM01i6X3R/M15BnYjVRCUNANrteR4+jrZP7IhaSMkLqB9T285hwOdXa8/2j2kj6v1Y1US46MJeN WjQhRV8UJ7IXMNg+2g3EtvjERcym7ju84dgQYSZChscJPHzrMSkpAcTG0zgWOByKVBvq33sSq8Do 8gF9fSSF7bRwKwDYdnS/UFdUsJXklFNE4uKuJdGE4QiMY/3XmfUQAhgFFlLGrHt0lCnSXjFZcSv5 mp9AMawPxgO2kqKPiEmQri4KrC2ujMSq7BxQVGWl6LvPKwiHA8ZvPAxtjVAowmb4UV1NO+0mSlE6 qtS22y3DHM4ENiDUU5hY0mycPokTHxZOZ5EBxcVYBc4KCkBpFQzd1QcYDk2Nn49hblhGksOwCE4D tTWrYOLLg5u3QNPfE4mBs102gOKdmGlC0MaS4eDGwprFdYYjYxCaM5EjYeIbQ35gXGBufbhi3fPy vhoKSKMCjLS8HlNeo3Sc39QGkpoiuODokXOKLbd4CWDYtnUsrnyKETIoB+gvdrIYR1EYkwxKc2VE yJPfK2RbNyrkON20ttojIDlcVVMi3M6/JXcl4nGb5dRk9SXh5pULUQ+wuQbTbkD6WghnLCIah2GM NZMbIXAzaiZxgCwDJmzhZIYkSt3OkitC7cBkNbKPE7LwJuK5kVltCKif2jgQSpDYzHJjZCIX1i1d TLGdE2jBBZmbHGrz1+RiPmGk9xJFDL5b7wXKYHNBJepo8+QOmUFm4eYGSs9+jDdviH6RfFyFzUDs 3hoEtTgutKjKWVNMKlRAOmeUG94PwIQC6QC1trkUZJ3VHcDcNSQjR8/lWYHdysOAR+DPKOp0LULZ kYM68uQddSF95U/ilrKRc3huLnhpFGcdWBdr3YTvgioqDEvzc3OXLkY7otWiIbXCoR8hxCPdgHf3 6cdptNLggyvqIFJJZY/Y3HiQO7c8sG4kH5kFAO0XWw6hDE8cdUB4hYMpaSo6TCJVJcao4iealDkj rxLnMu6JxL+sMkW0Y/b6cNVMETOe8OSNXTw8qhu87QvAbiByQnVN4BsKxKW0hwR2HkHiuQVIvcF7 fPocka2FNC70KhHLfkKydIRWQOEpYu44rTM4WmrXV6AWF4becpKfo7/vZb5MFhU9CZ1wDKQ+CHeU TAIU0xGORS6pGw13elQce3JlMGUmBlHPXU+f32IWsPoakw7rWFTJLR0YPV4UHnvQtiLr10HqQfQM paaDiV5iuIYMMH4gq98Tz23bo18TQHbjfd6Fge4nV/lHOelFwe42IK8HKBJYFtKfM2tNXbBWyfad hOr1b3ro5VRMRlEL6GzCRmGeuxpFWNgPcnG1LHQh5/liFIPPj1OrM05t0Wm4LlBFj0OpnT6moGpB 7hqvA+BGmBjuDVqoB2gKIRnBZWVg3vpr8rxuYGkki1YtBgtJJcCHxA2vo8a8aHIvC53FJ6Z/r8KA zuWDkYFcjrZyNFRMrSr2MZ0G0rkuZbkSLS2Waajd/4u5IpwoSFIyNO6A --===============3052081852941500029==--