Below is the list of changes that have just been committed into a local
5.0 repository of psergey. When psergey does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet
1.2028 05/09/30 14:20:15 sergefp@stripped +3 -0
BUG#13081: Disable ROR-index_merge for NDB tables (by adding a
HA_KEY_SCAN_NOT_ROR index flag) as NDB index scans are not guaranteed to be ROR
scans.
sql/opt_range.cc
1.190 05/09/30 14:20:11 sergefp@stripped +2 -0
BUG#13081: Disable ROR-index_merge for NDB tables (by adding a
HA_KEY_SCAN_NOT_ROR index flag) as NDB index scans are not guaranteed to be ROR
scans.
sql/handler.h
1.155 05/09/30 14:20:11 sergefp@stripped +7 -0
BUG#13081: Disable ROR-index_merge for NDB tables (by adding a
HA_KEY_SCAN_NOT_ROR index flag) as NDB index scans are not guaranteed to be ROR
scans.
sql/ha_ndbcluster.cc
1.210 05/09/30 14:20:10 sergefp@stripped +2 -1
BUG#13081: Disable ROR-index_merge for NDB tables (by adding a
HA_KEY_SCAN_NOT_ROR index flag) as NDB index scans are not guaranteed to be ROR
scans.
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: sergefp
# Host: newbox.mylan
# Root: /home/psergey/mysql-5.0-sept30-test
--- 1.154/sql/handler.h 2005-09-23 03:58:04 +04:00
+++ 1.155/sql/handler.h 2005-09-30 14:20:11 +04:00
@@ -98,6 +98,13 @@
#define HA_ONLY_WHOLE_INDEX 16 /* Can't use part key searches */
#define HA_KEYREAD_ONLY 64 /* Support HA_EXTRA_KEYREAD */
+/*
+ Index scan will not return records in rowid order. Not guaranteed to be
+ set for unordered (e.g. HASH) indexes.
+*/
+#define HA_KEY_SCAN_NOT_ROR 128
+
+
/* operations for disable/enable indexes */
#define HA_KEY_SWITCH_NONUNIQ 0
#define HA_KEY_SWITCH_ALL 1
--- 1.189/sql/opt_range.cc 2005-09-21 21:36:11 +04:00
+++ 1.190/sql/opt_range.cc 2005-09-30 14:20:11 +04:00
@@ -5117,6 +5117,8 @@
if (cpk_scan)
param->is_ror_scan= TRUE;
}
+ if (param->table->file->index_flags(key, 0, TRUE) & HA_KEY_SCAN_NOT_ROR)
+ param->is_ror_scan= FALSE;
DBUG_PRINT("exit", ("Records: %lu", (ulong) records));
DBUG_RETURN(records);
}
--- 1.209/sql/ha_ndbcluster.cc 2005-09-28 13:34:49 +04:00
+++ 1.210/sql/ha_ndbcluster.cc 2005-09-30 14:20:10 +04:00
@@ -1209,7 +1209,8 @@
DBUG_ENTER("ha_ndbcluster::index_flags");
DBUG_PRINT("info", ("idx_no: %d", idx_no));
DBUG_ASSERT(get_index_type_from_table(idx_no) < index_flags_size);
- DBUG_RETURN(index_type_flags[get_index_type_from_table(idx_no)]);
+ DBUG_RETURN(index_type_flags[get_index_type_from_table(idx_no)] |
+ HA_KEY_SCAN_NOT_ROR);
}
static void shrink_varchar(Field* field, const byte* & ptr, char* buf)
| Thread |
|---|
| • bk commit into 5.0 tree (sergefp:1.2028) BUG#13081 | Sergey Petrunia | 30 Sep |