2026년 Go Snowflake Driver 릴리스 정보

이 문서에는 Go Snowflake Driver 에 대한 릴리스 정보가 있는데, 해당되는 경우 다음을 포함합니다.

  • 동작 변경 사항

  • 새로운 기능

  • 고객이 직면한 버그 수정

Snowflake는 Go Snowflake Driver 업데이트에 의미 체계 버전 관리를 사용합니다.

설명서는 Go Snowflake 드라이버 섹션을 참조하십시오.

버전 2.0.0(2026년 3월 3일)

BCR(동작 변경 릴리스) 변경 사항

  • PUT/GET 작업에 대한 오류가 발생하도록 :codenowrap:`SnowflakeFileTransferOptions`에서 :codenowrap:`RaisePutGetError`를 제거했습니다.

  • :codenowrap:`SnowflakeFileTransferOptions`에서 :codenowrap:`GetFileToStream`을 제거했습니다. :codenowrap:`WithFileGetStream`을 사용하여 GET 작업에 대한 파일 스트리밍을 자동으로 활성화합니다.

  • :codenowrap:`WithOriginalTimestamp`를 제거했습니다. 대신 :codenowrap:`WithArrowBatchesTimestampOption(UseOriginalTimestamp)`을 사용합니다.

  • Config 구조체에서 ClientIP 필드를 제거했습니다. 이 필드는 사용된 적이 없으며 어떤 기능에도 필요하지 않습니다.

  • Config 구조체에서 InsecureMode 필드를 제거했습니다. 대신 :codenowrap:`DisableOCSPChecks`를 사용합니다.

  • Config 구조체에서 DisableTelemetry 필드를 제거했습니다. 대신 CLIENT_TELEMETRY_ENABLED 세션 매개 변수를 사용합니다.

  • 스트림 청크 다운로더를 제거했습니다. 대신 기본 다운로더를 사용합니다.

  • :codenowrap:`SnowflakeTransport`를 제거했습니다. :codenowrap:`Config.Transporter`를 사용하거나 사용자 지정 루트 인증서 세트만 필요한 경우 :codenowrap:`RegisterTLSConfig`를 사용하여 자체 TLS 구성을 등록합니다.

  • 일관성을 위해 :codenowrap:`WithFileStream`의 이름을 :codenowrap:`WithFilePutStream`으로 변경했습니다.

  • 다른 드라이버와의 일관성을 위해 Config 구조체의 KeepSessionAlive 필드 이름을 :codenowrap:`ServerSessionKeepAlive`로 변경했습니다.

  • 이제 Array 함수는 지원되지 않는 유형에 대해 오류를 반환합니다.

  • :codenowrap:`WithMultiStatement`는 더 이상 오류를 반환하지 않습니다.

  • WithMapValuesNullableWithArrayValuesNullable`을 단일 :codenowrap:`WithEmbeddedValuesNullable 옵션으로 결합했습니다.

  • 스트리밍 청크 다운로더를 숨겼습니다. 향후 릴리스에서는 완전히 제거될 예정입니다.

  • 이제 최대 청크 다운로드 goroutine 수가 CLIENT_PREFETCH_THREADS 세션 매개 변수로 구성됩니다.

  • GOSNOWFLAKE_SKIP_REGISTRATION 환경 변수의 오타를 수정했습니다.

  • MfaToken 및 :codenowrap:`IdToken`을 내보내지 않았습니다.

  • Arrow 배치 변경 사항:

    • Arrow 배치는 별도의 패키지로 추출되었으므로, Arrow 배치가 필요하지 않은 사용자의 컴파일 크기가 크게 줄어들 것입니다(~34MB -> ~18MB).

    • SnowflakeRows 및 :codenowrap:`SnowflakeResult`에서 :codenowrap:`GetArrowBatches`를 제거했습니다. 대신 :codenowrap:`arrowbatches.GetArrowBatches(rows.(SnowflakeRows))`를 사용합니다.

    • 다음 함수를 마이그레이션했습니다.

      • :codenowrap:`sf.WithArrowBatchesTimestampOption`에서 :codenowrap:`arrowbatches.WithTimestampOption`으로

      • :codenowrap:`sf.WithArrowBatchesUtf8Validation`에서 :codenowrap:`arrowbatches.WithUtf8Validation`으로

      • :codenowrap:`sf.ArrowSnowflakeTimestampToTime`에서 :codenowrap:`arrowbatches.ArrowSnowflakeTimestampToTime`으로

  • 변경 사항 로깅:

    • Logrus 로거를 제거하고 slog로 마이그레이션했습니다.

    • SFLogger 인터페이스를 단순화했습니다.

    • 사용자 지정 slog 핸들러를 설정하기 위해 SFSlogLogger 인터페이스를 추가했습니다.

새로운 기능과 업데이트

  • Go 1.26에 대한 지원을 추가하고 Go 1.23에 대한 지원을 중단했습니다.

  • FIPS 전용 모드에 대한 지원을 추가했습니다.

버그 수정 사항

  • 스테이지 파일 업로드 및 다운로드 작업을 위한 패닉 복구 블록을 추가했습니다.

  • HTTP 400 오류로 매니페스트된 Azure 컨테이너의 WIF 메타데이터 요청을 수정했습니다.

  • 두 번째 URL의 포트가 확인되지 않았던 :codenowrap:`isPrefixEqual`에서 SAML 인증 포트 유효성 검사 우회를 수정했습니다.

  • OCSP 캐시 지우기에서 경합 조건을 수정했습니다.

  • 이제 context.Context 쿼리가 PUT 및 GET 쿼리에 대한 클라우드 저장소 작업으로 전파되어 취소 처리를 개선할 수 있습니다.

  • ELF PT_INTERP 검사를 통해 정적 링크를 감지하고 :code:`dlopen`을 정상적으로 건너뛰어 완전히 정적으로 연결된 Linux 바이너리에서 minicore 충돌(SIGFPE)을 수정했습니다.

버전 1.19.0(2026년 2월 3일)

새로운 기능과 업데이트

  • 기존 DSN 옵션 외에도 Config 구조에 :codenowrap:`tokenFilePath`를 노출시켰습니다.

  • 이제 드라이버 시작 시 한 번뿐 아니라 모든 새 연결마다 :codenowrap:`tokenFilePath`를 읽습니다.

  • 워크로드 ID 페더레이션을 사용할 때 ID 가장을 위한 지원을 추가했습니다.

  • -tags minicore_disabled 매개 변수를 사용하여 컴파일 시 미니코어가 로드되지 않도록 비활성화하는 기능을 추가했습니다.

버그 수정 사항

  • 암호화되지 않은 스테이지에서 파일을 가져올 때 발생하는 문제를 수정했습니다.

  • 클라이언트 환경에서 수집되는 미니코어 파일 이름을 수정했습니다.

  • 파일 또는 디렉터리에 공백이 포함된 경우 GCS에서 403 응답이 반환되던 GCS URLs 경로 이스케이프 문제를 수정했습니다.

  • 스테이지에 파일을 업로드할 때 파일 설명자가 유출되는 문제를 수정했습니다(특히 GCS에서).