2023 年 ODBC Driver 版本说明

本文包含 ODBC Driver 的版本说明,包括以下内容(如果适用):

  • 行为变更

  • 新功能

  • 面向客户的错误修复

Snowflake 对 ODBC Driver 更新使用语义版本控制。

版本 3.1.4(2023 年 12 月 7 日)

新功能和更新

  • 无。

错误修复

  • 添加了 BROWSER_RESPONSE_TIMEOUT 连接参数,用于修复外部浏览器中身份验证的问题。

  • 添加了 allowEmptyProxy 连接参数,用于修复空代理设置可能覆盖配置设置的问题。

  • 修复了发送遥测数据时导致间歇性崩溃的问题。

  • 出于安全考虑,移除了 Microsoft 禁用的 CRT 函数。

版本 3.1.3(2023 年 11 月 13 日)

新功能和更新

  • 更新了以下库:

    • openssl 从 3.0.9 更新到 3.0.11

    • curl 从 8.1.2 更新到 8.4.0

  • 更新了 SQLGetStmtAttr(SQL_SF_STMT_ATTR_LAST_QUERY_ID),以返回失败查询的查询 ID。

  • 添加了对管理失败的连接请求的重试频率的支持:

    • 添加了默认值为 300 秒的 retryTimeout 参数。

    • 更新了驱动程序使用 LOGIN_TIMEOUTmaxHttpRetries 连接参数的方式,以及将 LOGIN_TIMEOUT 的默认值更改为 300 秒。

错误修复

  • 修复了以下问题:由于 OSCP 验证超时,导致驱动程序在提取查询结果时失败。

  • 修复了以下问题:文件路径包含非 ASCII 字符时, PUT 和 GET 命令会失败。

  • 修复了以下问题:未指定 overwrite=true 时,对 GCP 执行 PUT 命令会覆盖现有文件。

  • 出于安全考虑,移除了 Microsoft 禁用的 CRT 函数。

版本 3.1.1(2023 年 9 月 29 日)

新功能和更新

  • 更新了用于 SSL 连接的 cacert 捆绑包。

错误修复

  • 改进了与 PUT/GET 命令失败相关的错误消息,以指示特定错误而不是“未知异常”。

  • 修复了以下问题:即使在应用程序取消相关查询后, ODBC 驱动程序仍继续重试块下载。

  • 修复了将 SQLGetData() 与 ARROW 结果格式一起使用时可能会降低性能的问题。

  • 修复了错误消息中显示凭据的问题。

  • 修复了 AWS PrivateLink 环境中 OCSP 回退请求的问题。

  • 修复了一个问题,即在执行 OCSP 验证时,驱动程序没有使用证书中的完整 OCSP URL。

版本 3.1.0(2023 年 8 月 23 日)

行为变更版本 (BCR) 变更

  • 修复了以下问题:在特定条件下,驱动程序可能无限期地重试 HTTP 请求。

    以前,在中断期间,驱动程序将连续重试失败的 HTTP 调用,直到请求成功或有人强制终止操作。

    通过此变更,驱动程序将禁用源自 executeexecuteQuery 调用的无限期 HTTP 重试。现在,驱动程序默认将 HTTP 重试次数限制为 7 次。客户可以设置 maxHttpRetries 连接参数,自定义重试次数上限。客户可以设置 maxHttpRetries=0 以移除重试限制,但这样做可能会导致驱动程序无限期地重试失败的 HTTP 调用。

  • 为了提高性能, SQLExecDirect() 函数不再不必要地验证查询的参数绑定。

    以前,驱动程序会为每次 SQLExecDirect() 调用发送两个请求:描述请求和执行请求。为了提高性能,现已省略描述请求。通过此变更,驱动程序将不会验证查询所需的参数绑定。如果未使用 SQLFreeStmt(SQL_RESET_PARAMS) 清除先前查询中的参数绑定,则这些绑定可能会错误地应用于以下查询并造成问题。

新功能和更新

  • 添加了 CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED 会话参数,以启用和禁用带外 (OOB) 遥测支持。

