Release 478

Release 478 (2025-10-29)

Trino 478 릴리스의 변경 사항을 정리한 릴리스 노트예요. 전반적인 개선, 보안, Docker, 여러 커넥터 그리고 SPI의 변화를 다뤄요.

출처: 문서

본문

General

  • UNNEST 표현식에 사용된 컬럼에 대한 라인리지(lineage) 정보를 포함하도록 개선했어요. (#16946)
  • 사용자가 선택할 수 있는 재시도 정책(retry policy)을 제한하는 지원을 추가했어요. retry-policy.allowed 옵션으로 구성할 수 있어요. (#26628)
  • 여러 디렉토리에서 플러그인을 로드하는 지원을 추가했어요. (#26855)
  • 제대로 로드되지 못한 카탈로그도 삭제할 수 있게 했어요. (#26918)
  • varcharvarbinary 타입을 사용하는 ORDER BY 절이 있는 쿼리의 성능을 개선했어요. (#26725)
  • NOT MATCHED 케이스가 포함된 MERGE 문장의 성능을 개선했어요. (#26759)
  • 조인(join)이 디스크로 넘칠 때(spill) JOIN이 포함된 쿼리의 성능을 개선했어요. (#26076)
  • 쿼리가 row 타입을 사용할 때 잠재적인 잘못된 결과를 수정했어요. (#26806)
  • 로드에 실패한 카탈로그를 metadata.catalogs 테이블에 포함하도록 수정했어요. (#26918)
  • EXPLAIN ANALYZE 계획이 분석되는 쿼리를 실행하는 데 사용될 것과 같은 계획으로 실행되도록 수정했어요. (#26938)
  • row pattern recognition에서 논리적 탐색 함수 FIRST를 사용할 때 발생하는 잘못된 결과를 수정했어요. (#26981)

Security

  • queryId를 Open Policy Agent 인가자에 전파하도록 했어요. (#26851)

Docker image

  • Trino를 JDK 25.0.0(build 36)에서 실행하도록 변경했어요. (#26693)

Delta Lake connector

  • map item 값이 NULL일 때 map(..., json) 컬럼을 읽을 때 발생하는 실패를 수정했어요. (#26700)
  • gcs.use-access-token 구성 속성을 더 이상 사용하지 않도록(deprecate) 하고, gcs.auth-type을 사용하도록 안내해요. (#26681)

Google Sheets connector

  • gsheets.delegated-user-email 구성 속성을 사용할 때 발생할 수 있는 쿼리 실패를 수정했어요. (#26501)

Hive connector

  • 암호화된 Parquet 파일을 읽는 지원을 추가했어요. (#24517, #9383)
  • gcs.use-access-token 구성 속성을 더 이상 사용하지 않도록 하고, gcs.auth-type을 사용하도록 안내해요. (#26681)
  • $path 컬럼에 복잡한 조건자를 사용하는 쿼리의 성능을 개선했어요. (#27000)
  • 1582-10-15 이전의 날짜·타임스탬프가 Apache Hive에서 올바르게 읽히도록 ORC 파일 쓰기를 수정했어요. (#26507)
  • 메타스토어 가장(impersonation)이 활성화되었을 때 flush_metadata_cache 프로시저 실패를 수정했어요. (#27059)

Hudi connector

  • gcs.use-access-token 구성 속성을 더 이상 사용하지 않도록 하고, gcs.auth-type을 사용하도록 안내해요. (#26681)

Iceberg connector

  • 정렬된 테이블을 쓰고 iceberg.sorted-writing.local-staging-path가 설정되었을 때 성능을 개선했어요. (#24376)
  • 버킷 변환 파티셔닝을 가진 테이블에서 ALTER TABLE EXECUTE OPTIMIZE의 성능을 개선했어요. (#27104)
  • remove_orphan_files 명령 실행 중 실행 메트릭을 반환하도록 했어요. (#26661)
  • gcs.use-access-token 구성 속성을 더 이상 사용하지 않도록 하고, gcs.auth-type을 사용하도록 안내해요. (#26681)
  • 테이블 교체 시 모든 컬럼의 distinct 값 개수를 수집하도록 했어요. (#26983)
  • add_files_from_table 프로시저 실행 중 컬럼 수 불일치로 인한 실패를 수정했어요. (#26774)
  • 스냅샷이 없는 테이블에서 optimize_manifests를 실행할 때 발생하는 실패를 수정했어요. (#26970)
  • Hive에서 마이그레이션된 Avro 파일을 읽을 때 발생하는 잘못된 결과를 수정했어요. (#26863)
  • REST, Glue 또는 Nessie 카탈로그에서 지원되지 않는 속성을 가진 스키마에 대해 SHOW CREATE SCHEMA를 실행할 때 발생하는 실패를 수정했어요. (#24744)
  • OPTIMIZE 명령에서 EXPLAIN 또는 EXPLAIN ANALYZE를 실행할 때 발생하는 실패를 수정했어요. (#26598)

Kafka connector

  • 타임스탬프 오프셋으로 파티션을 필터링할 때 발생하는 실패를 수정했어요. (#26787)

SPI

  • Connector.shutdown()에서 기본 구현을 제거했어요. (#26718)
  • 더 이상 사용되지 않는 ConnectorSplit.getSplitInfo 메서드를 제거했어요. (#27063)
  • io.trino.spi.type.Type#appendTo 메서드를 더 이상 사용하지 않도록 했어요. (#26922)

더 알아보기 (Learn more)

이전 버전보다 더 새로운 변경 사항은 Release 479에서 확인해 보세요.