summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-06-02 00:09:14 +0300
committerunknown <monty@mysql.com>2004-06-02 00:09:14 +0300
commit5bf17d04f556c370de6a3567efccbe35baf35d37 (patch)
tree7c47751643d7b2719fbee614235acaf2653f1d2a /sql/sql_select.cc
parentce0d015384d65199c3e0f830aa4f49937285e12b (diff)
parent1a36eff30c4f661081d0943e2c764a0c1807acaf (diff)
downloadmariadb-git-5bf17d04f556c370de6a3567efccbe35baf35d37.tar.gz
Merge with 4.0 to get fixes for netware
client/mysqltest.c: Auto merged include/mysql.h: Auto merged innobase/dict/dict0dict.c: Auto merged innobase/include/row0mysql.h: Auto merged innobase/lock/lock0lock.c: Auto merged innobase/row/row0mysql.c: Auto merged libmysql/libmysql.c: Auto merged mysql-test/README: Auto merged mysql-test/r/select_found.result: Auto merged mysql-test/t/select_found.test: Auto merged mysys/mf_wcomp.c: Auto merged mysys/mf_wfile.c: Auto merged sql/ha_innodb.cc: Auto merged sql/set_var.cc: Auto merged sql/sql_base.cc: Auto merged configure.in: Get changes for netware include/my_sys.h: Use local file innobase/include/os0file.h: auto merge innobase/os/os0file.c: auto merge sql/mysqld.cc: auto merge sql/sql_acl.cc: indentation change sql/sql_acl.h: use local file sql/sql_class.h: auto merge sql/sql_db.cc: use local file sql/sql_parse.cc: use local file sql/sql_select.cc: Merge sql/sql_show.cc: use local file
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 8d651c00a0a..0abfb483820 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -6369,7 +6369,8 @@ end_send(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)),
if ((join->tables == 1) && !join->tmp_table && !join->sort_and_group
&& !join->send_group_parts && !join->having && !jt->select_cond &&
!(jt->select && jt->select->quick) &&
- !(jt->table->file->table_flags() & HA_NOT_EXACT_COUNT))
+ !(jt->table->file->table_flags() & HA_NOT_EXACT_COUNT) &&
+ (jt->ref.key < 0))
{
/* Join over all rows in table; Return number of found rows */
TABLE *table=jt->table;
@@ -6462,7 +6463,11 @@ end_send_group(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)),
if (error > 0)
DBUG_RETURN(-1); /* purecov: inspected */
if (end_of_records)
+ {
+ if (!error)
+ join->send_records++;
DBUG_RETURN(0);
+ }
if (join->send_records >= join->unit->select_limit_cnt &&
join->do_send_rows)
{