为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 官方Docker镜像(dm8_single:dm8_20241022_rev244896_x86_rh6_64)
【操作系统】:Docker
【CPU】: x86
【问题描述】*:
Spring Boot JPA搭配com.dameng:DmDialect-for-hibernate6.2:8.1.3.140
和com.dameng:DmJdbcDriver18:8.1.3.140
,使用HQL count语句的时候报错
Cannot invoke "org.hibernate.query.sqm.function.SqmFunctionDescriptor.generateSqmExpression(org.hibernate.query.sqm.tree.SqmTypedNode, org.hibernate.query.ReturnableType, org.hibernate.query.spi.QueryEngine, org.hibernate.type.spi.TypeConfiguration)" because the return value of "org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.getFunctionDescriptor(String)" is null
对比其他Dialect实现,发现达梦的hibernate方言包里,DmDialect
的initializeFunctionRegistry
没有调用Dialect
父类中的initializeFunctionRegistry
,即super.initializeFunctionRegistry(functionContributions);
,导致没有导入标准SQL的常用SQL函数,使得只要在HQL里使用函数就会报错,达梦的Hibernate方言包也没有提供源码,希望官方可以修复这个bug
请问目前您这边有方法修复这个问题么?