【YashanDB知识库】使用leading hint调整SQL执行计划后报错YAS-04522 invalid hint leading

简介: 【YashanDB知识库】使用leading hint调整SQL执行计划后报错YAS-04522 invalid hint leading

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

问题现象

使用leading hint调整SQL执行计划后,执行SQL时,报错:YAS-04522 invalid hint leading

f3cdc588-1ff9-435b-8119-229072c10d3c

问题的风险及影响

SQL语句无法正常执行

问题影响的版本

所有的YashanDB版本

问题发生原因

YashanDB优化器的Bug

解决方法及规避方式

规避方式:不使用leading hint

问题分析和处理过程

使用如下SQL语句验证当前版本YashanDB是否存在此问题:

drop table a;

drop table b;

drop table c;

create table a(tid number,tname varchar2(30));

create table b(tid number,tname varchar2(30));

create table c(tid number,tname varchar2(30));

select /\*+ leading(c) \*/ distinct a.tid

from a

left join b

on a.tid = b.tid

left join c

on b.tid = c.tid

where a.tname is not null;
相关文章
|
30天前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
|
1月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】MySQL和YashanDB 隐式转换不一致引起的报错
本文分析了在YashanDB中执行特定SQL语句时出现的类型转换错误问题,并对比了YashanDB、Oracle和MySQL 5.7的行为差异。问题源于隐式类型转换,当数值字段与非法数字字符串(如'1,2')进行比较时,YashanDB和Oracle会报错,而MySQL 5.7虽不报错但会引发警告。通过调整SQL语句,避免数值与字符串直接比较,可有效解决问题。文章还详细解析了不同值表现不一致的原因,涉及执行计划和过滤条件的实际运行细节。
|
1月前
|
数据库
【YashanDB知识库】数据库升级后用yasboot在线扩充备节点出现报错
本文来自YashanDB官网,讨论从22.2.4.1升级至23.2.2.100过程中遇到的在线扩容问题。使用yasboot增加备节点时出现“no replication addr in node 1-1”错误,尽管数据库中存在相关配置。原因是早期托管功能未支持扩容,导致OM无法获取新库配置。提供两种规避方法:一是手动修改`cod_domor.db`信息并调整配置文件;二是手动安装YashanDB并配置备机。最终已向研发反馈,将在扩容时优化配置检查逻辑。
|
27天前
|
SQL 存储 缓存
YashanDB SQL语言
YashanDB SQL语言
|
30天前
|
SQL 存储 自然语言处理
YashanDB SQL 引擎
YashanDB SQL 引擎
|
30天前
|
SQL Oracle 关系型数据库
【YashanDB 知识库】MySQL 和 YashanDB 隐式转换不一致引起的报错
【YashanDB 知识库】MySQL 和 YashanDB 隐式转换不一致引起的报错
|
30天前
|
SQL 存储 关系型数据库
【YashanDB知识库】如何从内存中获取SQL语句的执行计划
【YashanDB知识库】如何从内存中获取SQL语句的执行计划
|
1月前
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
本文来自YashanDB官网,介绍如何处理Oracle客户端sql*plus中使用@@调用同级目录SQL脚本的场景。崖山数据库23.2.x.100已支持@@用法,但旧版本可通过Python脚本批量重写SQL文件,将@@替换为绝对路径。文章通过Oracle示例展示了具体用法,并提供Python脚本实现自动化处理,最后调整批处理脚本以适配YashanDB运行环境。
【YashanDB知识库】yashandb升级后,yasboot restart出现版本回退、报错control file version incompatible
【YashanDB知识库】yashandb升级后,yasboot restart出现版本回退、报错control file version incompatible
|
1月前
|
SQL
【YashanDB知识库】过期统计信息导致SQL执行计划变差
【YashanDB知识库】过期统计信息导致SQL执行计划变差

热门文章

最新文章

下一篇
oss创建bucket