基于pg driver 的dremio cratedb arp 扩展

实际上pg 驱动是可以直接链接cratedb 的但是因为默认实现会自动添加一个编码造成生成的sql 在cratedb 运行异常

参考代码

核心是arp 方言处理上,移除了关于编码的处理,实际上与mssql server 处理是一样的,主要代码实际上来自ce 版本的pg 扩展

public SqlCollation getDefaultCollation(SqlKind kind) {
  if (DISABLE_PUSH_COLLATION) {
     return null;
  } else {
     switch(kind) {
     case LITERAL:
     case IDENTIFIER:
        return POSTGRES_BINARY_COLLATION;
     default:
        return null;
     }
  }
}

说明

完整代码在github 上可以参考,处理核心就是移除了对于编码的处理部分,这样就可以解决了,目前基于的dremio 24.3 ,对于低版本的可以
调整依赖自己编译

参考资料

https://github.com/rongfengliang/my-dremio-cratedb-connector

posted on   荣锋亮  阅读(13)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2019-12-21 使用threaddump-analyzer 快速查看jvm thread 状态信息
2018-12-21 nginx http2 push 试用
2018-12-21 几个方便进行micro frontend 开发的工具&&类库
2018-12-21 Compoxure example 应用说明
2018-12-21 Compoxure 微服务组合proxy 中间件
2018-12-21 SCS Characteristics
2017-12-21 sqlopsstudio 微软开源跨平台sql server 连接工具

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示