2023 年 Go Snowflake Driver 版本说明¶
本文包含 Go Snowflake Driver 的版本说明,包括以下内容(如果适用):
行为变更
新功能
面向客户的错误修复
Snowflake 对 Go Snowflake Driver 更新使用语义版本控制。
版本 1.7.1(2023 年 12 月 7 日)¶
新功能和更新¶
升级了
crypto
和net
库。添加了以下支持:在新 AWS SDK 库上运行 S3 客户端,同时保持与先前库版本的兼容性。
通过将密钥从
x509.Certificate
更改为字符串,改进了 OCSP 响应缓存性能。为身份验证终端和其他类型的终端实施了单独的重试策略。
错误修复¶
现在,驱动程序会重试在发生后端错误时失败的
getQueryStatus
查询。驱动程序现在为语句调用的失败查询提供了
QueryId
。
版本 1.7.0(2023 年 11 月 15 日)¶
BCR (行为变更版本)变更¶
更改了
OVERWRITE
参数的默认 PUT 行为。以前,默认值为OVERWRITE=true
。更改后,默认值为OVERWRITE=false
,因此必须显式启用替换 PUT 行为。
新功能和更新¶
添加了
IncludeRetryReason
配置参数,以启用或禁用是否发送用于查询重试请求的 HTTP 状态代码。添加了新的
WithOriginalTimestamp
上下文,允许 arrow 批次在 Snowflake 支持的全年范围内使用纳秒精度。添加了在配置文件中设置日志级别的支持。
通过缓存解析的 OCSP 响应提高了性能。
错误修复¶
修复了与并发访问 HTAP 查询上下文缓存相关的问题。
修复了异步演示示例中与连接处理不当相关的问题。
版本 1.6.25(2023 年 9 月 26 日)¶
新功能和更新¶
添加了对混合事务和分析处理的支持。
在语句级实现了
GetQueryId
函数,该函数允许获取此语句上的最后一个查询 ID。添加了查询请求的重试原因。
更新了用于 SSL 连接的
cacert
捆绑包。
错误修复¶
修复了 PrivateLink 环境中 OCSP 回退请求的问题。
从 snowflakeConn 结构中删除了 QueryID,以解决在线程之间重用同一连接时的一些竞争条件。
修复了驱动程序在成功查询时显示错误的问题。
版本 1.6.24(2023 年 8 月 22 日)¶
新功能和更新¶
添加了为加密和压缩指定临时目录的支持。
通过每次查询检查一次位置数据而不是分别检查每行和每列,提高了性能。
添加了在提取 arrow 批次时指定自定义上下文的支持。
错误修复¶
无。
版本 1.6.23(2023 年 7 月 25 日)¶
新功能和更新¶
添加了对绑定命名参数的支持。
添加了对查询绑定映射
sql.Null
类型的支持。允许为密钥对身份验证设置单独的身份验证超时。
添加了示例应用程序,提供了分布式提取功能的示例。
添加了外部浏览器超时。
提供了更简单的方法来配置 Snowflake 连接(请参阅
/cmd
示例)。升级了 arrow 库以更好地处理 32 位系统。
提供了演示如何使用 Arrow 批次的示例应用程序。
错误修复¶
修复了多线程竞争条件下的错误消息。
修复了查询仍在进行时重试异步请求的问题。
在块下载期间,在访问连接配置之前添加了 null 检查。
修复了当驱动程序需要 Arrow 时处理从服务器返回的 JSON 结果集的问题。
在密钥对身份验证重试时,重新创建了新的 JWT 令牌(具有新的到期时间)。
添加了外部浏览器的身份验证超时,以防止用户关闭浏览器选项卡时无限等待。
修复了临时文件系统处于只读模式时驱动程序死机的问题。
修复了身份验证问题,即只在需要用户名和密码的身份验证模式下才需要用户名和密码。
版本 1.6.22(2023 年 6 月 14 日)¶
新功能和更新¶
在 cmd 文件夹中添加了示例应用程序
async.go,
,以演示如何在 Golang 驱动程序中使用异步 API 调用。在 cmd 文件夹中添加了示例应用程序
multistatement.go
,以演示如何在 Golang 驱动程序中发送多个语句。
错误修复¶
修复了由于
Commit()
和Rollback()
未使用BeginTx()
中设置的相同上下文而可能导致发生锁定的问题。
版本 1.6.21(2023 年 5 月 23 日)¶
新功能和更新¶
添加了在
snowflakeChunkDownloader
中重试时检查是否超过了上下文截止日期的功能。已将 arrow 库升级到 v12 版本。
添加了从 Snowflake Go 驱动程序公开直接 arrow IPC 流的功能。
添加了 Arrow Database Connectivity (ADBC) 0.4.0 版本,该版本使用更新的 Snowflake 库来提供 Snowflake ADBC 驱动程序,除了本机 Go 绑定之外,通过访问 C 接口可以使用该驱动程序。
错误修复¶
修复了与较大或较小的
datetime
值有关的 int64 溢出问题。
版本 1.6.20(2023 年 4 月 18 日)¶
新功能和更新¶
添加了对 Okta Identity Engine (OIE) 登录的支持。
通过在读取下一个数据块之前清理第一个数据块,改进了内存使用情况。
错误修复¶
在监控异步查询并将可取消的上下文传递给
WithFetchResultByID
时,在已取消上下文的情况下出现接口转换死机,对此问题进行了修复。更新了 OCSP 文件锁定错误的日志消息。
现在,当单个文件上传失败时会记录错误。
版本 1.6.19(2023 年 3 月 21 日)¶
新功能和更新¶
添加了对 Go 版本 1.20 的支持,并删除了对 Go 版本 1.18 的支持。
已从 azure-storage-blob-go v0.15.0 迁移到 azure-sdk-for-go v1.0.0。
现在,Go 驱动程序支持重试 HTTP 429 错误代码。
已将 Arrow 库升级到 v10 版本。
错误修复¶
修复了 Go 驱动程序在执行 SSO URL 之前无法对其进行验证的问题。现在,驱动程序使用 URLValidator 和 URLEncoder 实用程序对 URL 进行验证和编码。
修复了 GO 驱动程序 1.6.13 版本中的 Pointer 类型
*time.Time
返回<nil>
值的问题。
版本 1.6.18(2023 年 2 月 22 日)¶
新功能和更新¶
无。
错误修复¶
添加了对禁用多重身份验证和外部浏览器的连接缓存的支持,默认情况下启用这些连接缓存,但设置以下任一配置参数。
ClientStoreTemporaryCredential=ConfigBoolFalse
ClientRequestMfaToken=ConfigBoolFalse
版本 1.6.17(2023 年 1 月 26 日)¶
新功能和更新¶
golang.org/x/net/http2
已更新至版本 0.5.0。
错误修复¶
通过跳过不返回更新计数的查询,提高了多语句查询的性能。
修复了 MFA 和外部浏览器身份验证的连接缓存。
在配置参数映射中添加了互斥锁,以避免在使用多个 Go 例程时同时发生读/写。