【YashanDB知识库】崖山BIT类型对MYSQL兼容问题

本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7901517.html?templateId=1718516

【问题分类】功能兼容

【关键字】YAS-07202、YAS_MY ERROR,bit

【问题描述】

本项目的架构是hadoop+hive+yashandb

使用崖山数据库,将mysql相关的创建表语句进行初始化同步

使用崖山23.3版本兼容mysql数据库,新建表和查询表都出现问题

查询报错

mysql> SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS NUCLEUS_TYPE,A0.CREATE_TIME,A0.LAST_ACCESS_TIME,A0.OWNER,A0.OWNER_TYPE,A0.RETENTION,A0.IS_REWRITE_ENABLED,A0.TBL_NAME,A0.TBL_TYPE,A0.TBL_ID FROM TBLS A0 LEFT OUTER JOIN DBS B0 ON A0.DB_ID = B0.DB_ID ;

ERROR 7202 (HY000): YAS-07202 plugin execution error, YAS_MY error, unsupported datatypemysql> SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS NUCLEUS_TYPE,A0.CREATE_TIME,A0.LAST_ACCESS_TIME,A0.OWNER,A0.OWNER_TYPE,A0.RETENTION,A0.IS_REWRITE_ENABLED,A0.TBL_NAME,A0.TBL_TYPE,A0.TBL_ID FROM TBLS A0 LEFT OUTER JOIN DBS B0 ON A0.DB_ID = B0.DB_ID ;

ERROR 7202 (HY000): YAS-07202 plugin execution error, YAS_MY error, unsupported datatype

创建表报错

output (6)

初步分析是mysql类型不兼容,出现相关报错

分别从jdbc层,表定义和字段类型等进行分析

【问题原因分析】

相关的查询表的结构如下

output (7)

通过定位mysql创建语法,将可能出现字段类型兼容问题定位在 mediumtext -->clob 和 bit -- >bit

上面。通过修改对比和研发进行联合分析发现,崖山bit类型和mysql bit类型,看着是兼容的,实际上是不兼容的

定位到bit类型是不兼容之后,全部将bit类型替换成boolean之后,相关的查询和创建新表的问题都没有了

output (8)

output (9)

【解决/规避方法】

全部将bit类型替换成boolean之后,相关的查询和创建新表的问题都没有了

posted @   YashanDB  阅读(1)  评论(0编辑  收藏  举报
编辑推荐:
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
阅读排行:
· [翻译] 为什么 Tracebit 用 C# 开发
· 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?
· RFID实践——.NET IoT程序读取高频RFID卡/标签
点击右上角即可分享
微信分享提示