summaryrefslogtreecommitdiff
path: root/include/my_handler.h
diff options
context:
space:
mode:
authormonty@mysql.com <>2004-12-06 02:00:37 +0200
committermonty@mysql.com <>2004-12-06 02:00:37 +0200
commit67ce24796584e80cf843b37b09aeb794c9231190 (patch)
treeb75e098b12b8e91a3470008602bacbb5b3009e45 /include/my_handler.h
parent46089cfd144be3430f69e2a8b48b0aeee154d6fa (diff)
downloadmariadb-git-67ce24796584e80cf843b37b09aeb794c9231190.tar.gz
Add support for up to VARCHAR (size up to 65535)
Renamed HA_VAR_LENGTH to HA_VAR_LENGTH_PART Renamed in all files FIELD_TYPE_STRING and FIELD_TYPE_VAR_STRING to MYSQL_TYPE_STRING and MYSQL_TYPE_VAR_STRING to make it easy to catch all possible errors Added support for VARCHAR KEYS to heap Removed support for ISAM Now only long VARCHAR columns are changed to TEXT on demand (not CHAR) Internal temporary files can now use fixed length tables if the used VARCHAR columns are short
Diffstat (limited to 'include/my_handler.h')
-rw-r--r--include/my_handler.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/my_handler.h b/include/my_handler.h
index 18a6234d3f6..d81c4590f8e 100644
--- a/include/my_handler.h
+++ b/include/my_handler.h
@@ -57,6 +57,13 @@ typedef struct st_HA_KEYSEG /* Key-portion */
{ length=mi_uint2korr((key)+1); (key)+=3; length_pack=3; } \
}
+#define store_key_length_inc(key,length) \
+{ if ((length) < 255) \
+ { *(key)++=(length); } \
+ else \
+ { *(key)=255; mi_int2store((key)+1,(length)); (key)+=3; } \
+}
+
extern int mi_compare_text(CHARSET_INFO *, uchar *, uint, uchar *, uint ,
my_bool, my_bool);
extern int ha_key_cmp(register HA_KEYSEG *keyseg, register uchar *a,