summaryrefslogtreecommitdiffstats
path: root/sql/sql_type.h
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-13 13:39:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-13 13:39:13 +0000
commit86fbb58c3ac0865482819c10a3e81f2eea001c36 (patch)
tree28c9e526ea739c6f9b89e36115e1e2698bddf981 /sql/sql_type.h
parentReleasing progress-linux version 1:10.11.6-2~progress7.99u1. (diff)
downloadmariadb-86fbb58c3ac0865482819c10a3e81f2eea001c36.tar.xz
mariadb-86fbb58c3ac0865482819c10a3e81f2eea001c36.zip
Merging upstream version 1:10.11.7.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sql/sql_type.h')
-rw-r--r--sql/sql_type.h19
1 files changed, 16 insertions, 3 deletions
diff --git a/sql/sql_type.h b/sql/sql_type.h
index 35c13a38..5ce17447 100644
--- a/sql/sql_type.h
+++ b/sql/sql_type.h
@@ -30,6 +30,8 @@
#include "sql_type_string.h"
#include "sql_type_real.h"
#include "compat56.h"
+#include "log_event_data_type.h"
+
C_MODE_START
#include <ma_dyncol.h>
C_MODE_END
@@ -55,6 +57,7 @@ class Item_hybrid_func;
class Item_func_min_max;
class Item_func_hybrid_field_type;
class Item_bool_func2;
+class Item_bool_rowready_func2;
class Item_func_between;
class Item_func_in;
class Item_func_round;
@@ -150,8 +153,8 @@ scalar_comparison_op_to_lex_cstring(scalar_comparison_op op)
case SCALAR_CMP_EQUAL: return LEX_CSTRING{STRING_WITH_LEN("<=>")};
case SCALAR_CMP_LT: return LEX_CSTRING{STRING_WITH_LEN("<")};
case SCALAR_CMP_LE: return LEX_CSTRING{STRING_WITH_LEN("<=")};
- case SCALAR_CMP_GE: return LEX_CSTRING{STRING_WITH_LEN(">")};
- case SCALAR_CMP_GT: return LEX_CSTRING{STRING_WITH_LEN(">=")};
+ case SCALAR_CMP_GE: return LEX_CSTRING{STRING_WITH_LEN(">=")};
+ case SCALAR_CMP_GT: return LEX_CSTRING{STRING_WITH_LEN(">")};
}
DBUG_ASSERT(0);
return LEX_CSTRING{STRING_WITH_LEN("<?>")};
@@ -3672,6 +3675,9 @@ public:
static const Type_handler *handler_by_name(THD *thd, const LEX_CSTRING &name);
static const Type_handler *handler_by_name_or_error(THD *thd,
const LEX_CSTRING &name);
+ static const Type_handler *handler_by_log_event_data_type(
+ THD *thd,
+ const Log_event_data_type &type);
static const Type_handler *odbc_literal_type_handler(const LEX_CSTRING *str);
static const Type_handler *blob_type_handler(uint max_octet_length);
static const Type_handler *string_type_handler(uint max_octet_length);
@@ -3689,7 +3695,6 @@ public:
static const Type_handler *blob_type_handler(const Item *item);
static const Type_handler *get_handler_by_field_type(enum_field_types type);
static const Type_handler *get_handler_by_real_type(enum_field_types type);
- static const Type_handler *get_handler_by_cmp_type(Item_result type);
static const Type_collection *
type_collection_for_aggregation(const Type_handler *h1,
const Type_handler *h2);
@@ -3957,6 +3962,12 @@ public:
{
return false;
}
+
+ virtual Log_event_data_type user_var_log_event_data_type(uint charset_nr) const
+ {
+ return Log_event_data_type({NULL,0}/*data type name*/, result_type(),
+ charset_nr, is_unsigned());
+ }
virtual uint Column_definition_gis_options_image(uchar *buff,
const Column_definition &def)
const
@@ -4257,6 +4268,8 @@ public:
}
virtual bool Item_eq_value(THD *thd, const Type_cmp_attributes *attr,
Item *a, Item *b) const= 0;
+ virtual bool Item_bool_rowready_func2_fix_length_and_dec(THD *thd,
+ Item_bool_rowready_func2 *func) const;
virtual bool Item_hybrid_func_fix_attributes(THD *thd,
const LEX_CSTRING &name,
Type_handler_hybrid_field_type *,