You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Snowflake ODBC连接查询列数增加时触发SSL连接错误求助

Snowflake ODBC查询新增列时出现SSL连接错误的解决办法

问题描述

通过ODBC连接Snowflake时,查询3列数据正常,但新增任意列后执行查询出现以下错误:

ERROR [HY000] [Snowflake][Snowflake] (25)
Result download worker error: Worker error: [Snowflake][Snowflake] (4)
REST request for URL https://sfc-ie-ds1-7-customer-stage.s3.eu-west-1.amazonaws.com/xxx failed: CURLerror (curl_easy_perform() failed) - code=35 msg='SSL connect error' osCode=9 osMsg='Bad file descriptor'.

修复方案

1. 更新ODBC驱动至最新版本

旧版本驱动在处理大结果集(新增列后数据量增大)时可能存在SSL连接bug,直接下载并安装Snowflake官方提供的最新版ODBC驱动,覆盖现有安装。

2. 修改ODBC数据源配置参数

在ODBC数据源的配置界面或配置文件中,添加/调整以下参数:

  • DISABLE_IPV6=true:禁用IPv6解析,避免网络连接异常
  • CLIENT_SESSION_KEEP_ALIVE=true:维持长连接,防止下载过程中连接断开
  • CONNECT_TIMEOUT=600、REQUEST_TIMEOUT=600:延长连接和请求超时时间,给大结果集下载留足时间

3. 排查系统SSL与网络环境

  • 确保系统根证书库是最新的:Linux执行apt update && apt install ca-certificates(Debian/Ubuntu)或yum update ca-certificates(RHEL/CentOS);Windows通过系统更新安装最新根证书
  • 检查防火墙、代理是否拦截了Snowflake的S3存储请求:新增列后结果集变大,会触发从S3下载数据,需确保s3.eu-west-1.amazonaws.com的443端口SSL连接不受限制

4. 调整系统文件描述符限制

错误中的Bad file descriptor提示可能是系统文件描述符上限不足:

  • Linux系统:临时执行ulimit -n 4096提升当前会话的限制;永久修改则编辑/etc/security/limits.conf,添加* soft nofile 4096和* hard nofile 8192
  • Windows系统:通过任务管理器查看当前ODBC进程的句柄使用情况,若接近上限,可通过组策略调整系统进程句柄限制

5. 优化查询减少结果集大小

  • 新增LIMIT子句测试小数据量,确认是否是数据量过大导致的问题
  • 添加WHERE条件过滤数据,缩小返回结果的范围,验证查询能否正常执行

内容的提问来源于stack exchange,提问作者Eoin2211

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 11:52:05