Trino 0.186 릴리스 노트
Trino 0.186 릴리스 노트
Trino 0.186 릴리스 노트입니다. 이번 릴리스에는 대규모 배포에서 HTTP 요청 시간 초과로 쿼리가 실패할 수 있는 안정성 문제가 있어요. 그 외 일반 개선 사항과 리소스 그룹, JDBC 드라이버, Hive, SPI 변경 사항이 들어 있어요.
출처: 문서
본문
경고: 이 릴리스에는 대규모 배포에서 HTTP 요청 시간 초과로 쿼리가 실패할 수 있는 안정성 문제가 있어요.
일반 (General)
- 맵에서 맵으로의 캐스팅으로 인한 과도한 GC 오버헤드를 수정했어요.
ROW타입에 대한 암시적 강제 변환을 수정해ROW(INTEGER)와ROW(BIGINT)같은 호환 타입 간 연산을 허용했어요.- 정규 표현식 같은 비싼 함수가 포함된 쿼리가 종료된 뒤에도 CPU 자원을 계속 사용하던 문제를 수정했어요.
- 중복 캐스팅으로 인한 성능 문제를 수정했어요.
json_parse()가 뒤쪽 문자를 무시하지 않도록 수정했어요. 이전에는[1,2]abc같은 입력이[1,2]로 성공적으로 파싱됐어요.- 실패한 쿼리에서 실행 중 쿼리 카운터가 누수되던 문제를 수정했어요. 시작 전에 실패한 쿼리에서 카운터가 증가만 하고 감소하지 않았어요.
- 대기 중이거나 데이터를 기다리는 쿼리에 대한 코디네이터 HTTP 스레드 사용을 줄였어요.
VARCHAR또는VARBINARY타입 데이터를 만들 때 메모리 사용량을 줄였어요.- 메모리 부족 오류를 피하기 위해
GROUP BY의 메모리 사용량을 더 정확하게 추정하도록 했어요. - 클라이언트 프로토콜에 대기 시간과 경과 시간을 추가했어요.
query_max_execution_time세션 속성과query.max-execution-time구성 속성을 추가했어요. 쿼리는 지정된 시간 이상 실행되면 중단돼요.inverse_normal_cdf()함수를 추가했어요.- Bing 타일 처리를 위한 함수를 포함한 지리공간(Geospatial) 함수를 추가했어요.
- 조인에 대한 디스크 스필(spill to disk)을 추가했어요.
- Redshift 커넥터를 추가했어요.
리소스 그룹 (Resource groups)
- Query Queues는 리소스 그룹을 위해 더 이상 사용되지(deprecated) 않으며 향후 릴리스에서 제거될 예정이에요.
maxRunning속성 이름을hardConcurrencyLimit으로 바꿨어요. 이전 속성 이름은 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정이에요.- JSON 구성 파일 로드 시 알 수 없는 속성 이름이 있으면 실패하도록 했어요.
JDBC 드라이버
- 빈 비밀번호를 지정할 수 있게 했어요.
QueryStats에getQueuedTimeMillis()와getElapsedTimeMillis()를 추가했어요.
Hive
- Kerberos 인증 사용 시
FileSystem closed오류를 수정했어요. - S3 파일 시스템에 대한 경로 스타일(path style) 접근을 지원해요.
hive.s3.path-style-access=true구성 속성을 설정하면 켤 수 있어요.
SPI
ConnectorMetadata::createTable()에ignoreExisting플래그를 추가했어요.RecordCursor와ConnectorPageSource에서getTotalBytes()메서드를 제거했어요.
참고: 이 변경 사항은 이전 SPI와 호환되지 않아요. 커넥터를 작성했다면 이 릴리스를 배포하기 전에 코드를 업데이트해야 해요.
더 알아보기 (Learn more)
Trino 0.186의 변경 사항을 더 자세히 확인하고 싶다면 공식 릴리스 노트를 참고해 주세요.