2023년 JDBC Driver 릴리스 정보

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

  • 동작 변경 사항

  • 새로운 기능

  • 고객이 직면한 버그 수정

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

버전 3.14.4(2023년 12월 7일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • gzipDisabled 속성 키에 값이 없을 때 발생하는 NullPointerException 을 수정했습니다.

  • temp 디렉터리와 관련된 로깅의 보안 문제를 수정했습니다.

    • 로깅은 더 이상 임시 디렉터리에 액세스하지 않습니다.

    • 기본 logpath 값이 temp 디렉터리에서 home 디렉터리로 변경되었습니다.

  • Arrow를 사용하여 JDK v21에서 드라이버가 실패하는 문제를 수정했습니다.

버전 3.14.3(2023년 11월 7일)

새로운 기능과 업데이트

  • 다음 라이브러리를 업데이트했습니다.

    • org.codehaus.plexus:plexus-archiver 2.4.4에서 4.8.0으로

    • org.codehaus.plexus:plexus-archiver 2.6에서 4.8.0으로

    • org.bouncycastle:bc-fips 1.0.2.1에서 1.0.2.4로

    • aws-java-sdk를 1.12.501로

    • jackson을 2.15.3으로

    • netty를 4.1.100.Final로

    • grpc를 1.59.0으로

  • PUT 및 GET 명령이 로컬 파일 시스템에 액세스하도록 허용할지 여부를 결정하는 enablePutGet 연결 속성을 추가했습니다.

  • 실패한 연결 요청에 대한 재시도 빈도 관리에 대한 지원을 추가했습니다.

    • 기본값이 300초인 retryTimeout 매개 변수를 추가했습니다.

    • 드라이버가 loginTimeoutmaxHttpRetries 연결 매개 변수를 사용하는 방법을 업데이트하고 loginTimeout 의 기본값을 300초로 변경했습니다.

버그 수정 사항

  • snowflake-ingest-sdk 2.0.3을 사용할 때 NoSuchMethodError 와 관련된 문제를 수정했습니다.

  • NULL 에서 DATE 로의 데이터 타입 변환 처리와 관련된 문제를 수정합니다.

  • GCP downscope 토큰 문제를 수정했습니다.

버전 3.13.34(2023년 10월 25일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • snowflake-jdbc-fips 에서 GCP Downscope 토큰을 사용한 PUT 명령 실패와 관련된 문제를 수정했습니다.

버전 3.14.2(2023년 10월 2일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • 드라이버가 getStageInfoJsonNode 에서 useS3RegionUrl 을 따르지 않는 문제를 수정했습니다.

버전 3.14.1(2023년 8월 24일)

새로운 기능과 업데이트

  • util 메서드에서 선택적 헤더를 보내는 기능을 추가했습니다.

  • 저장 프로시저에서 비동기 호출을 지원하기 위해 getQueryStatus 함수를 SfBaseSession 으로 이동했습니다.

버그 수정 사항

  • 드라이버가 비공개 링크의 전체 OSCP URL을 보내지 않는 문제를 수정했습니다.

버전 3.14.0(2023년 7월 27일)

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

  • 특정 조건에서 JDBC 드라이버가 HTTP 요청을 무기한으로 재시도할 수 있는 문제를 수정했습니다.

    이전에는 가동 중단 중에 JDBC 드라이버는 요청이 성공하거나 누군가 작업을 강제로 종료할 때까지 실패한 HTTP 호출을 계속해서 재시도했습니다.

    이번 변경으로 executeexecuteQuery 호출에서 시작되는 무한 HTTP 재시도가 비활성화됩니다. 이제 JDBC 드라이버는 기본적으로 HTTP 재시도 횟수를 7회로 제한합니다. 고객은 maxHttpRetries 세션 매개 변수를 설정하여 최대 재시도 횟수를 사용자 지정할 수 있습니다. 고객은 maxHttpRetries=0 으로 설정하여 재시도 횟수 제한을 제거할 수 있지만, 그러면 JDBC 드라이버가 실패한 HTTP 호출을 무한히 재시도할 위험이 발생합니다.

새로운 기능과 업데이트

  • OOB 원격 분석을 비활성화할 수 있도록 CLIENT_OUT_OF_BAND_TELEMETRY_ENABLED 세션 속성을 추가했습니다.

  • locatorsUpdateCopy() 함수 호출을 위해 처리 방식을 개선했습니다. 이제 이 드라이버는 예외를 발생시키는 대신 FALSE 를 반환합니다.

  • S3 클라이언트에 대한 400 Bad Request 오류 처리를 업데이트하고 저장소 클라이언트의 PUT/GET 예외에 대한 최대 재시도 횟수(기본값: 7)를 구성하도록 putGetMaxRetries 연결 속성을 추가했습니다.

  • 청크 다운로드 성능을 개선하기 위해 DefaultResultStreamProvider.getResultChunk()httpMaxRetries 를 위한 지원을 추가했습니다.

버그 수정 사항

  • driver.getPropertyInfo() 호출 시 드라이버가 NPE(null 포인터 예외)를 잘못 발생시키는 문제를 수정했습니다.

  • Arrow 스트림에서 읽을 때 reader.LoadNextBatch() 가 때때로 ClosedByInterruptException 을 발생시키는 문제를 수정했습니다.

  • JDBC 드라이버가 S3 클라이언트에 대해 잘못된 프록시 설정을 사용하는 문제를 수정했습니다.

  • downloadStream() 함수가 일본어 문자가 포함된 파일 이름을 허용하지 않는 문제를 수정했습니다.

  • PUT/GET 파일 경로에 《~》가 허용되지 않는 문제를 수정했습니다.

  • Windows 파일 경로에 구성 파일 로깅을 위한 file:// 접두사가 포함된 경우 드라이버가 InvalidPathException을 발생시키는 문제를 수정했습니다.

버전 3.13.33(2023년 6월 14일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • MessageFormat.format 예외를 적절하게 처리합니다.

버전 3.13.32(2023년 5월 26일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • Java Runtime 8에 영향을 미치는 3.13.31에 발생한 버그를 수정했습니다.

버전 3.13.31(2023년 5월 25일)

참고

특히 Java Runtime 8에 영향을 미치는 버그를 발견한 경우 최신 버전으로 업데이트하십시오.

새로운 기능과 업데이트

  • HTAP(하이브리드 트랜잭션/분석 처리)를 강화했습니다.

  • 보안 업데이트를 받기 위해 org.apache.httpcomponents:httpclient 라이브러리를 버전 4.5.13으로 업그레이드했습니다.

버그 수정 사항

  • 청크 다운로드 요청에 대한 인증 시도 시간이 초과되는 문제를 수정했습니다.

  • Windows에서 구성 파일 구문 분석과 관련된 문제를 수정했습니다.

  • 크거나 작은 datetime 값과 관련된 int64 오버플로 문제를 수정했습니다.

  • SSL/TLS 오류로 인해 연결이 중단되었을 때 표시되는 오류 메시지를 개선했습니다.

  • useSessionTimezone 이 활성화된 경우 getTime() 함수가 잘못된 타임존을 기반으로 시간을 반환하는 문제를 수정했습니다.

  • ASCII Null 문자와 제어 문자가 jdbc_query_result_format=JSON 으로 설정된 resultset 에서 무작위로 삭제되는 문제를 수정했습니다.

버전 3.13.30(2023년 4월 18일)

새로운 기능과 업데이트

  • 다음 소프트웨어 라이브러리를 업그레이드했습니다.

    • slf4j-api 버전 1.7.25에서 버전 2.0.6으로

    • logback-classic 버전 1.2.3에서 버전 1.3.6으로

  • 중대하지 않은 《SEVERE: HTTP request took longer than 5 min》을 오류 메시지에서 경고 메시지로 변경했습니다.

  • JVM 프록시 설정에 대한 http.proxyProtocol 속성을 추가했습니다.

버그 수정 사항

  • 청크 다운로드 요청에 대한 인증 시도 시간이 초과되는 문제를 수정했습니다.

  • 연결 URL이 끊어지지 않았을 때 예외에 로그인 자격 증명이 표시되는 문제를 수정했습니다.

  • openResultSetsresultset 를 추가하기 전에 isClosed() 를 확인하여 메모리 누수 원인을 수정했습니다.

  • hostnames 가 일치하지 않을 때 오해의 소지가 있는 SAML2 어설션 오류 메시지가 전송되는 문제를 수정했습니다.

  • URL 인코딩된 OSCP 요청 관련 문제를 수정했습니다.

  • SnowflakeFileTransferAgent.uploadStream() 함수가 overwrite=false 옵션을 잘못 처리하는 문제를 수정했습니다.

  • metadata.etTableTypes() 메서드가 잘못된 테이블 유형을 반환하는 문제를 수정했습니다.

  • 비동기 쿼리 호출로 인해 쿼리가 실패하고 예외가 발생한 경우 트리거되는 예외 메시지에 SQL 오류 메시지를 노출하도록 드라이버를 업데이트했습니다.

  • get procedure 열 호출이 빈 결과 세트를 반환하는 드문 경우에 대한 검사를 추가했습니다.

  • SnowflakeConnectionString 구문 분석 오류와 관련된 로그 메시지에 대한 경고 수준을 디버그/정보로 변경했습니다.

  • JDBC 드라이버가 SSLHandshakeException 으로 인해 실패한 요청을 재시도하는 문제를 수정했습니다.

  • 사용자가 불법 액세스 경고를 비활성화할 수 있도록 snowflake.jdbc.enable.illegalAccessWarning 시스템 속성을 위한 지원을 추가했습니다.

  • gsc 업로드 파일 오류 메시지에 잘못된 정보를 표시할지 여부에 관한 문제를 수정했습니다.

  • 60초 후에 유휴 상태의 연결을 닫도록 기본 TTL 값을 변경했습니다.

  • 추가 describe 호출을 제거하여 준비된 문 ID 문제를 수정했습니다.

버전 3.13.29(2023년 3월 17일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • USE_STATEMENT_TYPE_CALL_FOR_STORED_PROC_CALLS=true 일 때 저장 프로시저 열 메타데이터에 대해 잘못된 열 유형 이름이 반환되는 문제를 수정했습니다.

  • 대상 파일 시스템의 공간 부족으로 인해 파일을 다운로드할 수 없을 때 JDBC가 GET 요청을 재시도하는 문제를 수정했습니다. 이제 이런 상황에서 드라이버는 예외를 발생시킵니다.

  • 404 리소스 오류가 발생한 경우 JDBC가 Azure 클라이언트에 대한 요청을 재시도하는 문제를 수정했습니다. 이제 이런 상황에서 드라이버는 예외를 발생시킵니다.

  • SQL 삽입 공격으로부터 보호하기 위해 이제 JDBC 드라이버는 DatabaseMetadata API의 패턴 검색 인자에서 따옴표를 이스케이프합니다.

  • 열에 NULL 값이 포함되어 있을 때 getClob() 호출에서 NullPointerException이 발생하는 문제를 수정했습니다. 이제는 열에 SQL NULL 값이 있을 때 드라이버는 NULL 을 반환합니다.

  • JDBC 드라이버가 SSO URL을 실행하기 전에 그 유효성을 검사하지 못하는 문제를 수정했습니다. 이제 이 드라이버는 URLValidatorURLEncoder 유틸리티를 사용하여 URL의 유효성 검사와 인코딩을 수행합니다.

버전 3.13.28(2023년 2월 22일)

새로운 기능과 업데이트

  • 없습니다.

버그 수정 사항

  • GEOMETRY 데이터가 포함된 메타데이터를 반환하는 metaData.getColumns() 함수를 호출할 때 발생하는 문제를 수정하기 위해 SnowflakeType 열거형에 GEOMETRY 데이터 타입을 위한 지원을 추가했습니다.

  • JDBC가 입력 스트림 업로드를 잘못 재시도했을 때 부분 파일 업로드를 유발하는 GCP uploadStream의 재시도 문제를 수정했습니다.

  • getProcedureColumns()getFunctionColumns() 함수 호출에 대해 resultset 를 반환하는 저장 함수 및 프로시저 관련 문제를 수정했습니다.

  • StreamLoader 가 과도한 로그 메시지를 생성하는 문제를 수정했습니다.

버전 3.13.27(2023년 1월 30일)

새로운 기능과 업데이트

  • 없음

버그 수정 사항

  • GET 및 PUT 작업 중에 가끔 발생하는 경합 상태를 수정했습니다.

  • HTTP 429 오류를 수신할 때 Okta 인증 사용이 실패하는 문제를 수정했습니다.