릴리스 0.126

릴리스 0.126 (Release 0.126)

이 릴리스에서는 일반 기능과 Hive 커넥터에 걸쳐 여러 수정과 개선이 들어 있어요. 오류 위치 정보, 파서·플래너 수정, 몇 가지 편의 기능 추가가 핵심이에요.

출처: 문서

본문

일반 (General)

  • 의미(semantic) 오류에 오류 위치 정보(행 번호와 열 번호)를 추가했어요.
  • 스키마가 선택되지 않은 상태에서 tab 완성 기능을 사용하다 CLI가 크래시하던 문제를 고쳤어요.
  • CLI에서 USE를 실행할 때 세션 프로퍼티가 리셋되던 문제를 고쳤어요.
  • 프로젝션 push down 최적화의 버그로 가끔 쿼리 계획 수립이 실패하던 문제를 고쳤어요.
  • 표현식에 POSITION(x in (y)) 형태가 포함됐을 때 파싱이 되지 않던 문제를 고쳤어요.
  • 정확도(accuracy) 파라미터를 받는 새 버전의 approx_percentile()을 추가했어요.
  • INSERT 쿼리에서 컬럼 이름을 지정할 수 있게 됐어요.
  • blackhole 커넥터에 field_length 테이블 프로퍼티를 추가해 생성되는 VARCHARVARBINARY 필드의 크기를 제어할 수 있게 했어요.
  • Teradata 함수 플러그인을 서버 패키지에 포함시켰어요.
  • 윈도우 함수를 사용하는 쿼리의 성능을 높일 수 있는 물리 프로퍼티 처리 방식을 개선했어요.
  • 인덱스 조인 조회와 캐시를 태스크 내에서 공유할지 제어하는 기능을 추가했어요. 이를 통해 인덱스 캐시 히트 또는 더 높은 CPU 병렬성을 최적화할 수 있어요. 이 옵션은 task.share-index-loading 설정 프로퍼티 또는 task_share_index_loading 세션 프로퍼티로 전환해요.
  • Tableau 웹 커넥터를 추가했어요.
  • 상수 값 목록이 큰 IN 표현식을 사용하는 쿼리의 성능을 개선했어요.
  • 모든 비교 가능하고 동등(equatable)한 타입에 대해 커넥터 프레디킷 push down을 활성화했어요.
  • UNNEST의 출력 컬럼에 GROUP BY, DISTINCT 같은 특정 연산을 사용할 때 쿼리 계획 수립이 실패하던 문제를 고쳤어요.
  • ExchangeClient에서 maxResponseSize를 설정값보다 약간 작게 잡아 PageTooLargeException이 발생할 가능성을 줄였어요.
  • 코디네이터의 메모리 누수를 고쳤어요.
  • 테이블 프로퍼티 이름에 대한 검증(validation)을 추가했어요.

Hive

  • Parquet에서 null을 포함하는 구조적 타입을 읽지 못하던 문제를 고쳤어요.
  • 타임존 오프셋이 음수일 때 DATE 타입을 쓰지 못하던 문제를 고쳤어요. 이전 버전에서는 날짜가 하루 어긋나게(off by one) 저장됐어요.
  • 기존 테이블에 추가한 VARCHAR 컬럼을 조회할 수 없던 문제를 고쳤어요.
  • 초기 split이 과도하게 생성되던 문제를 고쳤어요.
  • hive.immutable-partitions 설정 프로퍼티가 파티션되지 않은 테이블에도 적용되도록 고쳤어요.
  • DELETE 쿼리에서 VARCHAR가 아닌 컬럼을 허용하게 됐어요.
  • parquet 테이블에서 DATE 컬럼을 파티션 컬럼으로 지원하게 됐어요.
  • 파티션 컬럼이 테이블 컬럼이기도 한 경우의 오류 메시지를 개선했어요.

더 알아보기 (Learn more)

이어서 다음 릴리스 노트를 보면 버전별 변화 흐름을 파악할 수 있어요. 오류 위치 정보와 프레디킷 push down처럼 이어지는 개선 사항이 궁금하다면 릴리스 0.127로 이어가 보세요.