diff --git a/plugin/type_mysql_json/type.cc b/plugin/type_mysql_json/type.cc index 2b3c415f346..9cb69c8aa28 100644 --- a/plugin/type_mysql_json/type.cc +++ b/plugin/type_mysql_json/type.cc @@ -176,13 +176,6 @@ public: { return NULL; } - - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - if (type_handler_mysql_json.name().eq(name)) - return &type_handler_mysql_json; - return NULL; - } }; const Type_collection *Type_handler_mysql_json::type_collection() const diff --git a/plugin/type_mysql_timestamp/plugin.cc b/plugin/type_mysql_timestamp/plugin.cc index f361ab6c0eb..c148f6dc067 100644 --- a/plugin/type_mysql_timestamp/plugin.cc +++ b/plugin/type_mysql_timestamp/plugin.cc @@ -31,11 +31,6 @@ protected: return NULL; } public: - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - return NULL; - } - const Type_handler *aggregate_for_result(const Type_handler *h1, const Type_handler *h2) const override diff --git a/plugin/type_test/plugin.cc b/plugin/type_test/plugin.cc index 4c26c35f976..a649ebb3e41 100644 --- a/plugin/type_test/plugin.cc +++ b/plugin/type_test/plugin.cc @@ -26,10 +26,6 @@ protected: const Type_handler *aggregate_common(const Type_handler *h1, const Type_handler *h2) const; public: - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - return NULL; - } const Type_handler *aggregate_for_result(const Type_handler *h1, const Type_handler *h2) const override; diff --git a/sql/sql_type.cc b/sql/sql_type.cc index a09d2648757..827eefba3fd 100644 --- a/sql/sql_type.cc +++ b/sql/sql_type.cc @@ -94,10 +94,6 @@ Vers_type_trx vers_type_trx; class Type_collection_std: public Type_collection { public: - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - return NULL; - } const Type_handler *aggregate_for_result(const Type_handler *a, const Type_handler *b) const override @@ -137,10 +133,6 @@ public: { return false; } - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - return NULL; - } const Type_handler *aggregate_for_result(const Type_handler *a, const Type_handler *b) const override @@ -212,7 +204,7 @@ Type_handler::handler_by_name(THD *thd, const LEX_CSTRING &name) } #ifdef HAVE_SPATIAL - const Type_handler *ha= type_collection_geometry.handler_by_name(name); + const Type_handler *ha= Type_collection_geometry_handler_by_name(name); if (ha) return ha; #endif diff --git a/sql/sql_type.h b/sql/sql_type.h index 479f924a727..471fe519847 100644 --- a/sql/sql_type.h +++ b/sql/sql_type.h @@ -7415,7 +7415,6 @@ class Type_collection public: virtual ~Type_collection() = default; virtual bool init(Type_handler_data *) { return false; } - virtual const Type_handler *handler_by_name(const LEX_CSTRING &name) const= 0; virtual const Type_handler *aggregate_for_result(const Type_handler *h1, const Type_handler *h2) const= 0; diff --git a/sql/sql_type_fixedbin.h b/sql/sql_type_fixedbin.h index 093587c4deb..6163512d08b 100644 --- a/sql/sql_type_fixedbin.h +++ b/sql/sql_type_fixedbin.h @@ -1892,13 +1892,6 @@ public: { return NULL; } - - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - if (type_handler_fbt()->name().eq(name)) - return type_handler_fbt(); - return NULL; - } }; static Type_handler_fbt *type_handler_fbt() { diff --git a/sql/sql_type_geom.cc b/sql/sql_type_geom.cc index 5732ae47217..c555022a99d 100644 --- a/sql/sql_type_geom.cc +++ b/sql/sql_type_geom.cc @@ -67,7 +67,7 @@ Type_handler_geometry::type_handler_geom_by_type(uint type) const Type_handler * -Type_collection_geometry::handler_by_name(const LEX_CSTRING &name) const +Type_collection_geometry_handler_by_name(const LEX_CSTRING &name) { if (type_handler_point.name().eq(name)) return &type_handler_point; diff --git a/sql/sql_type_geom.h b/sql/sql_type_geom.h index 3bc25808bc3..f3e34526f26 100644 --- a/sql/sql_type_geom.h +++ b/sql/sql_type_geom.h @@ -297,7 +297,6 @@ class Type_collection_geometry: public Type_collection #endif public: bool init(Type_handler_data *data) override; - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override; const Type_handler *aggregate_for_result(const Type_handler *a, const Type_handler *b) const override; @@ -316,6 +315,8 @@ public: }; extern Type_collection_geometry type_collection_geometry; +const Type_handler * +Type_collection_geometry_handler_by_name(const LEX_CSTRING &name); #include "field.h" diff --git a/sql/sql_type_json.cc b/sql/sql_type_json.cc index c12b868e6b9..27072de2d55 100644 --- a/sql/sql_type_json.cc +++ b/sql/sql_type_json.cc @@ -233,20 +233,6 @@ public: */ return NULL; } - - const Type_handler *handler_by_name(const LEX_CSTRING &name) const override - { - /* - Name resolution is not needed yet. - JSON is not fully pluggable at the moment: - - It is parsed using a hard-coded rule in sql_yacc.yy - - It does not store extended data type information into - FRM file yet. JSON is detected by CHECK(JSON_VALID(col)) - and this detection is also hard-coded. - This will change in the future. - */ - return NULL; - } };