diff options
author | Sergey Glukhov <sergey.glukhov@oracle.com> | 2012-04-04 14:19:00 +0400 |
---|---|---|
committer | Sergey Glukhov <sergey.glukhov@oracle.com> | 2012-04-04 14:19:00 +0400 |
commit | ea1b0492a081f335809e1cae6b9fd7738e00ea02 (patch) | |
tree | 2756d3da962978b761031031abb721a5e508a2e3 /sql | |
parent | 46d848b8e1f3e800f2cd0adbc410e4a9cb9f88ca (diff) | |
parent | b5c690aa548ce7796d25f9df3f8ae056dcda1703 (diff) | |
download | mariadb-git-ea1b0492a081f335809e1cae6b9fd7738e00ea02.tar.gz |
5.1-security -> 5.5-security merge
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_select.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 50ae8916707..5d5a576c3b0 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -5890,6 +5890,7 @@ static bool create_ref_for_key(JOIN *join, JOIN_TAB *j, KEYUSE *org_keyuse, } keyuse++; } while (keyuse->table == table && keyuse->key == key); + DBUG_ASSERT(length > 0 && keyparts != 0); } /* not ftkey */ /* set up fieldref */ @@ -13698,6 +13699,9 @@ test_if_skip_sort_order(JOIN_TAB *tab,ORDER *order,ha_rows select_limit, DBUG_ENTER("test_if_skip_sort_order"); LINT_INIT(ref_key_parts); + /* Check that we are always called with first non-const table */ + DBUG_ASSERT(tab == tab->join->join_tab + tab->join->const_tables); + /* Keys disabled by ALTER TABLE ... DISABLE KEYS should have already been taken into account. @@ -13779,7 +13783,8 @@ test_if_skip_sort_order(JOIN_TAB *tab,ORDER *order,ha_rows select_limit, while (keyuse->key != new_ref_key && keyuse->table == tab->table) keyuse++; if (create_ref_for_key(tab->join, tab, keyuse, - tab->join->const_table_map)) + (tab->join->const_table_map | + OUTER_REF_TABLE_BIT))) DBUG_RETURN(0); pick_table_access_method(tab); |