2023 年 .NET Driver 版本说明¶
本文包含 .NET Driver 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 .NET Driver 更新使用语义版本控制。
版本 2.1.5(2023 年 12 月 18 日)¶
新功能和更新¶
无
错误修复¶
修复了启用证书吊销检查时存在的问题。
版本 2.1.4(2023 年 12 月 5 日)¶
新功能和更新¶
添加了有关如何启用 Arrow 格式的文档。
错误修复¶
实现了连接参数中账户名称格式的验证。
添加了同步访问查询上下文缓存。
版本 2.1.3(2023 年 11 月 15 日)¶
新功能和更新¶
添加了对管理失败的连接请求的重试频率的支持:
添加了默认值为 300 秒的
RETRY_TIMEOUT
参数。更新了驱动程序使用
CONNECTION_TIMEOUT
和maxHttpRetries
连接参数的方式,以及将CONNECTION_TIMEOUT
的默认值更改为 300 秒。
Arrow 格式现在是 :doc:`预览功能 </release-notes/preview-features>`(将来将默认启用)
错误修复¶
修复了与 HTAP 元数据优化中意外异常故障相关的问题。
修复了在更改数据库或架构时可能出现的 HTAP 问题。
在破坏池时实现异步清理,以避免潜在的死锁。
删除了针对 GCP 的 PUT 命令的混乱错误信息。
修复了不正确的
SnowflakeDbConnection.Dispose
行为。
版本 2.1.2(2023 年 9 月 27 日)¶
新功能和更新¶
添加了对混合事务和分析处理的支持:
在查询请求的重试中添加了重试上下文。
添加了查询上下文缓存。
在
SnowflakeDbCommand
中添加了GetQueryId()
方法,用于检索近期执行的查询的查询 ID,以匹配SnowflakeDbDataReader
中的现有功能。
错误修复¶
修复了以下问题: PUT/GET 命令可能会在 Azure 政府云账户上的内部暂存区失败。
减少了 PUT/GET 操作使用的内存。
修复了在上传和下载数据时,如果源文件与目标文件不同,可能发生的问题,例如因自动文件压缩而可能发生的问题。
版本 2.1.1(2023 年 8 月 22 日)¶
新功能和更新¶
无。
错误修复¶
修复了以下问题:测试连接成功创建后未重复使用。
修复了以下问题:
*
和?
通配符在文件路径中无法正常工作。修复了以下问题:驱动程序错误地请求外部浏览器身份验证的用户名和密码。
版本 2.1.0(2023 年 7 月 27 日)¶
BCR (行为变更版本)变更¶
修复了以下问题:在特定条件下,.NET 驱动程序可能无限期地重试 HTTP 请求。以前,在中断期间,.NET 驱动程序将连续重试失败的 HTTP 调用,直到请求成功或有人强制终止操作。
通过此变更,禁用源自 execute 和 executeQuery 调用的无限期 HTTP 重试。现在,.NET 驱动程序默认将 HTTP 重试次数限制为 7 次。客户可以设置 MAXHTTPRETRIES
连接参数,自定义重试次数上限。客户可以设置 MAXHTTPRETRIES=0
以删除重试限制,但这样做可能会导致 .NET 驱动程序无限重试失败的 HTTP 调用。
新功能和更新¶
改进了对包含 GET 命令中子目录的远程路径的处理。
错误修复¶
修复了在关闭脏连接并显式调用
BeginTransaction
方法时可能发生的连接池问题。修复了
HTTPClientHander
中UseProxy
的问题。添加了
BROWSER_RESPONSE_TIMEOUT
连接参数,用于修复外部浏览器中身份验证的问题。默认值为 120 秒。修复了在夏令时转换期间连接池超时的问题。
版本 2.0.25(2023 年 6 月 16 日)¶
新功能和更新¶
无
错误修复¶
修复了以下问题:代理密码可能在 Snowflake 日志文件中显示。
修复了以下问题:不管查询结果中是否有有效行,
SnowflakeDbDataReader.HasRows()
始终针对一些查询类型(例如 SELECT)返回 Ture。修复了启用连接池时间歇性的“身份验证令牌已过期”或“会话不再存在”问题。
移除了 .
WinHttpHandler
的使用。修复了区块下载重试偶尔会失败的问题,例如在下载部分数据后发生网络错误。
修复了区块重试下载过程中的问题,并改进了对这些重试的测试。
版本 2.0.24(2023 年 5 月 23 日)¶
新功能和更新¶
添加了会话 ID 日志记录,以便在并行使用多个连接的情况下更好地跟踪每个会话的活动。
错误修复¶
修复了以下问题:在启用连接池时,.NET 应用程序引发未经授权的错误。
修复了以下问题:空会话令牌导致 401 错误。
版本 2.0.23(2023 年 4 月 19 日)¶
新功能和更新¶
将支持的旧版本更改为版本 4.7.1。
错误修复¶
修复了以下问题:当
client_session_keep_alive=true
时,.NET 应用程序因未处理的异常而终止。修复了以下问题: COMMIT 可能因不必要的回滚而中断。
修复了以下问题:启用连接池时,连接无法终止会话。
修复了以下问题:在
Dispose()
之前调用Close()
,导致池中重复连接。修复了以下问题:引发错误,但未提供必需的 USER 属性。
修复了 WinHttpHandler
PlatformNotSupportedException
;.NET 现在仅为 .NET 框架应用程序使用 WinHttpHandler。修复了以下问题:在 SSO 登录的连接字符串中传递空 USER 属性时意外发生错误。
修复了以下问题:包含用双引号括起来的空格(例如“My DB”)的数据库名称未得到正确处理。
版本 2.0.22(2023 年 3 月 22 日)¶
新功能和更新¶
无。
错误修复¶
修复了导致设置
CLIENT_SESSION_KEEP_ALIVE=true
的应用程序在关闭连接时挂起的问题。修复了以下问题:超时发生后查询执行间歇性失败。
修复了以下问题:.NET 驱动程序无法在启用 FIPS 的部署中执行 PUT 命令。
修复了 .NET 连接器引发的错误:"System.Net.Http.WinHttpException (80072EE2, 12002): Error 12002 calling WINHTTP_CALLBACK_STATUS_REQUEST_ERROR"。
开始向不包含前缀的 AWS 端点添加 https: 前缀。
更新了
README.md
文件中的 指定未加密的私钥(从文件中读取) 示例,以移除Replace()
函数调用。
版本 2.0.21(2023 年 2 月 22 日)¶
新功能和更新¶
添加了以下支持:对 PUT 和 GET 查询使用 GCS 访问令牌 (#585)。
错误修复¶
改进了异常处理以保留堆栈跟踪。
版本 2.0.20(2023 年 1 月 24 日)¶
新功能和更新¶
添加了对新 Okta OIE 的支持。
通过在日志消息中包含
queryid
,改进了用于 JSON 解析的错误日志记录。
错误修复¶
修复了以下问题: PUT/GET 无法确定要上传的文件的正确压缩类型。
修复了以下问题: PUT/GET 结果值未映射到相应字段。
修复了在修剪包含结束注释的 SQL 查询时的越界问题。
修复了在收到 HTTP 429 错误时使用 Okta 身份验证失败的问题。
通过添加
DEFAULT_TIMEOUT_IN_SECOND
会话参数,修复了会话超时问题。