Go Snowflake Driver release notes for 2024¶
This article contains the release notes for the Go Snowflake Driver, including the following when applicable:
Behavior changes
New features
Customer-facing bug fixes
Snowflake uses semantic versioning for Go Snowflake Driver updates.
See Go Snowflake Driver for documentation.
Version 1.12.1 (December 05, 2024)¶
New features and updates¶
Introduced
golangci-lint
and fixed some errors found by this tool.Introduced S3 logging configuration.
Changed
RaisePutGetError
to betrue
by default.Implemented the
DriverContext
interface to reduce the time for creating new connections and to use context when connections are created usingdb.Conn(ctx)
.Introduced the
disableOCSPChecks
configuration option, which replacesinsecureMode
. DeprecatedinsecureMode
.Provided the ability to set custom OCSP cache server URLs.
Bug fixes¶
Propagated context to authentication processes.
HTTP headers used to communicate with Azure are now case insensitive.
Use correct length of IV for GCM encryption.
Version 1.12.0 (October 30, 2024)¶
New features and updates¶
Added support for Golang 1.23, dropped support for Golang 1.20.
Added support for configuring connections using
connections.toml
.Bumped logrus to version 1.9.3.
Extended logging when querying with
QueryArrowStream
.
Bug fixes¶
Fixed an issue with duplicate requestIDs and requestGUIDs on session renewal.
Fixed the proxy configuration for Azure.
Removed the
*.okta.com
native Okta authenticator URL restriction.Fixed the
filestransfer
example that failed with an incorrect file path.
Version 1.11.2 (October 03, 2024)¶
New features and updates¶
Changed
GetFileToStream
to an exported member of theSnowfalkeFileTranserOptions
struct
so GET operations can read files using streams to reduce memory usage.
Bug fixes¶
Fixed error handling while getting accelerated configurations from S3 bucket.
Version 1.11.1 (August 29, 2024)¶
New features and updates¶
Added support for downloading files into an in-memory stream when using the GET command.
Added context propagation to
snowflakeFileTransferAgent
to support cancel for file transfer process.
Bug fixes¶
Removed context propagation in
snowflakeConn
, which is used only for dialing purposes.Prevent panic in the
arrayToString
method for Golang slices.Prevent panic in the
decodeChunk
method when a download is canceled.
Version 1.11.0 (July 31, 2024)¶
New features and updates¶
Added support for Go 1.22 and dropped support for Go 1.19.
Adjusted driver configuration for China deployments.
Added the ability to bind structured types in queries.
Added support for using a passcode with MFA token caching enabled.
Added support for setting session variables in DSN.
Provided a simpler solution to define structured objects using tags.
Provided a mechanism to wrap each goroutine in custom code.
Bug fixes¶
Fixed an issue with handling session expiration when executing long-running queries.
Fixed an issue OCSP failures when OCSP cache is disabled.
Fixed an issue with reading arrow batches that contained integer columns whose size is smaller than 64b.
Version 1.10.1 (May 29, 2024)¶
New features and updates¶
Upgraded AWS SDK dependencies.
Added automatic password masking in logs.
Added the
DisableSamlURLCheck
parameter to disable SAML URL checks.Added support for binding semi-structured types.
Decreased the number of retries to OCSP.
Added the
OcspMaxRetryCount
andOcspResponderTimeout
variables to define the OCSP maximum retry count and timeout, respectively.
Bug fixes¶
Fixed an issue with exposed objects in Arrow batches mode.
Fixed an issue with extracting account names when using key-pair authentication.
Version 1.10.0 (May 8, 2024)¶
New features and updates¶
Implemented support for structured types (structured objects, arrays, and maps).
Added an option to skip driver registration during startup.
Added the
SECURITY.md
file so customers can review Snowflake’s security policy.Added the ability to set custom logger fields.
Bug fixes¶
Fixed an issue with closing the error channel twice when using async mode.
Fixed a race condition when accessing temporal credentials.
Version 1.9.0 (March 28, 2024)¶
New features and updates¶
Upgraded to Arrow version 15.
Added support for the
WithHigherPrecision
context in Arrow batches mode.Added date and time converter from the Snowflake format to the Golang format.
Added a context that replaces UTF-8 characters in Arrow responses.
Bug fixes¶
Fixed an issue with handling unavailable Amazon S3 accelerated configuration when transferring files.
Fixed an issue with dividing big numbers in Arrow mode.
Fixed a data racing issue during logging initialization.
Fixed an issue where results were not downloaded when the first batch was missing in a response.
Fixed an issue with the backoff retry period for non-authenticated requests.
Fixed an issue where zombie DBus processes were not terminated when a program ended.
Version 1.8.0 (February 21, 2024)¶
New features and updates¶
Added support for multiple SAML integrations.
Added support for second, millisecond, and microsecond precision for arrow batch timestamps.
Bug fixes¶
Fixed an issue with
WithFetchResultByID
by checking for thequeryInProgressAsyncCode
response code when fetching results.Fixed an issue where OKTA authentication failed when receiving an HTTP 429 error.
Fixed an issue where the driver incorrectly returned an error for empty arrow batches.
Version 1.7.2 (January 17, 2024)¶
New features and updates¶
Added support for Go version 1.21.
Upgraded the
arrow
library to version v14.Updated the
jose2go
andcrypto
dependencies.Allow clients to set the QUERY_TAG parameter via context.
Standardized using the same
http.Transport
for all cloud providers.Added an example showing how to insert data into VARIANT and OBJECT columns using variable binding.
Bug fixes¶
Fixed the following issues relating to error handling:
The driver now propagates errors when file upload errors occur.
The driver now propagates errors that occur during chunk downloading.
The driver does not start chunk downloading when an error occurs with the first chunk download.
Fixed an issue where the driver tried to read an empty chunk, when
arrow_batches
mode is enabled.Removed retry attempts for HTTP 400 and 405 statuses.
Fixed an issue with unexpected errors that occurred during S3 HEAD calls.
Fixed the GET example in documentation.