summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <mskold@mysql.com>2004-09-11 20:56:06 +0200
committerunknown <mskold@mysql.com>2004-09-11 20:56:06 +0200
commit180abf8338e848c332d6c7f84866e59d0952cf12 (patch)
tree4ec18c131658741e369ea454678e1211b484effd /sql
parent3ffc483275d6b8e733ddd98d534263f6f533cc9d (diff)
parent387df2f6a53f25a2a360f2b8d9fec49dba541dbe (diff)
downloadmariadb-git-180abf8338e848c332d6c7f84866e59d0952cf12.tar.gz
Merge mskold@build.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1 ndb/include/mgmcommon/ConfigRetriever.hpp: Auto merged ndb/src/common/debugger/signaldata/ScanTab.cpp: Auto merged ndb/src/common/mgmcommon/ConfigRetriever.cpp: Auto merged ndb/src/common/mgmcommon/LocalConfig.cpp: Auto merged ndb/src/ndbapi/Ndb.cpp: Auto merged ndb/src/ndbapi/NdbDictionary.cpp: Auto merged ndb/src/ndbapi/NdbDictionaryImpl.cpp: Auto merged ndb/src/ndbapi/Ndbif.cpp: Auto merged ndb/src/ndbapi/Ndbinit.cpp: Auto merged sql/ha_ndbcluster.cc: Auto merged sql/handler.cc: Auto merged
Diffstat (limited to 'sql')
-rw-r--r--sql/ha_ndbcluster.cc25
-rw-r--r--sql/ha_ndbcluster.h4
-rw-r--r--sql/handler.cc6
3 files changed, 27 insertions, 8 deletions
diff --git a/sql/ha_ndbcluster.cc b/sql/ha_ndbcluster.cc
index d35f84a8fc8..bf8134f6ad2 100644
--- a/sql/ha_ndbcluster.cc
+++ b/sql/ha_ndbcluster.cc
@@ -1981,8 +1981,8 @@ int ha_ndbcluster::index_end()
int ha_ndbcluster::index_read(byte *buf,
- const byte *key, uint key_len,
- enum ha_rkey_function find_flag)
+ const byte *key, uint key_len,
+ enum ha_rkey_function find_flag)
{
DBUG_ENTER("index_read");
DBUG_PRINT("enter", ("active_index: %u, key_len: %u, find_flag: %d",
@@ -1992,7 +1992,7 @@ int ha_ndbcluster::index_read(byte *buf,
start_key.key= key;
start_key.length= key_len;
start_key.flag= find_flag;
- DBUG_RETURN(read_range_first(&start_key, NULL, false, true));
+ DBUG_RETURN(read_range_first_to_buf(&start_key, NULL, false, true, buf));
}
@@ -2059,10 +2059,25 @@ int ha_ndbcluster::read_range_first(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted)
{
- KEY* key_info;
- int error= 1;
byte* buf= table->record[0];
DBUG_ENTER("ha_ndbcluster::read_range_first");
+
+ DBUG_RETURN(read_range_first_to_buf(start_key,
+ end_key,
+ eq_range,
+ sorted,
+ buf));
+}
+
+inline
+int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
+ const key_range *end_key,
+ bool eq_range, bool sorted,
+ byte* buf)
+{
+ KEY* key_info;
+ int error= 1;
+ DBUG_ENTER("ha_ndbcluster::read_range_first_to_buf");
DBUG_PRINT("info", ("eq_range: %d, sorted: %d", eq_range, sorted));
if (m_active_cursor)
diff --git a/sql/ha_ndbcluster.h b/sql/ha_ndbcluster.h
index c49a6078e7a..d71db9268bb 100644
--- a/sql/ha_ndbcluster.h
+++ b/sql/ha_ndbcluster.h
@@ -93,6 +93,10 @@ class ha_ndbcluster: public handler
int read_range_first(const key_range *start_key,
const key_range *end_key,
bool eq_range, bool sorted);
+ int read_range_first_to_buf(const key_range *start_key,
+ const key_range *end_key,
+ bool eq_range, bool sorted,
+ byte* buf);
int read_range_next();
bool get_error_message(int error, String *buf);
diff --git a/sql/handler.cc b/sql/handler.cc
index c7c480a80fa..859c7124566 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -1434,9 +1434,9 @@ int handler::read_range_first(const key_range *start_key,
start_key->length,
start_key->flag);
if (result)
- DBUG_RETURN((result == HA_ERR_KEY_NOT_FOUND ||
- result == HA_ERR_END_OF_FILE) ? HA_ERR_END_OF_FILE :
- result);
+ DBUG_RETURN((result == HA_ERR_KEY_NOT_FOUND)
+ ? HA_ERR_END_OF_FILE
+ : result);
DBUG_RETURN (compare_key(end_range) <= 0 ? 0 : HA_ERR_END_OF_FILE);
}