错误修复

  • 修复了以下问题:在获取以新语句类型(例如 CALL)开头的多语句查询的查询结果时,驱动程序可能会失败。

  • 修复了可能导致 SQLColAttribute() 函数在 VARCHAR 列上返回错误 SQL_DESC_OCTET_LENGTH 值的问题(此错误值可能会截断数据)。

  • 修复了以下问题:在使用专用链接时,驱动程序错误地发送带外 (OOB) 遥测超时,从而无法下载查询结果。

版本 3.0.2(2023 年 7 月 27 日)

新功能和更新

  • 更新了以下软件库:

    • util-linux 更新到版本 2.39.0。

    • curl 更新到版本 8.1.2。

  • 增强了混合事务和分析处理 (HTAP)。

  • 对于在 Windows 平台上运行的 ODBC 客户端,将 LogLevel 默认值设置为 OFF

错误修复

  • 修复了发送遥测时导致间歇性崩溃的问题。

版本 3.0.1(2023 年 7 月 6 日)

BCR (行为变更版本)变更

从 ODBC 驱动程序的版本 3.0.1 开始:

  • 从 openssl 1.1.1 升级到 openssl 3.0.9。因此,使用以前 openssl 库版本中已弃用的加密算法生成的私钥不再有效。更新到 ODBC 3.0.1 时,必须重新生成用于密钥对身份验证的私钥文件。

  • 停止了对 CentOS 6 以及 MacOS 10.14 和 10.15 的支持。

新功能和更新

  • 更新了以下软件库:

    • openssl 更新到版本 3.0.9。

    • ICU 更新到版本 71.1.0。

  • 创建了一个同时支持 x86_64 和 arm64 Mac 系统的统一发布包架构。

错误修复

  • 修复了以下问题:在 Windows 系统上,将 CLIENT_SESSION_KEEP_ALIVE 设置为 true 时,驱动程序会间歇性地崩溃。

版本 2.25.12(2023 年 6 月 6 日)

新功能和更新

无。

错误修复

  • 修复了以下问题:具有大量参数绑定的超大请求可能会因超出日志记录大小而导致应用程序崩溃。

  • 修复了 OCSP 验证问题。

  • 修复了可能无意中在 Snowflake 日志文件中泄露代理密码的问题。

版本 2.25.11(2023 年 4 月 20 日)

新功能和更新

  • 将 libcurl 库从版本 7.87.0 更新到 7.88.1。

  • 将 zlib 库从版本 1.2.11 更新到 1.2.13。

错误修复

  • 修复了建立连接时在 OCSP 验证期间可能出现的无效 URL 问题。

  • 修复了以下问题:在使用不需要凭据的代理时,提供凭据会导致连接失败。

  • 移除了已弃用的 openssl 函数调用。

  • 修复了双精度类型参数绑定可能会损失精度的问题。

  • 移除了 Microsoft 禁用的不安全函数调用。

版本 2.25.10(2023 年 3 月 22 日)

新功能和更新

  • 将 libcurl 库从版本 7.84.0 更新到 7.87.0。

错误修复

  • 修复了阻止客户端创建文件 DSN (数据源名称)的问题。

  • 修复了 PUT 命令无法复制数据的问题。

  • 修复了以下问题:在 ARM64 架构上运行的 Macintosh 应用程序无法使用原生 Apple Silicon ODBC 驱动程序连接到 Snowflake。

版本 2.25.9(2023 年 2 月 28 日)

新功能和更新

无。

错误修复

  • 添加了对 SnowflakeType 枚举中 GEOMETRY 数据类型的支持,以修复在调用 SQLColumns() 函数以返回包含了 GEOMETRY 数据的元数据时出现的问题。

  • 修复了某些情况下错误地将时间戳数据作为 NULL 返回的问题。

版本 2.25.8(2023 年 2 月 8 日)

新功能和更新

无。

错误修复

  • 修复了会话中未定义架构时数组绑定 INSERT 语句失败的问题。

  • 修复了执行 GET 和 PUT 查询时偶尔导致 ODBC 驱动程序崩溃的问题。

  • 修复了会话空闲大约 120 秒后 ODBC 驱动程序发送 SIGPIPE 信号的问题。

  • 修复了在收到 HTTP 429 错误时使用 Okta 身份验证失败的问题。

语言: 中文