summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorunknown <bar@noter.(none)>2005-05-05 21:13:57 +0500
committerunknown <bar@noter.(none)>2005-05-05 21:13:57 +0500
commitd8cf7e0133263483c1049bb4a60b8b5a2393100f (patch)
tree98f33a4a02576fc0e8d57f3a273aa98e501ff125 /include
parentb6317e3ac0b756d28788ad686cfad4c513ea8cba (diff)
downloadmariadb-git-d8cf7e0133263483c1049bb4a60b8b5a2393100f.tar.gz
Bug#9509 Optimizer: wrong result after AND with latin1_german2_ci
We cannot propagate constants with tricky collations.
Diffstat (limited to 'include')
-rw-r--r--include/m_ctype.h5
1 files changed, 5 insertions, 0 deletions
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) */