mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge of mysql-trunk-bugfixing into mysql-trunk-merge.
This commit is contained in:
@ -352,6 +352,11 @@ public:
|
||||
*/
|
||||
virtual void dbug_dump(int indent, bool verbose)= 0;
|
||||
#endif
|
||||
|
||||
/*
|
||||
Returns a QUICK_SELECT with reverse order of to the index.
|
||||
*/
|
||||
virtual QUICK_SELECT_I *make_reverse(uint used_key_parts_arg) { return NULL; }
|
||||
};
|
||||
|
||||
|
||||
@ -437,6 +442,7 @@ public:
|
||||
#ifndef DBUG_OFF
|
||||
void dbug_dump(int indent, bool verbose);
|
||||
#endif
|
||||
QUICK_SELECT_I *make_reverse(uint used_key_parts_arg);
|
||||
private:
|
||||
/* Default copy ctor used by QUICK_SELECT_DESC */
|
||||
};
|
||||
@ -783,6 +789,10 @@ public:
|
||||
int get_next();
|
||||
bool reverse_sorted() { return 1; }
|
||||
int get_type() { return QS_TYPE_RANGE_DESC; }
|
||||
QUICK_SELECT_I *make_reverse(uint used_key_parts_arg)
|
||||
{
|
||||
return this; // is already reverse sorted
|
||||
}
|
||||
private:
|
||||
bool range_reads_after_key(QUICK_RANGE *range);
|
||||
int reset(void) { rev_it.rewind(); return QUICK_RANGE_SELECT::reset(); }
|
||||
@ -808,6 +818,7 @@ class SQL_SELECT :public Sql_alloc {
|
||||
SQL_SELECT();
|
||||
~SQL_SELECT();
|
||||
void cleanup();
|
||||
void set_quick(QUICK_SELECT_I *new_quick) { delete quick; quick= new_quick; }
|
||||
bool check_quick(THD *thd, bool force_quick_range, ha_rows limit)
|
||||
{
|
||||
key_map tmp;
|
||||
@ -834,7 +845,6 @@ public:
|
||||
QUICK_RANGE_SELECT *get_quick_select_for_ref(THD *thd, TABLE *table,
|
||||
struct st_table_ref *ref,
|
||||
ha_rows records);
|
||||
uint get_index_for_order(TABLE *table, ORDER *order, ha_rows limit);
|
||||
SQL_SELECT *make_select(TABLE *head, table_map const_tables,
|
||||
table_map read_tables, COND *conds,
|
||||
bool allow_null_cond, int *error);
|
||||
|
Reference in New Issue
Block a user