Add support for NULL=NULL in keys (Used in GROUP BY optimization)

Add ISAM to Windows version
Fix of test results
Fixes for NULL keys in HEAP tables.


Docs/manual.texi:
  Changelog
heap/hp_open.c:
  Add support for NULL=NULL in keys (for GROUP BY)
heap/hp_rkey.c:
  Cleanup
heap/hp_write.c:
  Cleanup
include/config-win.h:
  Add ISAM to Windows version
include/my_base.h:
  Add support for NULL=NULL in keys (for GROUP BY)
libmysqld/Makefile.am:
  Rename of innobase to innodb
myisam/mi_write.c:
  Add support for NULL=NULL in keys (for GROUP BY)
BitKeeper/etc/ignore:
  Added libmysqld/ha_innodb.cc to the ignore list
mysql-test/r/group_by.result:
  Test of NULL keys in HEAP tables
mysql-test/r/heap.result:
  Test of NULL keys in HEAP tables
mysql-test/r/null.result:
  Cleanup
mysql-test/r/order_by.result:
  Fix for result of new ORDER BY optimization
mysql-test/t/group_by.test:
  Test of NULL keys in HEAP tables
mysql-test/t/heap.test:
  Test of NULL keys in HEAP tables
mysql-test/t/null.test:
  Cleanup
sql/ha_heap.cc:
  Add support of NULL keys
sql/item_strfunc.h:
  Fix for BINARY and CAST functions
sql/item_timefunc.h:
  Fix for BINARY and CAST functions
sql/sql_parse.cc:
  Cleanup
sql/sql_select.cc:
  Add support for NULL=NULL in keys (for GROUP BY)
This commit is contained in:
unknown 2002-01-16 00:42:52 +02:00
commit f015cbdc7e
21 changed files with 297 additions and 103 deletions

View file

@ -46,7 +46,8 @@ HP_INFO *heap_open(const char *name, int mode, uint keys, HP_KEYDEF *keydef,
for (j=length=0 ; j < keydef[i].keysegs; j++)
{
length+=keydef[i].seg[j].length;
if (keydef[i].seg[j].null_bit)
if (keydef[i].seg[j].null_bit &&
!(keydef[i].flag & HA_NULL_ARE_EQUAL))
keydef[i].flag |= HA_NULL_PART_KEY;
}
keydef[i].length=length;