From d8cf7e0133263483c1049bb4a60b8b5a2393100f Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 5 May 2005 21:13:57 +0500 Subject: Bug#9509 Optimizer: wrong result after AND with latin1_german2_ci We cannot propagate constants with tricky collations. --- include/m_ctype.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'include') diff --git a/include/m_ctype.h b/include/m_ctype.h index 61524dc4ddd..6f304f4ba43 100644 --- a/include/m_ctype.h +++ b/include/m_ctype.h @@ -132,6 +132,7 @@ typedef struct my_collation_handler_st /* Hash calculation */ void (*hash_sort)(struct charset_info_st *cs, const uchar *key, uint len, ulong *nr1, ulong *nr2); + my_bool (*propagate)(struct charset_info_st *cs, const uchar *str, uint len); } MY_COLLATION_HANDLER; extern MY_COLLATION_HANDLER my_collation_mb_bin_handler; @@ -385,6 +386,10 @@ int my_wildcmp_unicode(CHARSET_INFO *cs, extern my_bool my_parse_charset_xml(const char *bug, uint len, int (*add)(CHARSET_INFO *cs)); +my_bool my_propagate_simple(CHARSET_INFO *cs, const uchar *str, uint len); +my_bool my_propagate_complex(CHARSET_INFO *cs, const uchar *str, uint len); + + #define _MY_U 01 /* Upper case */ #define _MY_L 02 /* Lower case */ #define _MY_NMR 04 /* Numeral (digit) */ -- cgit v1.2.1