> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 2020 변경 로그

> 2020년 변경 로그

<div id="clickhouse-release-2012">
  ### ClickHouse 릴리스 20.12
</div>

<div id="clickhouse-release-v2012514-stable-2020-12-28">
  ### ClickHouse 릴리스 v20.12.5.14-안정, 2020-12-28
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 머지 중 AIO 쓰기를 비활성화했습니다. 머지 과정에서 프라이머리 키 컬럼에 매우 드물게 데이터 손상이 발생할 수 있기 때문입니다. [#18481](https://github.com/ClickHouse/ClickHouse/pull/18481) ([alesapin](https://github.com/alesapin)).
* `Nullable(String)` 유형의 인수로 `toType(...)` 함수(`toDate`, `toUInt32` 등)를 실행할 때 발생하던 `value is too short` 오류를 수정했습니다. 이제 이러한 함수는 파싱 오류가 발생하면 예외를 발생시키는 대신 `NULL`을 반환합니다. [#7673](https://github.com/ClickHouse/ClickHouse/issues/7673)을 수정합니다. [#18445](https://github.com/ClickHouse/ClickHouse/pull/18445) ([tavplubix](https://github.com/tavplubix)).
* wide에서 compact 파트로의 머지를 제한했습니다. 수직 병합에서는 이로 인해 결과 파트가 손상될 수 있었습니다. [#18381](https://github.com/ClickHouse/ClickHouse/pull/18381) ([Anton Popov](https://github.com/CurtizJ)).
* `system.settings_profile_elements` 테이블이 채워지는 방식을 수정했습니다. 이 PR은 [#18231](https://github.com/ClickHouse/ClickHouse/issues/18231)을 수정합니다. [#18379](https://github.com/ClickHouse/ClickHouse/pull/18379) ([Vitaly Baranov](https://github.com/vitlibar)).
* 2단계 집계를 사용할 때 `Distinct` combinator가 적용된 집계 함수에서 발생할 수 있는 크래시를 수정했습니다. [#17682](https://github.com/ClickHouse/ClickHouse/issues/17682)를 수정합니다. [#18365](https://github.com/ClickHouse/ClickHouse/pull/18365) ([Anton Popov](https://github.com/CurtizJ)).
* `MODIFY COLUMN ... REMOVE TTL` 쿼리가 실제로는 컬럼 TTL을 제거하지 않는 오류를 수정했습니다. [#18130](https://github.com/ClickHouse/ClickHouse/pull/18130) ([alesapin](https://github.com/alesapin)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 시간대 정보를 2020e로 업데이트했습니다. [#18531](https://github.com/ClickHouse/ClickHouse/pull/18531) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v201245-stable-2020-12-24">
  ### ClickHouse 릴리스 v20.12.4.5-안정, 2020-12-24
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 이중 IPv4/IPv6 스택을 사용하는 머신에서 서버가 `clickhouse-odbc-bridge` 프로세스에 연결할 수 없던 문제를 수정했습니다. 또한 ODBC 딕셔너리 업데이트 수행 시 잘못된 쿼리가 사용되거나 충돌이 발생하던 문제도 수정했습니다. [#14489](https://github.com/ClickHouse/ClickHouse/issues/14489)가 해결되었을 가능성이 있습니다. [#18278](https://github.com/ClickHouse/ClickHouse/pull/18278) ([Denis Glazachev](https://github.com/traceon)).
* Enum과 Int 타입 간 키 비교 문제를 수정했습니다. 이 수정으로 [#17989](https://github.com/ClickHouse/ClickHouse/issues/17989)가 해결됩니다. [#18214](https://github.com/ClickHouse/ClickHouse/pull/18214) ([Amos Bird](https://github.com/amosbird)).
* `MaterializeMySQL` 데이터베이스 엔진에서 고유 키 변환 중 발생하던 충돌을 수정했습니다. 이 수정으로 [#18186](https://github.com/ClickHouse/ClickHouse/issues/18186) 및 [#16372](https://github.com/ClickHouse/ClickHouse/issues/16372)가 해결됩니다. [#18211](https://github.com/ClickHouse/ClickHouse/pull/18211) ([Winter Zhang](https://github.com/zhang2014)).
* S3 URL 파싱 중 발생하던 `std::out_of_range: basic_string` 문제를 수정했습니다. [#18059](https://github.com/ClickHouse/ClickHouse/pull/18059) ([Vladimir Chebotarev](https://github.com/excitoon)).
* MaterializeMySQL에서 MySQL prefix 인덱스를 지원하지 않아 일부 테이블이 MySQL에서 ClickHouse로 동기화되지 않던 문제를 수정했습니다. 이 수정으로 [#15187](https://github.com/ClickHouse/ClickHouse/issues/15187) 및 [#17912](https://github.com/ClickHouse/ClickHouse/issues/17912)가 해결됩니다. [#17944](https://github.com/ClickHouse/ClickHouse/pull/17944) ([Winter Zhang](https://github.com/zhang2014)).
* 쿼리에 `ARRAY JOIN`이 포함된 경우 쿼리 최적화로 인해 잘못된 결과가 생성되던 문제를 수정했습니다. [#17887](https://github.com/ClickHouse/ClickHouse/pull/17887) ([sundyli](https://github.com/sundy-li)).
* `topK` 집계 함수에서 발생할 수 있던 segfault를 수정했습니다. 이 수정으로 [#17404](https://github.com/ClickHouse/ClickHouse/issues/17404)가 종료됩니다. [#17845](https://github.com/ClickHouse/ClickHouse/pull/17845) ([Maksim Kita](https://github.com/kitaisreal)).
* 서버가 데몬 모드로 실행될 때 `system.stack_trace` 테이블이 비어 있던 문제를 수정했습니다. [#17630](https://github.com/ClickHouse/ClickHouse/pull/17630) ([Amos Bird](https://github.com/amosbird)).

<div id="clickhouse-release-v201233-stable-2020-12-13">
  ### ClickHouse 릴리스 v20.12.3.3-안정, 2020-12-13
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 기본적으로 `use_compact_format_in_distributed_parts_names`를 활성화했습니다(자세한 내용은 참고 문서를 참조하십시오). [#16728](https://github.com/ClickHouse/ClickHouse/pull/16728) ([Azat Khuzhin](https://github.com/azat)).
* `File` engine을 사용하는 테이블을 생성할 때 파일 포맷 관련 사용자 설정(예: `format_csv_delimiter`)을 `SETTINGS` 절에서 허용하고, 이 설정을 모든 `INSERT` 및 `SELECT`에 사용합니다. 현재 사용자 세션에서 변경했거나 DML 쿼리 자체의 `SETTINGS` 절에 지정한 파일 포맷 설정은 더 이상 해당 쿼리에 영향을 주지 않습니다. [#16591](https://github.com/ClickHouse/ClickHouse/pull/16591) ([Alexander Kuzmenkov](https://github.com/akuzm)).

<div id="new-feature">
  #### 새로운 기능
</div>

* `*.xz` 압축/압축 해제 지원을 추가했습니다. 이제 `file()` 함수에서 `*.xz`를 사용할 수 있습니다. 이로써 [#8828](https://github.com/ClickHouse/ClickHouse/issues/8828)가 해결되었습니다. [#16578](https://github.com/ClickHouse/ClickHouse/pull/16578) ([Abi Palagashvili](https://github.com/fibersel)).
* `ALTER TABLE ... DROP|DETACH PART 'part_name'` 쿼리를 도입했습니다. [#15511](https://github.com/ClickHouse/ClickHouse/pull/15511) ([nvartolomei](https://github.com/nvartolomei)).
* 새로운 `ALTER UPDATE/DELETE IN PARTITION` 구문을 추가했습니다. [#13403](https://github.com/ClickHouse/ClickHouse/pull/13403) ([Vladimir Chebotarev](https://github.com/excitoon)).
* JSON 입력/출력 포맷을 사용할 때 이름이 지정된 Tuple을 JSON 객체로 포맷할 수 있도록 했습니다. 이 동작은 `output_format_json_named_tuples_as_objects` 설정으로 제어되며, 기본적으로 비활성화되어 있습니다. [#17175](https://github.com/ClickHouse/ClickHouse/pull/17175) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 기본적으로 TSV 및 CSV 포맷에서 enum 값을 해당 id로 입력할 수 있도록 했습니다. [#16834](https://github.com/ClickHouse/ClickHouse/pull/16834) ([Kruglov Pavel](https://github.com/Avogar)).
* 중첩 유형이 String인 경우 널 허용, LowCardinality, 배열, Tuple에 COLLATE 지원을 추가했습니다. 또한 ColumnString.cpp의 collation 관련 코드를 리팩터링했습니다. [#16273](https://github.com/ClickHouse/ClickHouse/pull/16273) ([Kruglov Pavel](https://github.com/Avogar)).
* 새로운 `tcpPort` 함수는 이 server가 수신 대기 중인 TCP 포트를 반환합니다. [#17134](https://github.com/ClickHouse/ClickHouse/pull/17134) ([Ivan](https://github.com/abyss7)).
* 새로운 수학 함수 `acosh`, `asinh`, `atan2`, `atanh`, `cosh`, `hypot`, `log1p`, `sinh`를 추가했습니다. [#16636](https://github.com/ClickHouse/ClickHouse/pull/16636) ([Konstantin Malanchev](https://github.com/hombit)).
* 서로 다른 레플리카 간에 머지를 분산해 실행할 수 있도록 했습니다. `execute_merges_on_single_replica_time_threshold` MergeTree setting을 도입했습니다. [#16424](https://github.com/ClickHouse/ClickHouse/pull/16424) ([filimonov](https://github.com/filimonov)).
* SQL 표준 호환성을 위해 `aggregate_functions_null_for_empty` 설정을 추가했습니다. 이 옵션은 쿼리의 모든 집계 함수를 재작성하여 각 함수에 `-OrNull` 접미사를 추가합니다. [10273](https://github.com/ClickHouse/ClickHouse/issues/10273)을 구현했습니다. [#16123](https://github.com/ClickHouse/ClickHouse/pull/16123) ([flynn](https://github.com/ucasFL)).
* DateTime 및 DateTime64 parsing이 문자열 Date 리터럴 포맷을 허용하도록 업데이트했습니다. [#16040](https://github.com/ClickHouse/ClickHouse/pull/16040) ([Maksim Kita](https://github.com/kitaisreal)).
* `clickhouse-client`에서 `--history_file` 매개변수를 사용해 이력 파일 경로를 변경할 수 있도록 했습니다. [#15960](https://github.com/ClickHouse/ClickHouse/pull/15960) ([Maksim Kita](https://github.com/kitaisreal)).

<div id="bug-fix">
  #### 버그 수정
</div>

* 매우 드문 경우 서버가 연결을 더 이상 수락하지 않을 수 있는 문제를 수정했습니다. [#17542](https://github.com/ClickHouse/ClickHouse/pull/17542) ([Amos Bird](https://github.com/amosbird)).
* Windows Subsystem for Linux에서 실행 중인 ClickHouse의 `Atomic` 데이터베이스에서 `RENAME` 쿼리를 실행할 때 발생하던 `Function not implemented` 오류를 수정했습니다. [#17661](https://github.com/ClickHouse/ClickHouse/issues/17661)을 해결합니다. [#17664](https://github.com/ClickHouse/ClickHouse/pull/17664) ([tavplubix](https://github.com/tavplubix)).
* `in_memory_parts_enable_wal`이 비활성화되어 있으면 WAL에서 파트를 복원하지 않습니다. [#17802](https://github.com/ClickHouse/ClickHouse/pull/17802) ([detailyang](https://github.com/detailyang)).
* MergeTreeWriterSettings의 `max_compress_block_size`가 `min_compress_block_size`로 잘못 초기화되던 문제를 수정했습니다. [#17833](https://github.com/ClickHouse/ClickHouse/pull/17833) ([flynn](https://github.com/ucasFL)).
* 삭제할 수 있는 최대 테이블 크기에 대한 Exception 메시지가 잘못 표시되었습니다. [#17764](https://github.com/ClickHouse/ClickHouse/pull/17764) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 공간이 부족한 상태에서 `Distributed` 테이블에 삽입할 때 발생할 수 있는 segfault를 수정했습니다. [#17737](https://github.com/ClickHouse/ClickHouse/pull/17737) ([tavplubix](https://github.com/tavplubix)).
* ClickHouse가 MySQL 서버에 대한 연결을 다시 수립하지 못하는 문제를 수정했습니다. [#17681](https://github.com/ClickHouse/ClickHouse/pull/17681) ([Alexander Kazakov](https://github.com/Akazz)).
* `pool_size` > 1일 때 race condition으로 인해 `ON CLUSTER` 쿼리를 실행하면 클러스터가 순환(교차) 복제 클러스터인지 여부를 잘못 판단할 수 있었습니다. 수정되었습니다. [#17640](https://github.com/ClickHouse/ClickHouse/pull/17640) ([tavplubix](https://github.com/tavplubix)).
* 예외 `fmt::v7::format_error`가 MergeTree 테이블에서 백그라운드에서 기록될 수 있습니다. 이로써 [#17613](https://github.com/ClickHouse/ClickHouse/issues/17613) 문제가 수정되었습니다. [#17615](https://github.com/ClickHouse/ClickHouse/pull/17615) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clickhouse-client를 대화형 모드에서 여러 줄 쿼리와 함께 사용할 때, 한 줄 주석이 쿼리 끝까지 잘못 이어지던 문제가 있었습니다. 이 변경으로 [#13654](https://github.com/ClickHouse/ClickHouse/issues/13654)가 수정되었습니다. [#17565](https://github.com/ClickHouse/ClickHouse/pull/17565) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 해당 mutation이 다른 레플리카에서 중단된 경우 alter 쿼리가 멈추는 문제를 수정했습니다. [#16953](https://github.com/ClickHouse/ClickHouse/issues/16953)를 해결했습니다. [#17499](https://github.com/ClickHouse/ClickHouse/pull/17499) ([alesapin](https://github.com/alesapin)).
* ClickHouse에서 마크 캐시 크기를 과소평가하던 문제를 수정했습니다. 마크가 있는 매우 작은 파일이 많을 때 발생할 수 있습니다. [#17496](https://github.com/ClickHouse/ClickHouse/pull/17496) ([alesapin](https://github.com/alesapin)).
* `optimize_redundant_functions_in_order_by` 설정이 활성화된 경우의 `ORDER BY` 문제를 수정했습니다. [#17471](https://github.com/ClickHouse/ClickHouse/pull/17471) ([Anton Popov](https://github.com/CurtizJ)).
* 잘못된 최적화로 인해 발생할 수 있었던 `DISTINCT` 이후의 중복 문제를 수정했습니다. [#17294](https://github.com/ClickHouse/ClickHouse/issues/17294)를 수정합니다. [#17296](https://github.com/ClickHouse/ClickHouse/pull/17296) ([li chengxiang](https://github.com/chengxianglibra)). [#17439](https://github.com/ClickHouse/ClickHouse/pull/17439) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `JOIN` 테이블에서 `LowCardinality` 타입을 읽는 중 발생하던 충돌을 수정했습니다. [#17228](https://github.com/ClickHouse/ClickHouse/issues/17228)를 해결했습니다. [#17397](https://github.com/ClickHouse/ClickHouse/pull/17397) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `toInt256(inf)`의 스택 오버플로우를 수정했습니다. Int256은 실험적 기능입니다. [#17235](https://github.com/ClickHouse/ClickHouse/issues/17235)를 닫았습니다. [#17257](https://github.com/ClickHouse/ClickHouse/pull/17257) ([flynn](https://github.com/ucasFL)).
* `LIMIT`가 있는 분산 쿼리에서 `Unexpected packet Data received from client` 오류가 기록될 수 있던 문제를 수정했습니다. [#17254](https://github.com/ClickHouse/ClickHouse/pull/17254) ([Azat Khuzhin](https://github.com/azat)).
* 서브쿼리에 const 컬럼이 있을 때 Set 인덱스가 잘못 무효화되는 문제를 수정했습니다. 이로써 [#17246](https://github.com/ClickHouse/ClickHouse/issues/17246) 문제가 해결되었습니다. [#17249](https://github.com/ClickHouse/ClickHouse/pull/17249) ([Amos Bird](https://github.com/amosbird)).
* 인덱스 비교의 타입이 서로 다를 때 발생할 수 있는 잘못된 인덱스 분석 문제를 수정합니다. 이 수정으로 [#17122](https://github.com/ClickHouse/ClickHouse/issues/17122)를 해결합니다. [#17145](https://github.com/ClickHouse/ClickHouse/pull/17145) ([Amos Bird](https://github.com/amosbird)).
* 충돌을 유발하는 ColumnConst 비교를 수정했습니다. 이로써 [#17088](https://github.com/ClickHouse/ClickHouse/issues/17088)이 해결되었습니다. [#17135](https://github.com/ClickHouse/ClickHouse/pull/17135) ([Amos Bird](https://github.com/amosbird)).
* MaterializeMySQL(실험적 기능)과 관련된 여러 문제가 수정되었습니다. [#16923](https://github.com/ClickHouse/ClickHouse/issues/16923) 수정. [#15883](https://github.com/ClickHouse/ClickHouse/issues/15883) 수정. MySQL binlog\_checksum을 변경할 때 MaterializeMySQL SYNC가 실패하던 문제를 수정했습니다. [#17091](https://github.com/ClickHouse/ClickHouse/pull/17091) ([Winter Zhang](https://github.com/zhang2014)).
* 리더가 아닌 ReplicatedMergeTree 테이블에서 `ON CLUSTER` 쿼리가 무기한 대기 상태에 빠질 수 있는 버그를 수정했습니다. [#17089](https://github.com/ClickHouse/ClickHouse/pull/17089) ([alesapin](https://github.com/alesapin)).
* `some_table`이 `AS table_function()`으로 생성된 경우, `CREATE TABLE ... AS some_table` 쿼리에서 발생하던 크래시를 수정했습니다. [#16944](https://github.com/ClickHouse/ClickHouse/issues/16944)을 해결합니다. [#17072](https://github.com/ClickHouse/ClickHouse/pull/17072) ([tavplubix](https://github.com/tavplubix)).
* `fuzzBits` 함수의 미완성 구현과 관련된 버그 수정, 관련 이슈: [#16980](https://github.com/ClickHouse/ClickHouse/issues/16980). [#17051](https://github.com/ClickHouse/ClickHouse/pull/17051) ([hexiaoting](https://github.com/hexiaoting)).
* CFA 레지스터가 RAX인 경우의 LLVM's libunwind 문제를 수정했습니다. 이는 [LLVM's libunwind](https://github.com/llvm/llvm-project/tree/master/libunwind)의 [버그](https://bugs.llvm.org/show_bug.cgi?id=48186)입니다. 이 버그에 대한 우회 방법은 이미 있습니다. [#17046](https://github.com/ClickHouse/ClickHouse/pull/17046) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 실행 도중 취소될 수 있는 원격 쿼리(예: `LIMIT`가 있는 쿼리)에서 발생하는 불필요한 네트워크 오류를 방지했습니다. [#17006](https://github.com/ClickHouse/ClickHouse/pull/17006) ([Azat Khuzhin](https://github.com/azat)).
* OFFSET만 있는 쿼리에서 `optimize_distributed_group_by_sharding_key` 설정(기본적으로 비활성화됨) 문제를 수정했습니다. [#16996](https://github.com/ClickHouse/ClickHouse/pull/16996) ([Azat Khuzhin](https://github.com/azat)).
* JOIN 사용 시 분산 테이블 위의 Merge 테이블 관련 수정. [#16993](https://github.com/ClickHouse/ClickHouse/pull/16993) ([Azat Khuzhin](https://github.com/azat)).
* double을 큰 정수(128비트, 256비트)로 캐스팅할 때 발생하던 잘못된 결과를 수정했습니다. 큰 정수 지원은 실험적입니다. [#16986](https://github.com/ClickHouse/ClickHouse/pull/16986) ([Mike](https://github.com/myrrc)).
* `ALTER TABLE ... MODIFY COLUMN ... NewType` 이후, 변경 중인 컬럼에 대한 `WHERE` 표현식이 포함된 `SELECT`가 있고 ALTER가 아직 완료되지 않았을 때 발생할 수 있는 서버 충돌을 수정했습니다. [#16968](https://github.com/ClickHouse/ClickHouse/pull/16968) ([Amos Bird](https://github.com/amosbird)).
* `clickhouse-git-import`에서 blame 정보가 제대로 계산되지 않았습니다. [#16959](https://github.com/ClickHouse/ClickHouse/pull/16959) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 단조 함수의 ORDER BY 최적화를 수정했습니다. [#16107](https://github.com/ClickHouse/ClickHouse/issues/16107)을 해결했습니다. [#16956](https://github.com/ClickHouse/ClickHouse/pull/16956) ([Anton Popov](https://github.com/CurtizJ)).
* `optimize_aggregators_of_group_by_keys` 설정이 활성화된 상태에서 group by 최적화와 조인을 수정했습니다. [#12604](https://github.com/ClickHouse/ClickHouse/issues/12604)를 수정했습니다. [#16951](https://github.com/ClickHouse/ClickHouse/pull/16951) ([Anton Popov](https://github.com/CurtizJ)).
* `ORDER BY`가 있는 쿼리에서 발생할 수 있는 `Illegal type of argument` 오류를 수정했습니다. [#16580](https://github.com/ClickHouse/ClickHouse/issues/16580)를 수정했습니다. [#16928](https://github.com/ClickHouse/ClickHouse/pull/16928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* InterpreterShowAccessQuery에서 이상 동작을 유발하던 코드를 수정했습니다. [#16866](https://github.com/ClickHouse/ClickHouse/pull/16866) ([tavplubix](https://github.com/tavplubix)).
* `timeSeriesGroupSum` 함수를 사용할 때 ClickHouse 서버가 충돌하는 문제를 방지했습니다. 이 함수는 최신 ClickHouse 릴리스에서 제거되었습니다. [#16865](https://github.com/ClickHouse/ClickHouse/pull/16865) ([filimonov](https://github.com/filimonov)).
* 쿼리 프로파일러가 활성화된 상태에서, 일부 함수의 비동기 unwind 테이블에 문제가 있는 것으로 추정되는 glibc 버전의 OS에 ClickHouse가 설치된 경우 드물게 아무 메시지 없이 발생하던 크래시를 수정했습니다. 이로써 [#15301](https://github.com/ClickHouse/ClickHouse/issues/15301)이 수정되었습니다. 이로써 [#13098](https://github.com/ClickHouse/ClickHouse/issues/13098)이 수정되었습니다. [#16846](https://github.com/ClickHouse/ClickHouse/pull/16846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 인수 없이 `any`를 사용할 때 발생하는 충돌을 수정했습니다. [#16803](https://github.com/ClickHouse/ClickHouse/issues/16803) 관련입니다. cc @azat. [#16826](https://github.com/ClickHouse/ClickHouse/pull/16826) ([Amos Bird](https://github.com/amosbird)).
* 디스크에 테이블 메타데이터를 기록하는 중 메모리를 할당할 수 없으면 손상된 메타데이터 파일이 기록될 수 있습니다. [#16772](https://github.com/ClickHouse/ClickHouse/pull/16772) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 파티션 프레디케이트를 사용하는 단순한 쿼리 최적화를 수정했습니다. [#16767](https://github.com/ClickHouse/ClickHouse/pull/16767) ([Azat Khuzhin](https://github.com/azat)).
* `transform_null_in` 설정이 활성화된 상태에서 여러 컬럼과 튜플에 대한 `IN` 연산자 문제를 수정했습니다. [#15310](https://github.com/ClickHouse/ClickHouse/issues/15310)을 해결했습니다. [#16722](https://github.com/ClickHouse/ClickHouse/pull/16722) ([Anton Popov](https://github.com/CurtizJ)).
* MySQL 프로토콜을 통한 INSERT 쿼리에서 영향받은 행 수를 반환합니다. 이전에는 ClickHouse가 항상 0을 반환하도록 되어 있었으나, 수정되었습니다. [#16605](https://github.com/ClickHouse/ClickHouse/issues/16605)를 수정했습니다. [#16715](https://github.com/ClickHouse/ClickHouse/pull/16715) ([Winter Zhang](https://github.com/zhang2014)).
* 'if' 접미사 집계 함수를 사용할 때 발생하던 원격 쿼리 실패를 수정했습니다. [#16574](https://github.com/ClickHouse/ClickHouse/issues/16574) 수정 [#16231](https://github.com/ClickHouse/ClickHouse/issues/16231) 수정 [#16610](https://github.com/ClickHouse/ClickHouse/pull/16610) ([Winter Zhang](https://github.com/zhang2014)).
* 최적화된 단순 count 쿼리 및 system.tables에서 `select_sequential_consistency`로 인해 발생하던 일관성 없는 동작을 수정했습니다. [#16309](https://github.com/ClickHouse/ClickHouse/pull/16309) ([Hao Chen](https://github.com/haoch)).

<div id="improvement">
  #### 개선 사항
</div>

* TTL, mutation 또는 축약 머지 알고리즘으로 정리된 뒤 남은 빈 파트를 제거합니다. [#16895](https://github.com/ClickHouse/ClickHouse/pull/16895) ([Anton Popov](https://github.com/CurtizJ)).
* 분산 테이블에서 비동기 전송 시 디렉터리에 compact 포맷을 사용하도록 했습니다: `use_compact_format_in_distributed_parts_names`의 기본값은 1입니다. [#16788](https://github.com/ClickHouse/ClickHouse/pull/16788) ([Azat Khuzhin](https://github.com/azat)).
* S3에 데이터가 기록되지 않은 경우 멀티파트 업로드를 중단하도록 변경했습니다. [#16840](https://github.com/ClickHouse/ClickHouse/pull/16840) ([Pavel Kovalenko](https://github.com/Jokser)).
* 오류 발생 시 `format_avro_schema_registry_url`의 IP를 다시 확인하도록 개선했습니다. [#16985](https://github.com/ClickHouse/ClickHouse/pull/16985) ([filimonov](https://github.com/filimonov)).
* system.distribution\_queue의 data\_path에 있는 비밀번호를 마스킹합니다. [#16727](https://github.com/ClickHouse/ClickHouse/pull/16727) ([Azat Khuzhin](https://github.com/azat)).
* 컬럼 변환기로 존재하지 않는 컬럼을 대체하려고 하면 오류를 발생시킵니다. [#16183](https://github.com/ClickHouse/ClickHouse/pull/16183) ([hexiaoting](https://github.com/hexiaoting)).
* 모든 스레드가 동시에 작업하기에 메모리가 충분하지 않으면 병렬 파싱을 비활성화합니다. 또한 파싱할 각 청크는 독립적인 문자열 집합(하나 이상)이어야 하므로, 매우 큰 행(> min\_chunk\_bytes\_for\_parallel\_parsing)을 삽입하려고 하면 "Memory limit exceeded"와 같은 예외가 발생할 수 있습니다. [#16721](https://github.com/ClickHouse/ClickHouse/pull/16721) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 설치 스크립트는 항상 config 폴더에 하위 디렉터리를 생성해야 합니다. 이는 사용자 지정 config를 사용하는 Docker build에만 해당합니다. [#16936](https://github.com/ClickHouse/ClickHouse/pull/16936) ([filimonov](https://github.com/filimonov)).
* JSONEachRow, JSONCompactEachRow 및 RegexpRow 입력 형식의 오류 메시지 문법을 바로잡았습니다. [#17205](https://github.com/ClickHouse/ClickHouse/pull/17205) ([nico piderman](https://github.com/sneako)).
* `SOURCE(CLICKHOUSE(...))`의 기본 `host` 및 `port` 매개변수를 현재 인스턴스로 설정하고, 기본 `user` 값은 `'default'`로 설정했습니다. [#16997](https://github.com/ClickHouse/ClickHouse/pull/16997) ([vdimir](https://github.com/vdimir)).
* `ATTACH/DETACH TABLE <DICTIONARY>`를 수행할 때 유용한 정보를 담은 오류 메시지를 표시하도록 했습니다. 이 PR 이전에는 `detach table <dict>`가 동작했지만, 그 결과 인메모리 메타데이터가 잘못된 형식이 되었습니다. [#16885](https://github.com/ClickHouse/ClickHouse/pull/16885) ([Amos Bird](https://github.com/amosbird)).
* cutToFirstSignificantSubdomainWithWWW() 함수를 추가했습니다. [#16845](https://github.com/ClickHouse/ClickHouse/pull/16845) ([Azat Khuzhin](https://github.com/azat)).
* 잘못된 설정이 지정되면 Server가 예외 메시지와 함께 시작되지 않도록 개선했습니다 (`metric_log`.`collect_interval_milliseconds` is missing). [#16815](https://github.com/ClickHouse/ClickHouse/pull/16815) ([Ivan](https://github.com/abyss7)).
* 분산 DDL 구성이 없을 때 표시되는 예외 메시지를 개선했습니다. 이로써 [#5075](https://github.com/ClickHouse/ClickHouse/issues/5075)가 수정되었습니다. [#16769](https://github.com/ClickHouse/ClickHouse/pull/16769) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 사용성 개선: `CREATE TABLE` 쿼리에서 `CODEC` 표현식이 잘못된 위치에 있을 때 구문 오류 메시지에 더 나은 제안을 표시하도록 개선했습니다. 이로써 [#12493](https://github.com/ClickHouse/ClickHouse/issues/12493)를 수정했습니다. [#16768](https://github.com/ClickHouse/ClickHouse/pull/16768) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Distributed 엔진 시작 시 async INSERT용 빈 디렉터리를 삭제합니다. [#16729](https://github.com/ClickHouse/ClickHouse/pull/16729) ([Azat Khuzhin](https://github.com/azat)).
* 프록시로 nginx server를 사용할 때 S3를 사용하기 위한 우회 방법입니다. 현재 Nginx는 `http://domain.com?delete`처럼 빈 경로가 있는 URL을 허용하지 않지만, 기본 aws-sdk-cpp는 이런 형태의 URL을 생성합니다. 이 커밋에서는 패치된 aws-sdk-cpp 버전을 사용하여, 이런 경우 `http://domain.com/?delete`처럼 경로에 "/"가 포함된 URL을 생성하도록 했습니다. [#16709](https://github.com/ClickHouse/ClickHouse/pull/16709) ([ianton-ru](https://github.com/ianton-ru)).
* 동일한 크기의 정수와 부동소수점 수에서 `reinterpretAs*` 함수가 작동하도록 허용합니다. [16640](https://github.com/ClickHouse/ClickHouse/issues/16640)을 구현합니다. [#16657](https://github.com/ClickHouse/ClickHouse/pull/16657) ([flynn](https://github.com/ucasFL)).
* 이제 `config.xml`에서 `<auxiliary_zookeepers>` 구성을 변경하고 서버를 재시작하지 않고도 다시 로드할 수 있습니다. [#16627](https://github.com/ClickHouse/ClickHouse/pull/16627) ([Amos Bird](https://github.com/amosbird)).
* 원격 리소스에 대한 https 연결에서 SNI를 지원합니다. 이를 통해 SNI가 필요한 Cloudflare 서버에 연결할 수 있게 됩니다. 이 변경으로 [#10055](https://github.com/ClickHouse/ClickHouse/issues/10055) 문제가 수정됩니다. [#16252](https://github.com/ClickHouse/ClickHouse/pull/16252) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SNI가 필요한 `clickhouse-server` 보안 엔드포인트에 연결할 수 있게 했습니다. 이 기능은 `clickhouse-server`가 TLS 프록시 뒤에서 호스팅될 때 사용할 수 있습니다. [#16938](https://github.com/ClickHouse/ClickHouse/pull/16938) ([filimonov](https://github.com/filimonov)).
* 구체화된 뷰(materialized view) 간에 루프가 생성될 때 발생할 수 있는 스택 오버플로우 문제를 수정했습니다. 이로써 [#15732](https://github.com/ClickHouse/ClickHouse/issues/15732)가 해결되었습니다. [#16048](https://github.com/ClickHouse/ClickHouse/pull/16048) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MergeTree 테이블 엔진 계열의 백그라운드 작업 처리 구현을 간소화했습니다. 사용자에게 보이는 변경 사항은 없습니다. [#15983](https://github.com/ClickHouse/ClickHouse/pull/15983) ([alesapin](https://github.com/alesapin)).
* MaterializeMySQL(실험적 기능) 개선. MySQL 동기화 사용자에게 적절한 동기화 권한이 없으면 예외를 발생시킵니다. [#15977](https://github.com/ClickHouse/ClickHouse/pull/15977) ([TCeason](https://github.com/TCeason)).
* `indexOf()`가 BloomFilter를 사용하도록 개선했습니다. [#14977](https://github.com/ClickHouse/ClickHouse/pull/14977) ([achimbab](https://github.com/achimbab)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 부분 정렬이라는 ClickHouse 사용 사례에는 Floyd-Rivest 알고리즘이 가장 적합하므로 이를 사용합니다. 벤치마크는 [https://github.com/danlark1/miniselect](https://github.com/danlark1/miniselect) 및 [여기](https://drive.google.com/drive/folders/1DHEaeXgZuX6AJ9eByeZ8iQVQv0ueP8XM)에서 확인할 수 있습니다. [#16825](https://github.com/ClickHouse/ClickHouse/pull/16825) ([Danila Kutenin](https://github.com/danlark1)).
* 이제 `ReplicatedMergeTree` 엔진 제품군은 복제 fetch 작업을 위해 별도의 스레드 풀을 사용합니다. 이 풀의 크기는 `background_fetches_pool_size` 설정으로 제한되며, server를 재시작하면 조정할 수 있습니다. 이 설정의 기본값은 3이며, 최대 3개의 fetch를 병렬로 수행할 수 있음을 의미합니다(10G 네트워크를 활용할 수 있음). #520을 수정했습니다. [#16390](https://github.com/ClickHouse/ClickHouse/pull/16390) ([alesapin](https://github.com/alesapin)).
* `quantileTDigest` 상태가 제어되지 않고 커지던 문제를 수정했습니다. [#16680](https://github.com/ClickHouse/ClickHouse/pull/16680) ([hrissan](https://github.com/hrissan)).
* `EXPLAIN`에 `VIEW` 서브쿼리 설명을 추가했습니다. `VIEW`에 대한 push down 최적화를 제한했습니다. 쿼리 계획에 `Distributed`의 로컬 레플리카를 추가했습니다. [#14936](https://github.com/ClickHouse/ClickHouse/pull/14936) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* max\_threads > 0이고 ORDER BY에 표현식이 있을 때의 optimize\_read\_in\_order/optimize\_aggregation\_in\_order 문제를 수정했습니다. [#16637](https://github.com/ClickHouse/ClickHouse/pull/16637) ([Azat Khuzhin](https://github.com/azat)).
* 매우 많은 `MergeTree` 테이블에 대한 `Merge` 테이블의 읽기 성능 문제를 수정했습니다. [#7748](https://github.com/ClickHouse/ClickHouse/issues/7748)을 수정했습니다. [#16988](https://github.com/ClickHouse/ClickHouse/pull/16988) ([Anton Popov](https://github.com/CurtizJ)).
* 이제 정확히 일치하는 경우 파티션을 안전하게 가지치기할 수 있습니다. 유용한 예로, 테이블이 `intHash64(x) % 100`으로 파티셔닝되어 있고 쿼리에 x가 아니라 `intHash64(x) % 100` 자체에 대한 조건이 있는 경우가 있습니다. [#16253](https://github.com/ClickHouse/ClickHouse/pull/16253) ([Amos Bird](https://github.com/amosbird)).

<div id="experimental-feature">
  #### 실험적 기능
</div>

* `EmbeddedRocksDB` 테이블 엔진을 추가했습니다(딕셔너리에 사용할 수 있습니다). [#15073](https://github.com/ClickHouse/ClickHouse/pull/15073) ([sundyli](https://github.com/sundy-li)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 테스트 커버리지용 빌드 이미지를 개선했습니다. [#17233](https://github.com/ClickHouse/ClickHouse/pull/17233) ([alesapin](https://github.com/alesapin)).
* 내장 시간대 데이터를 2020d 버전으로 업데이트했습니다(cctz도 최신 master로 업데이트했습니다). [#17204](https://github.com/ClickHouse/ClickHouse/pull/17204) ([filimonov](https://github.com/filimonov)).
* Poco에서 발생한 UBSan 리포트를 수정했습니다. 이로써 [#12719](https://github.com/ClickHouse/ClickHouse/issues/12719)이 해결되었습니다. [#16765](https://github.com/ClickHouse/ClickHouse/pull/16765) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 타사 라이브러리에는 UBSan 계측을 적용하지 않도록 했습니다. [#16764](https://github.com/ClickHouse/ClickHouse/pull/16764) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* cache 딕셔너리에서 발생한 UBSan 리포트를 수정했습니다. 이로써 [#12641](https://github.com/ClickHouse/ClickHouse/issues/12641)이 해결되었습니다. [#16763](https://github.com/ClickHouse/ClickHouse/pull/16763) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 무한대 부동소수점 수를 정수로 변환하려고 할 때 발생하는 UBSan 리포트를 수정했습니다. 이로써 [#14190](https://github.com/ClickHouse/ClickHouse/issues/14190)이 해결되었습니다. [#16677](https://github.com/ClickHouse/ClickHouse/pull/16677) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="clickhouse-release-2011">
  ## ClickHouse 릴리스 20.11
</div>

<div id="clickhouse-release-v2011716-stable-2021-03-02">
  ### ClickHouse 릴리스 v20.11.7.16-안정, 2021-03-02
</div>

<div id="improvement">
  #### 개선 사항
</div>

* clickhouse-server 이미지에서 clickhouse 사용자 및 그룹의 uid / gid를 고정값(101)으로 명시적으로 설정했습니다. [#19096](https://github.com/ClickHouse/ClickHouse/pull/19096) ([filimonov](https://github.com/filimonov)).

<div id="bug-fix">
  #### 버그 수정
</div>

* BloomFilter 인덱스 비정상 종료 문제 수정. [#19757](https://github.com/ClickHouse/ClickHouse/issues/19757)을 수정했습니다. [#19884](https://github.com/ClickHouse/ClickHouse/pull/19884) ([Maksim Kita](https://github.com/kitaisreal)).
* system.text\_log가 활성화된 경우 데드락이 발생할 수 있었습니다. 이로써 [#19874](https://github.com/ClickHouse/ClickHouse/issues/19874)가 수정되었습니다. [#19875](https://github.com/ClickHouse/ClickHouse/pull/19875) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이전 버전에서는 함수 `arrayEnumerateUniq`에 비정상적인 인수가 사용되면 충돌이나 무한 루프가 발생할 수 있었습니다. 이로써 [#19787](https://github.com/ClickHouse/ClickHouse/issues/19787)이 해결되었습니다. [#19788](https://github.com/ClickHouse/ClickHouse/pull/19788) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 산술 유형과 문자열 유형을 정확하게 비교할 때 발생하던 스택 오버플로우를 수정했습니다. [#19773](https://github.com/ClickHouse/ClickHouse/pull/19773) ([tavplubix](https://github.com/tavplubix)).
* `bitmapAndnot` 함수의 세그멘테이션 폴트를 수정했습니다. [#19668](https://github.com/ClickHouse/ClickHouse/issues/19668)을 해결합니다. [#19713](https://github.com/ClickHouse/ClickHouse/pull/19713) ([Maksim Kita](https://github.com/kitaisreal)).
* 큰 정수를 사용하는 일부 함수에서 segfault가 발생할 수 있습니다. 큰 정수는 실험적 기능입니다. 이 문제는 [#19667](https://github.com/ClickHouse/ClickHouse/issues/19667)에서 해결되었습니다. [#19672](https://github.com/ClickHouse/ClickHouse/pull/19672) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCardinality` 인수에서 함수 `neighbor`가 잘못된 결과를 반환하던 문제를 수정했습니다. [#10333](https://github.com/ClickHouse/ClickHouse/issues/10333)를 수정합니다. [#19617](https://github.com/ClickHouse/ClickHouse/pull/19617) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* disconnect 후 Connection에서 CompressedWriteBuffer의 use-after-free 문제를 수정했습니다. [#19599](https://github.com/ClickHouse/ClickHouse/pull/19599) ([Azat Khuzhin](https://github.com/azat)).
* `DROP/DETACH TABLE table ON CLUSTER cluster SYNC` 쿼리가 멈출 수 있던 문제가 수정되었습니다. [#19568](https://github.com/ClickHouse/ClickHouse/issues/19568)을 해결했습니다. [#19572](https://github.com/ClickHouse/ClickHouse/pull/19572) ([tavplubix](https://github.com/tavplubix)).
* CREATE DICTIONARY 쿼리의 id 표현식 수정. [#19571](https://github.com/ClickHouse/ClickHouse/pull/19571) ([Maksim Kita](https://github.com/kitaisreal)).
* merge\_tree\_min\_rows\_for\_concurrent\_read/merge\_tree\_min\_bytes\_for\_concurrent\_read=0/UINT64\_MAX일 때 발생하던 SIGSEGV를 수정했습니다. [#19528](https://github.com/ClickHouse/ClickHouse/pull/19528) ([Azat Khuzhin](https://github.com/azat)).
* `addMonth` 함수가 악의적으로 조작된 인수로 호출될 경우 메모리 읽기 중 버퍼 오버플로우가 발생할 수 있었습니다. 이 수정은 [#19441](https://github.com/ClickHouse/ClickHouse/issues/19441)을 해결합니다. 이 수정은 [#19413](https://github.com/ClickHouse/ClickHouse/issues/19413)도 해결합니다. [#19472](https://github.com/ClickHouse/ClickHouse/pull/19472) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 파일 중 하나에 빈 데이터 블록이 있으면 분산 배치를 손상된 상태로 표시합니다. [#19449](https://github.com/ClickHouse/ClickHouse/pull/19449) ([Azat Khuzhin](https://github.com/azat)).
* Uber H3 라이브러리에서 발생할 수 있는 버퍼 오버플로우를 수정했습니다. [https://github.com/uber/h3/issues/392를](https://github.com/uber/h3/issues/392를) 참조하십시오. 이로써 [#19219](https://github.com/ClickHouse/ClickHouse/issues/19219)가 해결됩니다. [#19383](https://github.com/ClickHouse/ClickHouse/pull/19383) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* system.parts \_state 컬럼 수정(잘못된 순서 때문에 이 컬럼을 쿼리할 때 LOGICAL\_ERROR가 발생하던 문제). [#19346](https://github.com/ClickHouse/ClickHouse/pull/19346) ([Azat Khuzhin](https://github.com/azat)).
* 오류 `Cannot convert column now64() because it is constant but values of constants are different in source and result`를 수정했습니다. [#7156](https://github.com/ClickHouse/ClickHouse/issues/7156)의 후속 수정입니다. [#19316](https://github.com/ClickHouse/ClickHouse/pull/19316) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ReplicatedMergeTree 테이블 처리 중 동시에 실행되는 `ALTER` 및 `DROP` 쿼리가 멈출 수 있던 버그를 수정했습니다. [#19237](https://github.com/ClickHouse/ClickHouse/pull/19237) ([alesapin](https://github.com/alesapin)).
* `ORC` 포맷 파일을 무한히 읽던 문제를 수정했습니다([#10580](https://github.com/ClickHouse/ClickHouse/issues/10580)에서 도입됨). [#19095](https://github.com/ClickHouse/ClickHouse/issues/19095) 문제를 해결했습니다. [#19134](https://github.com/ClickHouse/ClickHouse/pull/19134) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ClickHouse가 `LowCardinality(Nullable(...))`에서 압축 코덱을 읽지 못해 `Attempt to read after EOF` Exception을 발생시키던 시작 시 버그를 수정했습니다. 문제 [#18340](https://github.com/ClickHouse/ClickHouse/issues/18340)을 수정했습니다. [#19101](https://github.com/ClickHouse/ClickHouse/pull/19101) ([alesapin](https://github.com/alesapin)).
* `Template` 또는 `CustomSeparated` 포맷을 사용해 HTTP 인터페이스로 데이터를 삽입할 때 발생하던 `There is no checkpoint` 오류를 수정했습니다. [#19021](https://github.com/ClickHouse/ClickHouse/issues/19021)을 해결합니다. [#19072](https://github.com/ClickHouse/ClickHouse/pull/19072) ([tavplubix](https://github.com/tavplubix)).
* 이전 구문으로 생성된 `MergeTree` 테이블의 `MODIFY TTL` 쿼리를 제한합니다. 이전에는 해당 쿼리가 성공했지만, 실제로는 아무런 효과가 없었습니다. [#19064](https://github.com/ClickHouse/ClickHouse/pull/19064) ([Anton Popov](https://github.com/CurtizJ)).
* `groupUniqArray`가 Enum 유형 인수에 대해 올바른 유형을 반환하도록 수정했습니다. 이로써 [#17875](https://github.com/ClickHouse/ClickHouse/issues/17875)가 해결되었습니다. [#19019](https://github.com/ClickHouse/ClickHouse/pull/19019) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `ignore` 함수를 `LowCardinality` 인수와 함께 사용할 때 발생할 수 있는 오류 `Expected single dictionary argument for function`를 수정했습니다. [#14275](https://github.com/ClickHouse/ClickHouse/issues/14275)를 수정했습니다. [#19016](https://github.com/ClickHouse/ClickHouse/pull/19016) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `TinyLog` 엔진이 있는 테이블에 `LowCardinality` 컬럼을 삽입할 때 발생하던 문제를 수정했습니다. [#18629](https://github.com/ClickHouse/ClickHouse/issues/18629)을 수정합니다. [#19010](https://github.com/ClickHouse/ClickHouse/pull/19010) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 최적화가 항상 정확한 것은 아니므로 `optimize_move_functions_out_of_any`를 비활성화합니다. 이로써 [#18051](https://github.com/ClickHouse/ClickHouse/issues/18051)이 해결되었습니다. 이로써 [#18973](https://github.com/ClickHouse/ClickHouse/issues/18973)이 해결되었습니다. [#18981](https://github.com/ClickHouse/ClickHouse/pull/18981) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 종료 시 매우 드물게 발생하던 데드락을 수정했습니다. [#18977](https://github.com/ClickHouse/ClickHouse/pull/18977) ([tavplubix](https://github.com/tavplubix)).
* 일부 이스케이프된 텍스트가 포함된 mutation(예: `ALTER ... UPDATE e = CAST('foo', 'Enum8(\'foo\' = 1')`)이 잘못 직렬화되던 버그를 수정했습니다. [#18878](https://github.com/ClickHouse/ClickHouse/issues/18878)를 해결합니다. [#18944](https://github.com/ClickHouse/ClickHouse/pull/18944) ([alesapin](https://github.com/alesapin)).
* ATTACH 파티션 시 mutation이 재설정되어야 합니다. [#18804](https://github.com/ClickHouse/ClickHouse/issues/18804). [#18935](https://github.com/ClickHouse/ClickHouse/pull/18935) ([fastio](https://github.com/fastio)).
* clickhouse-local 종료 시 발생할 수 있는 정지 현상을 수정했습니다. 이 수정으로 [#18891](https://github.com/ClickHouse/ClickHouse/issues/18891)가 해결됩니다. [#18893](https://github.com/ClickHouse/ClickHouse/pull/18893) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 단항 함수 및 널 허용 타입에서 \*If combinator 문제를 수정했습니다. [#18806](https://github.com/ClickHouse/ClickHouse/pull/18806) ([Azat Khuzhin](https://github.com/azat)).
* 비동기 분산 INSERT는 `network_compression_method` 설정이 전역적으로 기본값이 아닌 값으로 지정된 경우 서버에서 거부될 수 있습니다. 이 문제를 [#18741](https://github.com/ClickHouse/ClickHouse/issues/18741)에서 수정했습니다. [#18776](https://github.com/ClickHouse/ClickHouse/pull/18776) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Nullable(String)`에서 `Nullable(Decimal(P, S))`로 `NULL`을 `CAST`할 때 발생하던 `Attempt to read after eof` 오류를 수정했습니다. 이제 함수 `CAST`는 널 허용 문자열에서 decimal을 파싱할 수 없으면 `NULL`을 반환합니다. [#7690](https://github.com/ClickHouse/ClickHouse/issues/7690)을 해결합니다. [#18718](https://github.com/ClickHouse/ClickHouse/pull/18718) ([Winter Zhang](https://github.com/zhang2014)).
* 인자 크기가 일치하지 않을 때 발생하던 Logger 문제를 수정했습니다. [#18717](https://github.com/ClickHouse/ClickHouse/pull/18717) ([sundyli](https://github.com/sundy-li)).
* FixedString 데이터 타입 지원을 추가했습니다. MySQL에서 ClickHouse로 데이터를 복제할 때 "Code: 50, e.displayText() = DB::Exception: Unsupported type FixedString(1)" 예외가 발생하던 문제를 해결했습니다. 이 패치는 버그 [#18450](https://github.com/ClickHouse/ClickHouse/issues/18450)을 수정하며 [#6556](https://github.com/ClickHouse/ClickHouse/issues/6556)도 함께 해결합니다. [#18553](https://github.com/ClickHouse/ClickHouse/pull/18553) ([awesomeleo](https://github.com/awesomeleo)).
* `RIGHT` 또는 `FULL` 조인이 있는 서브쿼리 뒤에 `ORDER BY`를 사용할 때 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#18550](https://github.com/ClickHouse/ClickHouse/pull/18550) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 해당 mutation이 중단된 뒤 `ALTER` 쿼리가 멈춰 버릴 수 있는 버그를 수정했습니다. thread fuzzer로 발견되었습니다. [#18518](https://github.com/ClickHouse/ClickHouse/pull/18518) ([alesapin](https://github.com/alesapin)).
* 머지 중 AIO를 사용한 쓰기를 비활성화했습니다. 머지 과정에서 매우 드물게 프라이머리 키 컬럼이 손상될 수 있기 때문입니다. [#18481](https://github.com/ClickHouse/ClickHouse/pull/18481) ([alesapin](https://github.com/alesapin)).
* 결과를 계산할 수 없는 경우 분석 단계에서 서브쿼리의 상수 폴딩을 비활성화합니다. [#18446](https://github.com/ClickHouse/ClickHouse/pull/18446) ([Azat Khuzhin](https://github.com/azat)).
* `Nullable(String)` 유형의 인수로 `toType(...)` 함수(`toDate`, `toUInt32` 등)를 실행할 때 발생하던 `value is too short` 오류를 수정했습니다. 이제 이러한 함수는 parsing 오류가 발생해도 Exception을 throw하는 대신 `NULL`을 반환합니다. [#7673](https://github.com/ClickHouse/ClickHouse/issues/7673)을 수정했습니다. [#18445](https://github.com/ClickHouse/ClickHouse/pull/18445) ([tavplubix](https://github.com/tavplubix)).
* wide 파트에서 compact 파트로의 머지를 제한했습니다. 수직 병합 시 결과 파트가 손상되는 문제가 있었습니다. [#18381](https://github.com/ClickHouse/ClickHouse/pull/18381) ([Anton Popov](https://github.com/CurtizJ)).
* 테이블 `system.settings_profile_elements`이 채워지지 않던 문제를 수정했습니다. 이 PR은 [#18231](https://github.com/ClickHouse/ClickHouse/issues/18231) 문제를 해결합니다. [#18379](https://github.com/ClickHouse/ClickHouse/pull/18379) ([Vitaly Baranov](https://github.com/vitlibar)).
* 상수 인수가 있는 이항 함수의 인덱스 분석에서 잘못된 쿼리 결과를 초래하던 문제를 수정했습니다. 이 수정은 [#18364](https://github.com/ClickHouse/ClickHouse/issues/18364)를 해결합니다. [#18373](https://github.com/ClickHouse/ClickHouse/pull/18373) ([Amos Bird](https://github.com/amosbird)).
* combinator `Distinct`를 사용할 때 2단계 집계에서 집계 함수가 비정상 종료될 수 있는 문제를 수정했습니다. [#17682](https://github.com/ClickHouse/ClickHouse/issues/17682)를 수정했습니다. [#18365](https://github.com/ClickHouse/ClickHouse/pull/18365) ([Anton Popov](https://github.com/CurtizJ)).
* 이제 `table`에서 임의의 컬럼 하나만 선택할 수 있는 경우에도 `SELECT count() FROM table`를 실행할 수 있습니다. 이 PR은 [#10639](https://github.com/ClickHouse/ClickHouse/issues/10639)을 수정합니다. [#18233](https://github.com/ClickHouse/ClickHouse/pull/18233) ([Vitaly Baranov](https://github.com/vitlibar)).
* `SELECT JOIN`은 이제 join된 각 테이블에 `SELECT` 권한이 필요합니다. 이 PR은 [#17654](https://github.com/ClickHouse/ClickHouse/issues/17654)를 수정합니다. [#18232](https://github.com/ClickHouse/ClickHouse/pull/18232) ([Vitaly Baranov](https://github.com/vitlibar)).
* 읽기 백오프가 발생할 때 `MergeTree*`에서 읽는 동안 쿼리 결과가 불완전하게 반환될 수 있는 문제를 수정했습니다(로그에 `<Debug> MergeTreeReadPool: Will lower number of threads` 메시지가 표시되는 경우). 이 문제는 [#16423](https://github.com/ClickHouse/ClickHouse/issues/16423)에서 도입되었습니다. [#18137](https://github.com/ClickHouse/ClickHouse/issues/18137)을 수정합니다. [#18216](https://github.com/ClickHouse/ClickHouse/pull/18216) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 쿼리 `MODIFY COLUMN ... REMOVE TTL`이 실제로는 컬럼 TTL을 제거하지 않던 오류를 수정했습니다. [#18130](https://github.com/ClickHouse/ClickHouse/pull/18130) ([alesapin](https://github.com/alesapin)).
* 프레디케이트 옵티마이저의 비결정적 함수 관련 문제를 수정했습니다. 이 수정으로 [#17244](https://github.com/ClickHouse/ClickHouse/issues/17244)가 해결됩니다. [#17273](https://github.com/ClickHouse/ClickHouse/pull/17273) ([Winter Zhang](https://github.com/zhang2014)).
* `MOVE` 또는 `REPLACE PARTITION` 이후, 드물게는 `DETACH`나 `DROP PARTITION` 이후에 존재하지 않는 `part`를 기다리느라 Mutation이 멈추는 문제가 있었습니다. 이 문제가 수정되었습니다. [#15537](https://github.com/ClickHouse/ClickHouse/pull/15537) ([tavplubix](https://github.com/tavplubix)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 시간대 정보를 2020e로 업데이트했습니다. [#18531](https://github.com/ClickHouse/ClickHouse/pull/18531) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v201166-stable-2020-12-24">
  ### ClickHouse 릴리스 v20.11.6.6-안정, 2020-12-24
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 이중 `IPv4/IPv6 stack` 환경의 머신에서 server가 `clickhouse-odbc-bridge` 프로세스에 도달할 수 없던 문제를 수정했으며, ODBC 딕셔너리 업데이트가 잘못된 쿼리로 수행되거나 충돌을 유발하던 문제도 수정했습니다. 이 변경으로 [#14489](https://github.com/ClickHouse/ClickHouse/issues/14489)가 해결되었을 가능성이 있습니다. [#18278](https://github.com/ClickHouse/ClickHouse/pull/18278) ([Denis Glazachev](https://github.com/traceon)).
* Enum과 Int 타입 사이의 키 비교를 수정했습니다. 이로써 [#17989](https://github.com/ClickHouse/ClickHouse/issues/17989) 문제가 해결되었습니다. [#18214](https://github.com/ClickHouse/ClickHouse/pull/18214) ([Amos Bird](https://github.com/amosbird)).
* `MaterializeMySQL` 데이터베이스 엔진에서 고유 키를 변환할 때 발생하던 충돌을 수정했습니다. 이 수정으로 [#18186](https://github.com/ClickHouse/ClickHouse/issues/18186) 및 [#16372](https://github.com/ClickHouse/ClickHouse/issues/16372)가 해결됩니다  [#18211](https://github.com/ClickHouse/ClickHouse/pull/18211) ([Winter Zhang](https://github.com/zhang2014)).
* S3 URL 파싱 중 발생하던 `std::out_of_range: basic_string` 문제를 해결했습니다. [#18059](https://github.com/ClickHouse/ClickHouse/pull/18059) ([Vladimir Chebotarev](https://github.com/excitoon)).
* MaterializeMySQL에서 MySQL 접두사 인덱스 변환을 지원하지 않아 일부 테이블이 MySQL에서 ClickHouse로 동기화되지 않던 문제가 수정되었습니다. 이로써 [#15187](https://github.com/ClickHouse/ClickHouse/issues/15187) 및 [#17912](https://github.com/ClickHouse/ClickHouse/issues/17912)가 해결되었습니다. [#17944](https://github.com/ClickHouse/ClickHouse/pull/17944) ([Winter Zhang](https://github.com/zhang2014)).
* 쿼리에 `ARRAY JOIN`이 포함된 경우 쿼리 최적화 과정에서 잘못된 결과가 생성되던 문제를 수정했습니다. [#17887](https://github.com/ClickHouse/ClickHouse/pull/17887) ([sundyli](https://github.com/sundy-li)).
* `topK` 집계 함수에서 발생할 수 있는 segfault 문제를 수정했습니다. 이로써 [#17404](https://github.com/ClickHouse/ClickHouse/issues/17404)가 해결되었습니다. [#17845](https://github.com/ClickHouse/ClickHouse/pull/17845) ([Maksim Kita](https://github.com/kitaisreal)).
* `in_memory_parts_enable_wal`이 비활성화되어 있으면 WAL에서 파트를 복원하지 않습니다. [#17802](https://github.com/ClickHouse/ClickHouse/pull/17802) ([detailyang](https://github.com/detailyang)).
* ClickHouse가 MySQL 서버와의 연결을 다시 복구하지 못하던 문제를 수정했습니다. [#17681](https://github.com/ClickHouse/ClickHouse/pull/17681) ([Alexander Kazakov](https://github.com/Akazz)).
* 파티션 프레디케이트가 있을 때 `optimize_trivial_count_query`의 동작이 일관되지 않던 문제를 수정했습니다. [#17644](https://github.com/ClickHouse/ClickHouse/pull/17644) ([Azat Khuzhin](https://github.com/azat)).
* 서버가 데몬 모드로 실행될 때 `system.stack_trace` 테이블이 비어 있던 문제가 수정되었습니다. [#17630](https://github.com/ClickHouse/ClickHouse/pull/17630) ([Amos Bird](https://github.com/amosbird)).
* MergeTree 테이블에서 xxception `fmt::v7::format_error`가 백그라운드에 기록될 수 있던 동작을 수정했습니다. 이 수정으로 [#17613](https://github.com/ClickHouse/ClickHouse/issues/17613)이 해결됩니다. [#17615](https://github.com/ClickHouse/ClickHouse/pull/17615) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clickhouse-client를 대화형 모드에서 여러 줄 쿼리와 함께 사용할 때, 한 줄 주석이 잘못 쿼리 끝까지 확장되던 동작을 수정했습니다. 이 변경으로 [#13654](https://github.com/ClickHouse/ClickHouse/issues/13654)가 해결됩니다. [#17565](https://github.com/ClickHouse/ClickHouse/pull/17565) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 드문 경우에 서버가 연결을 더 이상 받지 않을 수 있던 문제를 수정했습니다. [#17542](https://github.com/ClickHouse/ClickHouse/pull/17542) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 해당 mutation이 다른 레플리카에서 종료되었을 때 alter 쿼리가 멈추던 문제를 수정했습니다. 이 수정으로 [#16953](https://github.com/ClickHouse/ClickHouse/issues/16953) 문제가 해결됩니다. [#17499](https://github.com/ClickHouse/ClickHouse/pull/17499) ([alesapin](https://github.com/alesapin)).
* ClickHouse에서 마크 캐시 크기를 과소평가할 때 발생하던 버그를 수정했습니다. 마크가 포함된 아주 작은 파일이 많을 때 이 문제가 발생할 수 있습니다. [#17496](https://github.com/ClickHouse/ClickHouse/pull/17496) ([alesapin](https://github.com/alesapin)).
* 설정 `optimize_redundant_functions_in_order_by`가 활성화된 상태에서의 `ORDER BY` 문제를 수정했습니다. [#17471](https://github.com/ClickHouse/ClickHouse/pull/17471) ([Anton Popov](https://github.com/CurtizJ)).
* `DISTINCT` 이후에 발생할 수 있었던 중복을 잘못된 최적화로 인해 수정했습니다. 이 변경으로 [#17294](https://github.com/ClickHouse/ClickHouse/issues/17294)가 해결되었습니다. [#17296](https://github.com/ClickHouse/ClickHouse/pull/17296) ([li chengxiang](https://github.com/chengxianglibra)). [#17439](https://github.com/ClickHouse/ClickHouse/pull/17439) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LowCardinality` 타입이 있는 `JOIN` 테이블을 읽는 중 발생하던 충돌을 수정했습니다. 이 수정으로 [#17228](https://github.com/ClickHouse/ClickHouse/issues/17228)가 해결됩니다. [#17397](https://github.com/ClickHouse/ClickHouse/pull/17397) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 서브쿼리에 const 컬럼이 있을 때 set 인덱스 무효화가 잘못되던 문제를 수정했습니다. 이로써 [#17246](https://github.com/ClickHouse/ClickHouse/issues/17246) 문제가 해결됩니다. [#17249](https://github.com/ClickHouse/ClickHouse/pull/17249) ([Amos Bird](https://github.com/amosbird)).
* 인덱스 비교 시 타입이 서로 다를 때 잘못된 인덱스 분석이 발생할 수 있던 문제를 수정했습니다. 이 수정으로 [#17122](https://github.com/ClickHouse/ClickHouse/issues/17122) 문제가 해결되었습니다. [#17145](https://github.com/ClickHouse/ClickHouse/pull/17145) ([Amos Bird](https://github.com/amosbird)).
* 크래시를 일으키던 `ColumnConst` 비교를 수정했습니다. 이로써 [#17088](https://github.com/ClickHouse/ClickHouse/issues/17088) 문제가 해결됩니다. [#17135](https://github.com/ClickHouse/ClickHouse/pull/17135) ([Amos Bird](https://github.com/amosbird)).
* 리더가 아닌 `ReplicatedMergeTreeTables`에서 `ON CLUSTER` 쿼리가 무기한으로 멈출 수 있던 버그를 수정했습니다. [#17089](https://github.com/ClickHouse/ClickHouse/pull/17089) ([alesapin](https://github.com/alesapin)).
* 퍼저가 발견한 `fuzzBits` 함수의 버그를 수정했습니다. 이로써 [#16980](https://github.com/ClickHouse/ClickHouse/issues/16980) 문제가 해결됩니다. [#17051](https://github.com/ClickHouse/ClickHouse/pull/17051) ([hexiaoting](https://github.com/hexiaoting)).
* 실행 중에 취소될 수 있는 원격 쿼리(예: `LIMIT`가 있는 쿼리)에서 불필요한 네트워크 오류가 발생하지 않도록 했습니다. [#17006](https://github.com/ClickHouse/ClickHouse/pull/17006) ([Azat Khuzhin](https://github.com/azat)).
* double에서 큰 정수(128, 256비트)로 형변환할 때 잘못된 결과가 나오던 문제를 수정했습니다. [#16986](https://github.com/ClickHouse/ClickHouse/pull/16986) ([Mike](https://github.com/myrrc)).
* 오류 발생 시 `format_avro_schema_registry_url`의 IP를 다시 조회하도록 수정했습니다. [#16985](https://github.com/ClickHouse/ClickHouse/pull/16985) ([filimonov](https://github.com/filimonov)).
* 변경 중인 컬럼에 대한 `WHERE` 표현식이 포함된 `SELECT`가 있고 `ALTER TABLE ... MODIFY COLUMN ... NewType`이 아직 완료되지 않은 상태에서 발생할 수 있던 서버 크래시를 수정했습니다. [#16968](https://github.com/ClickHouse/ClickHouse/pull/16968) ([Amos Bird](https://github.com/amosbird)).
* `clickhouse-git-import`에서 Blame 정보가 제대로 계산되지 않던 문제가 수정되었습니다. [#16959](https://github.com/ClickHouse/ClickHouse/pull/16959) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 단조 함수가 포함된 `ORDER BY` 최적화를 수정했습니다. [#16107](https://github.com/ClickHouse/ClickHouse/issues/16107)을 해결했습니다. [#16956](https://github.com/ClickHouse/ClickHouse/pull/16956) ([Anton Popov](https://github.com/CurtizJ)).
* 설정 `optimize_aggregators_of_group_by_keys`가 활성화된 상태에서 조인과 함께 사용하는 GROUP BY 최적화 문제를 수정했습니다. 이 수정으로 [#12604](https://github.com/ClickHouse/ClickHouse/issues/12604)가 해결됩니다. [#16951](https://github.com/ClickHouse/ClickHouse/pull/16951) ([Anton Popov](https://github.com/CurtizJ)).
* 설치 스크립트는 config 폴더에 항상 하위 디렉터리를 생성해야 합니다. 이는 사용자 지정 config를 사용하는 Docker build에만 해당됩니다. [#16936](https://github.com/ClickHouse/ClickHouse/pull/16936) ([filimonov](https://github.com/filimonov)).
* `ORDER BY`가 있는 쿼리에서 발생할 수 있는 `Illegal type of argument` 오류를 수정했습니다. 이로써 [#16580](https://github.com/ClickHouse/ClickHouse/issues/16580)가 해결됩니다. [#16928](https://github.com/ClickHouse/ClickHouse/pull/16928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* WriteBufferFromS3에 기록된 데이터가 없으면 멀티파트 업로드를 중단합니다. [#16840](https://github.com/ClickHouse/ClickHouse/pull/16840) ([Pavel Kovalenko](https://github.com/Jokser)).
* 인수 없이 `any`를 사용할 때 발생하던 충돌 문제를 수정했습니다. 이로써 [#16803](https://github.com/ClickHouse/ClickHouse/issues/16803) 문제가 해결됩니다. [#16826](https://github.com/ClickHouse/ClickHouse/pull/16826) ([Amos Bird](https://github.com/amosbird)).
* MySQL 프로토콜을 통해 `INSERT` 쿼리를 실행할 때, ClickHouse가 영향을 받은 행 수를 반환하지 않고 항상 0을 반환하던 문제를 수정했습니다. 이 수정으로 [#16605](https://github.com/ClickHouse/ClickHouse/issues/16605)가 해결됩니다. [#16715](https://github.com/ClickHouse/ClickHouse/pull/16715) ([Winter Zhang](https://github.com/zhang2014)).
* TDigest의 비정상적인 증가 문제를 수정했습니다. [#16680](https://github.com/ClickHouse/ClickHouse/pull/16680) ([hrissan](https://github.com/hrissan)).
* 집계 함수에서 접미사 `if`를 사용할 때 원격 쿼리가 실패하던 문제를 수정했습니다. 이 수정은 [#16574](https://github.com/ClickHouse/ClickHouse/issues/16574), [#16231](https://github.com/ClickHouse/ClickHouse/issues/16231), [#16610](https://github.com/ClickHouse/ClickHouse/pull/16610)을 해결합니다 ([Winter Zhang](https://github.com/zhang2014)).
* 최적화된 단순 count 쿼리와 system.tables에서 `select_sequential_consistency` 때문에 발생하던 동작 불일치 문제를 수정했습니다. [#16309](https://github.com/ClickHouse/ClickHouse/pull/16309) ([Hao Chen](https://github.com/haoch)).
* ColumnTransformer로 존재하지 않는 컬럼을 대체하려고 하면 오류가 발생합니다. [#16183](https://github.com/ClickHouse/ClickHouse/pull/16183) ([hexiaoting](https://github.com/hexiaoting)).

<div id="clickhouse-release-v201133-stable-2020-11-13">
  ### ClickHouse 릴리스 v20.11.3.3-안정, 2020-11-13
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리 프로파일러가 활성화되어 있고, 일부 함수의 비동기 unwind 테이블이 손상된 것으로 추정되는 glibc 버전이 포함된 OS에 ClickHouse가 설치된 경우 드물게 발생하는 무증상 크래시를 수정했습니다. 이로써 [#15301](https://github.com/ClickHouse/ClickHouse/issues/15301)과 [#13098](https://github.com/ClickHouse/ClickHouse/issues/13098)이 해결됩니다. [#16846](https://github.com/ClickHouse/ClickHouse/pull/16846) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="clickhouse-release-v201121-2020-11-11">
  ### ClickHouse 릴리스 v20.11.2.1, 2020-11-11
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* `distributed_ddl` config section에 `profile`이 지정된 경우, 서버 시작 시 이 profile이 `default` profile의 설정을 덮어쓸 수 있었습니다. 이 문제는 수정되었으며, 이제 분산 DDL 쿼리의 설정이 전역 server 설정에 영향을 주지 않습니다. [#16635](https://github.com/ClickHouse/ClickHouse/pull/16635) ([tavplubix](https://github.com/tavplubix)).
* 키(정렬 키, 프라이머리 키, 파티션 키 등)에서 비교할 수 없는 데이터 타입(`AggregateFunction` 등)의 사용을 제한했습니다. [#16601](https://github.com/ClickHouse/ClickHouse/pull/16601) ([alesapin](https://github.com/alesapin)).
* `ANALYZE` 및 `AST` 쿼리를 제거하고, 이제 완전한 기능을 갖춘 `EXPLAIN` 쿼리에 포함되므로 `enable_debug_queries` 설정을 obsolete로 변경했습니다. [#16536](https://github.com/ClickHouse/ClickHouse/pull/16536) ([Ivan](https://github.com/abyss7)).
* 집계 함수 `boundingRatio`, `rankCorr`, `retention`, `timeSeriesGroupSum`, `timeSeriesGroupRateSum`, `windowFunnel`은 잘못하여 대소문자를 구분하지 않도록 처리되고 있었습니다. 이제 설계된 대로 함수 이름이 대소문자를 구분하도록 변경되었습니다. SQL 표준에 정의되었거나 다른 DBMS와의 호환성을 위해 만들어진 함수, 또는 그와 유사한 함수만 대소문자를 구분하지 않아야 합니다. [#16407](https://github.com/ClickHouse/ClickHouse/pull/16407) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 데이터가 충분하지 않을 경우 `rankCorr` 함수가 nan을 반환하도록 변경했습니다 [#16124](https://github.com/ClickHouse/ClickHouse/issues/16124). [#16135](https://github.com/ClickHouse/ClickHouse/pull/16135) ([hexiaoting](https://github.com/hexiaoting)).
* 20.5보다 이전 버전에서 업그레이드할 때 rolling update를 수행하는 경우, cluster에 20.5 이상 버전과 20.5 미만 버전이 함께 포함되어 있고, 이전 버전의 ClickHouse 노드가 재시작된 뒤 더 최신 버전이 있는 상태에서 이전 버전으로 시작되면 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 cluster 노드에 최신 `clickhouse-server` 패키지를 설치한 다음 재시작하십시오. 그러면 `clickhouse-server`가 재시작될 때 새 버전으로 시작됩니다.

<div id="new-feature">
  #### 새로운 기능
</div>

* 로컬에 없는 사용자의 사용자 디렉터리로 LDAP를 지원하도록 했습니다. [#12736](https://github.com/ClickHouse/ClickHouse/pull/12736) ([Denis Glazachev](https://github.com/traceon)).
* 현재 실행 중인 백그라운드 페치를 표시하는 `system.replicated_fetches` 테이블을 추가했습니다. [#16428](https://github.com/ClickHouse/ClickHouse/pull/16428) ([alesapin](https://github.com/alesapin)).
* `date_time_output_format` 설정이 추가되었습니다. [#15845](https://github.com/ClickHouse/ClickHouse/pull/15845) ([Maksim Kita](https://github.com/kitaisreal)).
* ClickHouse에 간단한 web UI를 추가했습니다. [#16158](https://github.com/ClickHouse/ClickHouse/pull/16158) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 길이 구분 기호 없이 단일 protobuf 메시지를 한 번에 읽고 쓸 수 있도록 했습니다. [#15199](https://github.com/ClickHouse/ClickHouse/pull/15199) ([filimonov](https://github.com/filimonov)).
* 초기 OpenTelemetry 지원이 추가되었습니다. 이제 ClickHouse는 네이티브 및 HTTP 프로토콜을 통해 OpenTelemetry `traceparent` 헤더를 수신하며, 일부 경우 이를 다운스트림으로 전달합니다. 실행된 쿼리의 트레이스 스팬은 `system.opentelemetry_span_log` 테이블에 저장됩니다. [#14195](https://github.com/ClickHouse/ClickHouse/pull/14195) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `CREATE TABLE` 쿼리의 컬럼 목록에서 프라이머리 키를 지정할 수 있도록 지원합니다. 이는 다른 SQL 방언과의 호환성을 위해 필요합니다. [#15823](https://github.com/ClickHouse/ClickHouse/pull/15823) ([Maksim Kita](https://github.com/kitaisreal)).
* ORDER BY가 있는 SELECT 쿼리에서 `OFFSET offset_row_count {ROW | ROWS} FETCH {FIRST | NEXT} fetch_row_count {ROW | ROWS} {ONLY | WITH TIES}`를 구현했습니다. 이는 `LIMIT`를 지정하는 SQL 표준 방식입니다. [#15855](https://github.com/ClickHouse/ClickHouse/pull/15855) ([hexiaoting](https://github.com/hexiaoting)).
* `errorCodeToName` 함수 - 오류의 변수명을 반환합니다(`query&#95;log` 및 유사한 항목을 분석할 때 유용함). `system.errors` 테이블 - 오류 발생 횟수를 표시합니다(`system_events_show_zero_values`를 따름). [#16438](https://github.com/ClickHouse/ClickHouse/pull/16438) ([Azat Khuzhin](https://github.com/azat)).
* named tuple을 확장해 SELECT 목록에 새 컬럼을 추가할 수 있는 특수 함수 `untuple`이 추가되었습니다. [#16242](https://github.com/ClickHouse/ClickHouse/pull/16242) ([Nikolai Kochetov](https://github.com/KochetovNicolai), [Amos Bird](https://github.com/amosbird)).
* 이제 쿼리 매개변수를 통해 식별자를 전달할 수 있습니다. 또한 이러한 매개변수는 테이블 객체나 컬럼으로 사용할 수 있습니다. [#16594](https://github.com/ClickHouse/ClickHouse/pull/16594) ([Amos Bird](https://github.com/amosbird)).
* MergeTree BloomFilter 인덱스에 큰 정수(UInt256, Int128, Int256) 및 UUID 데이터 타입 지원이 추가되었습니다. 큰 정수는 실험적 기능입니다. [#16642](https://github.com/ClickHouse/ClickHouse/pull/16642) ([Maksim Kita](https://github.com/kitaisreal)).
* 비암호화 문자열 해싱용 `farmFingerprint64` 함수를 추가했습니다. [#16570](https://github.com/ClickHouse/ClickHouse/pull/16570) ([Jacob Hayes](https://github.com/JacobHayes)).
* `log_queries_min_query_duration_ms`를 추가했습니다. 이 설정값보다 오래 걸리는 쿼리만 `query_log`/`query_thread_log`에 기록됩니다(즉, MySQL의 `slow_query_log`와 유사합니다). [#16529](https://github.com/ClickHouse/ClickHouse/pull/16529) ([Azat Khuzhin](https://github.com/azat)).
* `Alpine`을 기반으로 Docker 이미지를 생성할 수 있게 되었습니다. 사전 컴파일된 바이너리와 Ubuntu 20.04의 glibc 구성 요소를 사용합니다. [#16479](https://github.com/ClickHouse/ClickHouse/pull/16479) ([filimonov](https://github.com/filimonov)).
* `toUUIDOrNull`, `toUUIDOrZero` 캐스트 함수가 추가되었습니다. [#16337](https://github.com/ClickHouse/ClickHouse/pull/16337) ([Maksim Kita](https://github.com/kitaisreal)).
* `max_concurrent_queries_for_all_users` 설정이 추가되었습니다. 사용 사례는 [#6636](https://github.com/ClickHouse/ClickHouse/issues/6636)을 참조하십시오. [#16154](https://github.com/ClickHouse/ClickHouse/pull/16154) ([nvartolomei](https://github.com/nvartolomei)).
* clickhouse-client에 새 옵션 `print_query_id`를 추가했습니다. 이 옵션을 사용하면 클라이언트가 생성한 현재 쿼리 ID를 포함한 임의의 문자열을 생성할 수 있습니다. 또한 기본적으로 clickhouse-client에서 쿼리 ID를 출력합니다. [#15809](https://github.com/ClickHouse/ClickHouse/pull/15809) ([Amos Bird](https://github.com/amosbird)).
* `tid` 및 `logTrace` 함수를 추가했습니다. 이 변경으로 [#9434](https://github.com/ClickHouse/ClickHouse/issues/9434)가 해결되었습니다. [#15803](https://github.com/ClickHouse/ClickHouse/pull/15803) ([flynn](https://github.com/ucasFL)).
* 시간 차이를 사람이 읽기 쉬운 문자열로 포맷하는 `formatReadableTimeDelta` 함수를 추가했습니다 ... [#15497](https://github.com/ClickHouse/ClickHouse/pull/15497) ([Filipe Caixeta](https://github.com/filipecaixeta)).
* 멀티 디스크 구성에서 볼륨에 `disable_merges` 옵션이 추가되었습니다. [#13956](https://github.com/ClickHouse/ClickHouse/pull/13956) ([Vladimir Chebotarev](https://github.com/excitoon)).

<div id="experimental-feature">
  #### 실험적 기능
</div>

* 새로운 함수 `encrypt`, `aes_encrypt_mysql`, `decrypt`, `aes_decrypt_mysql`가 추가되었습니다. 이 함수들은 처리 속도가 느려 실험적 기능으로 간주합니다. [#11844](https://github.com/ClickHouse/ClickHouse/pull/11844) ([Vasily Nemkov](https://github.com/Enmk)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `system.distribution_queue`의 data\_path에 있는 비밀번호를 마스킹합니다. [#16727](https://github.com/ClickHouse/ClickHouse/pull/16727) ([Azat Khuzhin](https://github.com/azat)).
* `transform_null_in` 설정이 활성화된 상태에서 여러 컬럼과 튜플에 대한 `IN` 연산자를 수정했습니다. [#15310](https://github.com/ClickHouse/ClickHouse/issues/15310)을 해결했습니다. [#16722](https://github.com/ClickHouse/ClickHouse/pull/16722) ([Anton Popov](https://github.com/CurtizJ)).
* 조회한 table에 샘플링이 없을 경우 설정 `max_parallel_replicas`가 올바르게 동작하지 않던 문제를 수정했습니다. 이로써 [#5733](https://github.com/ClickHouse/ClickHouse/issues/5733)를 해결했습니다. [#16675](https://github.com/ClickHouse/ClickHouse/pull/16675) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* max\_threads > 0이고 ORDER BY에 표현식이 포함된 경우 optimize\_read\_in\_order/optimize\_aggregation\_in\_order 관련 문제를 수정했습니다. [#16637](https://github.com/ClickHouse/ClickHouse/pull/16637) ([Azat Khuzhin](https://github.com/azat)).
* `DEFAULT` 표현식을 계산하는 과정에서 이름 충돌이 발생할 가능성이 있었습니다(실제로는 발생할 가능성이 매우 낮았습니다). 이로써 [#9359](https://github.com/ClickHouse/ClickHouse/issues/9359)가 수정되었습니다. [#16612](https://github.com/ClickHouse/ClickHouse/pull/16612) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `query_thread_log.query_duration_ms`의 단위를 수정했습니다. [#16563](https://github.com/ClickHouse/ClickHouse/pull/16563) ([Azat Khuzhin](https://github.com/azat)).
* MySQL Master -> MySQL Slave -> ClickHouse MaterializeMySQL Engine 사용 시 발생하던 버그를 수정했습니다. `MaterializeMySQL`은 실험적 기능입니다. [#16504](https://github.com/ClickHouse/ClickHouse/pull/16504) ([TCeason](https://github.com/TCeason)).
* `Decimal`에 대해 특별히 조작된 `round` 함수 인수로 인해 정수를 0으로 나누는 문제가 발생할 수 있었습니다. 이 변경으로 [#13338](https://github.com/ClickHouse/ClickHouse/issues/13338)이 수정되었습니다. [#16451](https://github.com/ClickHouse/ClickHouse/pull/16451) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 분산 테이블의 DROP TABLE 수정(INSERT와 경쟁 상태 발생). [#16409](https://github.com/ClickHouse/ClickHouse/pull/16409) ([Azat Khuzhin](https://github.com/azat)).
* 복제 큐에서 매우 큰 항목을 처리할 때 발생하던 문제를 수정했습니다. 테이블 구조가 극도로 큰 경우(1 MB에 가까운 경우) ALTER 쿼리에서 매우 큰 항목이 나타날 수 있습니다. 이 수정은 [#16307](https://github.com/ClickHouse/ClickHouse/issues/16307)을 해결합니다. [#16332](https://github.com/ClickHouse/ClickHouse/pull/16332) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 필터링용 Set이 생성되지 않았을 때 반환 데이터의 일부가 삭제될 수 있던 비일관적 동작을 수정했습니다. [#16308](https://github.com/ClickHouse/ClickHouse/pull/16308) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* sharding\_key(및 함수 컨텍스트가 영구적으로 저장되는 유사한 위치)에서 dictGet 문제를 수정했습니다. [#16205](https://github.com/ClickHouse/ClickHouse/pull/16205) ([Azat Khuzhin](https://github.com/azat)).
* `clickhouse-local`에서 `OPTIMIZE` 명령을 실행하려고 할 때 발생하던 Exception을 수정했습니다. [#16076](https://github.com/ClickHouse/ClickHouse/issues/16076) 수정 사항입니다. [#16192](https://github.com/ClickHouse/ClickHouse/pull/16192) ([filimonov](https://github.com/filimonov)).
* [#15780](https://github.com/ClickHouse/ClickHouse/issues/15780)의 회귀 문제를 수정했습니다. 예를 들어 `indexOf([1, 2, 3], toLowCardinality(1))`는 이제 금지되지만, 원래는 금지되면 안 됩니다. [#16038](https://github.com/ClickHouse/ClickHouse/pull/16038) ([Mike](https://github.com/myrrc)).
* MySQL 데이터베이스 관련 버그를 수정했습니다. 데이터베이스 엔진으로 사용되는 MySQL server가 다운되면, 일부 쿼리는 비활성화된 server에서 불필요하게 table을 가져오려고 시도하면서 Exception을 발생시켰습니다. 예를 들어, `SELECT ... FROM system.parts` 쿼리는 MergeTree table에만 적용되어야 하며 MySQL 데이터베이스는 전혀 건드리지 않아야 합니다. [#16032](https://github.com/ClickHouse/ClickHouse/pull/16032) ([Kruglov Pavel](https://github.com/Avogar)).
* 이제 `ALTER MODIFY COLUMN ... DEFAULT ...`에서 기본값이 컬럼 유형과 호환되지 않으면 예외가 발생합니다. [#15854](https://github.com/ClickHouse/ClickHouse/issues/15854)를 수정했습니다. [#15858](https://github.com/ClickHouse/ClickHouse/pull/15858) ([alesapin](https://github.com/alesapin)).
* IPv4CIDRToRange/IPv6CIDRToRange 함수가 const IP 컬럼 값도 허용하도록 수정되었습니다. [#15856](https://github.com/ClickHouse/ClickHouse/pull/15856) ([vladimir-golovchenko](https://github.com/vladimir-golovchenko)).

<div id="improvement">
  #### 개선 사항
</div>

* Postgres 및 유사한 시스템과의 호환성을 위해 `INTERVAL '1 hour'`를 `INTERVAL 1 HOUR`와 동일한 것으로 간주합니다. 이 변경으로 [#15637](https://github.com/ClickHouse/ClickHouse/issues/15637) 문제가 수정되었습니다. [#15978](https://github.com/ClickHouse/ClickHouse/pull/15978) ([flynn](https://github.com/ucasFL)).
* CSV, TSV 및 JSON 입력 형식에서 enum 값을 숫자 ID를 기준으로 파싱할 수 있도록 했습니다. [#15685](https://github.com/ClickHouse/ClickHouse/pull/15685) ([vivarum](https://github.com/vivarum)).
* JBOD 아키텍처 및 `MergeTree` 스토리지에서 읽기 작업 스케줄링이 개선되었습니다. 읽기 스레드 수의 최솟값으로 작동하는 새로운 설정 `read_backoff_min_concurrency`가 추가되었습니다. [#16423](https://github.com/ClickHouse/ClickHouse/pull/16423) ([Amos Bird](https://github.com/amosbird)).
* `Avro` 포맷에서 빠져 있던 `LowCardinality` 지원을 추가했습니다. [#16521](https://github.com/ClickHouse/ClickHouse/pull/16521) ([Mike](https://github.com/myrrc)).
* 프록시로 nginx 서버와 함께 `S3`를 사용할 때의 우회 방법입니다. 현재 Nginx는 `http://domain.com?delete`처럼 빈 경로가 있는 URL을 허용하지 않지만, 기본 aws-sdk-cpp는 이런 종류의 URL을 생성합니다. 이 커밋에서는 패치된 aws-sdk-cpp 버전을 사용하여, 이런 경우 `http://domain.com/?delete`처럼 경로에 "/"가 포함된 URL을 생성합니다. [#16814](https://github.com/ClickHouse/ClickHouse/pull/16814) ([ianton-ru](https://github.com/ianton-ru)).
* 입력 데이터 파싱 오류에 대한 진단이 개선되었습니다. `Cannot read all data` 오류 발생 시 행 번호를 제공합니다. [#16644](https://github.com/ClickHouse/ClickHouse/pull/16644) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `minMap` 및 `maxMap`의 동작을 더 바람직하게 개선했습니다. 이제 결과에서 0 값을 건너뛰지 않습니다. [#16087](https://github.com/ClickHouse/ClickHouse/issues/16087)을 수정했습니다. [#16631](https://github.com/ClickHouse/ClickHouse/pull/16631) ([Ildus Kurbangaliev](https://github.com/ildus)).
* 런타임에서 ZooKeeper 구성을 업데이트하는 방식이 개선되었습니다. [#16630](https://github.com/ClickHouse/ClickHouse/pull/16630) ([sundyli](https://github.com/sundy-li)).
* SETTINGS 절을 가능한 한 일찍 적용합니다. 이렇게 하면 쿼리에서 더 많은 설정을 변경할 수 있습니다. 이로써 [#3178](https://github.com/ClickHouse/ClickHouse/issues/3178)가 해결됩니다. [#16619](https://github.com/ClickHouse/ClickHouse/pull/16619) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 `event_time_microseconds` 필드는 UInt64가 아니라 Decimal64 형식으로 저장됩니다. [#16617](https://github.com/ClickHouse/ClickHouse/pull/16617) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 이제 `APPLY` 컬럼 변환기에서 매개변수가 있는 함수를 사용할 수 있습니다. [#16589](https://github.com/ClickHouse/ClickHouse/pull/16589) ([Amos Bird](https://github.com/amosbird)).
* `Atomic` 데이터베이스에서 삭제된 테이블의 데이터를 제거하는 백그라운드 작업의 스케줄링을 개선했습니다. `Atomic` 데이터베이스는 테이블에 실제 데이터 디렉터리가 없는 경우 테이블 데이터 디렉터리에 대한 끊어진 심볼릭 링크를 생성하지 않습니다. [#16584](https://github.com/ClickHouse/ClickHouse/pull/16584) ([tavplubix](https://github.com/tavplubix)).
* `WITH` 섹션의 서브쿼리(CTE)에서는 이름으로 `WITH` 섹션의 앞선 서브쿼리를 참조할 수 있습니다. [#16575](https://github.com/ClickHouse/ClickHouse/pull/16575) ([Amos Bird](https://github.com/amosbird)).
* `system.query_thread_log`에 current\_database를 추가했습니다. [#16558](https://github.com/ClickHouse/ClickHouse/pull/16558) ([Azat Khuzhin](https://github.com/azat)).
* 현재 인스턴스에서 이미 커밋되었거나 오래된 파트를 분리된 디렉터리로 가져올 수 있도록 허용합니다. 이는 다른 클러스터에서 테이블을 마이그레이션할 때 N대1 세그먼트 매핑이 있는 경우 유용합니다. 또한 현재 `fetchPartition` 구현과도 일관됩니다. [#16538](https://github.com/ClickHouse/ClickHouse/pull/16538) ([Amos Bird](https://github.com/amosbird)).
* `RabbitMQ` 관련 개선 사항이 여러 가지 적용되었습니다. [#16263](https://github.com/ClickHouse/ClickHouse/issues/16263)의 버그를 수정했습니다. 또한 이벤트 루프의 유지 시간을 줄였습니다. 더 효율적인 큐 설정을 추가했습니다. [#16426](https://github.com/ClickHouse/ClickHouse/pull/16426) ([Kseniia Sumarokova](https://github.com/kssenii)).
* `quantileDeterministic` 함수의 디버그 assertion을 수정했습니다. 이전 버전에서는 버그는 없었지만 네트워크를 통해 최대 2배 많은 데이터를 전송할 수 있었습니다. 이 변경으로 [#15683](https://github.com/ClickHouse/ClickHouse/issues/15683)가 수정됩니다. [#16410](https://github.com/ClickHouse/ClickHouse/pull/16410) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `TablesToDropQueueSize` 메트릭을 추가했습니다. 이 값은 백그라운드 데이터 삭제를 대기 중인 삭제된 테이블 수와 같습니다. [#16364](https://github.com/ClickHouse/ClickHouse/pull/16364) ([tavplubix](https://github.com/tavplubix)).
* 클라이언트 connection이 끊어졌을 때 진단 정보가 개선되었습니다. 이전 버전에서는 서버에 `Attempt to read after EOF` 및 `Broken pipe` Exception이 기록되었습니다. 새 버전에서는 `Client has dropped the connection, cancel the query.`라는 정보 메시지가 표시됩니다. [#16329](https://github.com/ClickHouse/ClickHouse/pull/16329) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Set/Join 테이블 엔진에 system.tables의 total\_rows/total\_bytes 지원을 추가했습니다. [#16306](https://github.com/ClickHouse/ClickHouse/pull/16306) ([Azat Khuzhin](https://github.com/azat)).
* 이제 MergeTree 테이블 엔진 계열에서 `ORDER BY` 없이 `PRIMARY KEY`를 지정할 수 있습니다. [#15591](https://github.com/ClickHouse/ClickHouse/issues/15591)을 해결했습니다. [#16284](https://github.com/ClickHouse/ClickHouse/pull/16284) ([alesapin](https://github.com/alesapin)).
* 시스템에 tmp 폴더가 없을 경우(chroot, 잘못된 설정 등) `clickhouse-local`은 현재 디렉터리에 임시 하위 폴더를 생성합니다. [#16280](https://github.com/ClickHouse/ClickHouse/pull/16280) ([filimonov](https://github.com/filimonov)).
* 중첩 데이터 타입(named tuple 등)에 하위 타입으로서의 지원을 추가했습니다. [#15587](https://github.com/ClickHouse/ClickHouse/issues/15587)를 수정했습니다. [#16262](https://github.com/ClickHouse/ClickHouse/pull/16262) ([Ivan](https://github.com/abyss7)).
* `DROP DATABASE`에서 `database_atomic_wait_for_drop_and_detach_synchronously`/`NO DELAY`/`SYNC`를 지원합니다. [#16127](https://github.com/ClickHouse/ClickHouse/pull/16127) ([Azat Khuzhin](https://github.com/azat)).
* `allow_nondeterministic_optimize_skip_unused_shards`를 추가했습니다(세그먼트 분할 키에서 `rand()` 또는 `dictGet()`과 같은 비결정적 함수를 허용하기 위해). [#16105](https://github.com/ClickHouse/ClickHouse/pull/16105) ([Azat Khuzhin](https://github.com/azat)).
* HTTP를 통한 쿼리의 `memory_profiler_step`/`max_untracked_memory`를 수정했습니다(테스트 포함). 또한 xml 구성에서 이 값을 전역으로 조정해도 효과가 없는 문제를 수정했습니다. 해당 설정은 실제로 적용되지 않으며, 기본값(4MB)만 [사용됩니다](https://github.com/ClickHouse/ClickHouse/blob/17731245336d8c84f75e4c0894c5797ed7732190/src/Common/ThreadStatus.h#L104). 아울러 `query_id`를 읽은 후 QueryScope를 초기화하도록 하여 HTTP 쿼리의 최상위 ThreadStatus에 대한 `query_id`도 수정했습니다. [#16101](https://github.com/ClickHouse/ClickHouse/pull/16101) ([Azat Khuzhin](https://github.com/azat)).
* 이제 클러스터 구성에서 `<internal_replication>` 설정과 무관하게 `ALTER ... ON CLUSTER` 쿼리를 실행할 수 있습니다. [#16075](https://github.com/ClickHouse/ClickHouse/pull/16075) ([alesapin](https://github.com/alesapin)).
* `clickhouse-client`가 종료 시 제안을 로드하는 과정에서 드물게 비정상 종료될 수 있는 문제를 수정했습니다. 이 수정으로 [#16035](https://github.com/ClickHouse/ClickHouse/issues/16035)이 해결됩니다. [#16047](https://github.com/ClickHouse/ClickHouse/pull/16047) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Redis` 딕셔너리에서 복합 키에 대한 `cache` layout 지원을 추가했습니다. [#15985](https://github.com/ClickHouse/ClickHouse/pull/15985) ([Anton Popov](https://github.com/CurtizJ)).
* 잘못된 구성(`connections_with_failover_max_tries`를 0으로 설정한 경우)에서 쿼리가 멈추는 문제(무한 루프)를 수정했습니다. [#15876](https://github.com/ClickHouse/ClickHouse/pull/15876) ([Azat Khuzhin](https://github.com/azat)).
* 일부 로그 메시지의 레벨을 정보에서 디버그로 낮춰, 모든 쿼리마다 정보 메시지가 표시되지 않도록 했습니다. 이로써 [#5293](https://github.com/ClickHouse/ClickHouse/issues/5293)이 해결되었습니다. [#15816](https://github.com/ClickHouse/ClickHouse/pull/15816) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 오해의 소지가 있는 결과를 방지하기 위해 `MemoryTrackingInBackground*` 메트릭을 제거했습니다. 이 변경으로 [#15684](https://github.com/ClickHouse/ClickHouse/issues/15684)가 수정되었습니다. [#15813](https://github.com/ClickHouse/ClickHouse/pull/15813) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `zookeeper-dump-tree` 도구에 재연결 기능을 추가했습니다. [#15711](https://github.com/ClickHouse/ClickHouse/pull/15711) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `CREATE TABLE table AS table_function(...)` 쿼리에서 컬럼 목록을 명시적으로 지정할 수 있게 했습니다. [#9249](https://github.com/ClickHouse/ClickHouse/issues/9249) 수정. [#14214](https://github.com/ClickHouse/ClickHouse/issues/14214) 수정. [#14295](https://github.com/ClickHouse/ClickHouse/pull/14295) ([tavplubix](https://github.com/tavplubix)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* `SELECT FINAL`에서 파티션 간 파트 머지를 수행하지 않습니다. [#15938](https://github.com/ClickHouse/ClickHouse/pull/15938) ([Kruglov Pavel](https://github.com/Avogar)).
* `-OrNull` 및 `-OrDefault` 집계 함수의 성능을 개선했습니다. [#16661](https://github.com/ClickHouse/ClickHouse/pull/16661) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `quantileMerge`의 성능을 개선했습니다. 이전 버전에서는 지나치게 느렸습니다. 이 변경으로 [#1463](https://github.com/ClickHouse/ClickHouse/issues/1463)이 해결되었습니다. [#16643](https://github.com/ClickHouse/ClickHouse/pull/16643) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 논리 함수의 성능을 소폭 개선했습니다. [#16347](https://github.com/ClickHouse/ClickHouse/pull/16347) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MergeTree 테이블 엔진에서 머지 할당 성능을 개선했습니다. 사용자에게는 눈에 띄지 않는 변경입니다. [#16191](https://github.com/ClickHouse/ClickHouse/pull/16191) ([alesapin](https://github.com/alesapin)).
* 해시 테이블을 미리 할당해 hashed/sparse\_hashed 딕셔너리 로딩 속도를 높였습니다. [#15454](https://github.com/ClickHouse/ClickHouse/pull/15454) ([Azat Khuzhin](https://github.com/azat)).
* 이제 단순한 count 최적화가 약간 더 정교해졌습니다. 정확한 파티션 expr를 포함하는 프레디케이트도 최적화할 수 있습니다. 또한 `max_parallel_replicas > 1`일 때 잘못된 count를 반환하던 [#11092](https://github.com/ClickHouse/ClickHouse/issues/11092)도 수정했습니다. [#15074](https://github.com/ClickHouse/ClickHouse/pull/15074) ([Amos Bird](https://github.com/amosbird)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* stateless tests에 flaky check를 추가했습니다. 머지되기 전에 잠재적으로 flaky한 기능 테스트를 사전에 감지합니다. [#16238](https://github.com/ClickHouse/ClickHouse/pull/16238) ([alesapin](https://github.com/alesapin)).
* amalgamation 대신 `croaring`의 올바른 버전을 사용하도록 했습니다. [#16285](https://github.com/ClickHouse/ClickHouse/pull/16285) ([sundyli](https://github.com/sundy-li)).
* `ya.make` 빌드 시스템(Arcadia)의 빌드 파일 생성 기능을 개선했습니다. [#16700](https://github.com/ClickHouse/ClickHouse/pull/16700) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `MaterializeMySQL` 데이터베이스 엔진용 MySQL BinLog 파일 점검 도구를 추가했습니다. `MaterializeMySQL`은 실험적 기능입니다. [#16223](https://github.com/ClickHouse/ClickHouse/pull/16223) ([Winter Zhang](https://github.com/zhang2014)).
* 실행형이 아닌 파일에 실행 비트가 설정되어 있는지 점검합니다. Windows에서 실행 파일이 실수로 커밋되는 경우가 자주 있습니다. [#15843](https://github.com/ClickHouse/ClickHouse/pull/15843) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 헤더에 `#pragma once`가 있는지 점검합니다. [#15818](https://github.com/ClickHouse/ClickHouse/pull/15818) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* libhdfs3의 잘못된 코드 스타일 `&vector[idx]`를 수정했습니다. 이로써 libcxx 디버그 빌드 문제가 해결됩니다. 관련 항목: [https://github.com/ClickHouse-Extras/libhdfs3/pull/8](https://github.com/ClickHouse-Extras/libhdfs3/pull/8) . [#15815](https://github.com/ClickHouse/ClickHouse/pull/15815) ([Amos Bird](https://github.com/amosbird)).
* Mac OS에서 기타 예시 도구 하나의 빌드 문제를 수정했습니다. 참고로 당사 CI에서는 Mac OS에서 예시를 빌드하지 않고(ClickHouse binary만 빌드함), 따라서 다시 깨질 가능성이 전혀 없다고 할 수는 없습니다. 이 변경으로 [#15804](https://github.com/ClickHouse/ClickHouse/issues/15804)가 해결됩니다. [#15808](https://github.com/ClickHouse/ClickHouse/pull/15808) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Sys/V init 스크립트를 단순화했습니다. [#14135](https://github.com/ClickHouse/ClickHouse/pull/14135) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `db_generator`의 사용성을 높이기 위해 `boost::program_options`를 추가했습니다. 이로써 [#15940](https://github.com/ClickHouse/ClickHouse/issues/15940)가 해결됩니다. [#15973](https://github.com/ClickHouse/ClickHouse/pull/15973) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).

<div id="clickhouse-release-2010">
  ## ClickHouse 릴리스 20.10
</div>

<div id="clickhouse-release-v201074-stable-2020-12-24">
  ### ClickHouse 릴리스 v20.10.7.4-안정, 2020-12-24
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 이중 `IPv4/IPv6` 스택을 사용하는 머신에서 서버가 `clickhouse-odbc-bridge` 프로세스에 연결할 수 없던 문제를 수정했으며, 잘못된 형식의 쿼리를 사용해 ODBC 딕셔너리 업데이트를 수행할 때 발생하던 문제 및/또는 충돌을 유발하던 문제도 수정했습니다. 이 변경으로 [#14489](https://github.com/ClickHouse/ClickHouse/issues/14489)가 해결되었을 가능성이 있습니다. [#18278](https://github.com/ClickHouse/ClickHouse/pull/18278) ([Denis Glazachev](https://github.com/traceon)).
* Enum과 Int 타입 간 key 비교를 수정했습니다. 이로써 [#17989](https://github.com/ClickHouse/ClickHouse/issues/17989)가 해결되었습니다. [#18214](https://github.com/ClickHouse/ClickHouse/pull/18214) ([Amos Bird](https://github.com/amosbird)).
* `MaterializeMySQL` 데이터베이스 엔진에서 고유 키를 변환할 때 발생하던 충돌을 수정했습니다. 이로써 [#18186](https://github.com/ClickHouse/ClickHouse/issues/18186) 및 [#16372](https://github.com/ClickHouse/ClickHouse/issues/16372)가 해결되었습니다.  [#18211](https://github.com/ClickHouse/ClickHouse/pull/18211) ([Winter Zhang](https://github.com/zhang2014)).
* S3 URL 파싱 중 발생하던 `std::out_of_range: basic_string` 문제가 수정되었습니다. [#18059](https://github.com/ClickHouse/ClickHouse/pull/18059) ([Vladimir Chebotarev](https://github.com/excitoon)).
* MaterializeMySQL에서 MySQL의 prefix index 변환을 지원하지 않아 일부 테이블이 MySQL에서 ClickHouse로 동기화되지 않던 문제를 수정했습니다. 이 수정으로 [#15187](https://github.com/ClickHouse/ClickHouse/issues/15187) 및 [#17912](https://github.com/ClickHouse/ClickHouse/issues/17912)가 해결됩니다. [#17944](https://github.com/ClickHouse/ClickHouse/pull/17944) ([Winter Zhang](https://github.com/zhang2014)).
* `topK` 집계 함수에서 발생할 수 있는 segfault를 수정했습니다. 이로써 [#17404](https://github.com/ClickHouse/ClickHouse/issues/17404)를 해결했습니다. [#17845](https://github.com/ClickHouse/ClickHouse/pull/17845) ([Maksim Kita](https://github.com/kitaisreal)).
* `in_memory_parts_enable_wal`이 비활성화되어 있으면 `WAL`에서 파트를 복원하지 않습니다. [#17802](https://github.com/ClickHouse/ClickHouse/pull/17802) ([detailyang](https://github.com/detailyang)).
* ClickHouse가 MySQL 서버와의 연결을 다시 복구하지 못하던 문제를 수정했습니다. [#17681](https://github.com/ClickHouse/ClickHouse/pull/17681) ([Alexander Kazakov](https://github.com/Akazz)).
* server가 데몬 모드로 실행 중일 때 `system.stack_trace` table이 비어 있던 문제를 수정했습니다. [#17630](https://github.com/ClickHouse/ClickHouse/pull/17630) ([Amos Bird](https://github.com/amosbird)).
* `clickhouse-client`를 interactive mode에서 여러 줄 쿼리와 함께 사용할 때 단일 행 주석이 잘못 쿼리 끝까지 확장되던 문제를 수정했습니다. 이 수정으로 [#13654](https://github.com/ClickHouse/ClickHouse/issues/13654)가 해결됩니다. [#17565](https://github.com/ClickHouse/ClickHouse/pull/17565) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 드문 경우에 서버가 연결을 더 이상 수락하지 않을 수 있던 문제가 수정되었습니다. [#17542](https://github.com/ClickHouse/ClickHouse/pull/17542) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 다른 레플리카에서 해당 mutation이 강제 종료되었을 때 `ALTER` 쿼리가 멈추는 문제를 수정했습니다. 이로써 [#16953](https://github.com/ClickHouse/ClickHouse/issues/16953) 문제가 해결되었습니다. [#17499](https://github.com/ClickHouse/ClickHouse/pull/17499) ([alesapin](https://github.com/alesapin)).
* ClickHouse가 마크 캐시 크기를 실제보다 작게 추정하던 버그를 수정했습니다. 이 문제는 마크가 있는 아주 작은 파일이 많이 있을 때 발생할 수 있습니다. [#17496](https://github.com/ClickHouse/ClickHouse/pull/17496) ([alesapin](https://github.com/alesapin)).
* 설정 `optimize_redundant_functions_in_order_by`가 활성화된 경우의 `ORDER BY` 문제를 수정했습니다. [#17471](https://github.com/ClickHouse/ClickHouse/pull/17471) ([Anton Popov](https://github.com/CurtizJ)).
* 잘못된 최적화 때문에 발생할 수 있었던 `DISTINCT` 이후 중복을 수정했습니다. 이로써 [#17294](https://github.com/ClickHouse/ClickHouse/issues/17294)가 해결되었습니다. [#17296](https://github.com/ClickHouse/ClickHouse/pull/17296) ([li chengxiang](https://github.com/chengxianglibra)). [#17439](https://github.com/ClickHouse/ClickHouse/pull/17439) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LowCardinality` 타입의 `JOIN` 테이블을 읽는 중 발생하던 충돌을 수정했습니다. 이로써 [#17228](https://github.com/ClickHouse/ClickHouse/issues/17228) 문제가 해결되었습니다. [#17397](https://github.com/ClickHouse/ClickHouse/pull/17397) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 서브쿼리에 const 컬럼이 있을 때 Set 인덱스 무효화가 잘못되던 문제를 수정했습니다. 이로써 [#17246](https://github.com/ClickHouse/ClickHouse/issues/17246)가 해결됩니다. [#17249](https://github.com/ClickHouse/ClickHouse/pull/17249) ([Amos Bird](https://github.com/amosbird)).
* 충돌을 유발하는 `ColumnConst` 비교를 수정했습니다. 이 수정으로 [#17088](https://github.com/ClickHouse/ClickHouse/issues/17088) 문제가 해결되었습니다. [#17135](https://github.com/ClickHouse/ClickHouse/pull/17135) ([Amos Bird](https://github.com/amosbird)).
* 리더가 아닌 `ReplicatedMergeTreeTables`에서 `ON CLUSTER` 쿼리가 무한정 대기 상태에 빠질 수 있던 버그를 수정했습니다. [#17089](https://github.com/ClickHouse/ClickHouse/pull/17089) ([alesapin](https://github.com/alesapin)).
* 함수 `fuzzBits`에서 퍼저가 찾아낸 버그를 수정했습니다. 이로써 [#16980](https://github.com/ClickHouse/ClickHouse/issues/16980) 문제가 해결됩니다. [#17051](https://github.com/ClickHouse/ClickHouse/pull/17051) ([hexiaoting](https://github.com/hexiaoting)).
* 실행 중 취소될 수 있는 `LIMIT` 같은 원격 쿼리에서 불필요한 네트워크 오류를 방지했습니다. [#17006](https://github.com/ClickHouse/ClickHouse/pull/17006) ([Azat Khuzhin](https://github.com/azat)).
* double에서 캐스팅할 때 큰 정수(128비트, 256비트)에서 잘못된 결과가 나오던 문제를 수정했습니다. [#16986](https://github.com/ClickHouse/ClickHouse/pull/16986) ([Mike](https://github.com/myrrc)).
* 오류 발생 시 `format_avro_schema_registry_url`의 IP를 다시 조회합니다. [#16985](https://github.com/ClickHouse/ClickHouse/pull/16985) ([filimonov](https://github.com/filimonov)).
* `SELECT`에 변경 중인 컬럼에 대한 `WHERE` 표현식이 있고 `ALTER`가 아직 완료되지 않았을 때, `ALTER TABLE ... MODIFY COLUMN ... NewType` 이후 발생할 수 있는 서버 충돌 문제를 수정했습니다. [#16968](https://github.com/ClickHouse/ClickHouse/pull/16968) ([Amos Bird](https://github.com/amosbird)).
* `clickhouse-git-import`에서 blame 정보가 올바르게 계산되지 않는 문제가 있었습니다. [#16959](https://github.com/ClickHouse/ClickHouse/pull/16959) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 단조 함수에 대한 ORDER BY 최적화를 수정했습니다. 이 변경으로 [#16107](https://github.com/ClickHouse/ClickHouse/issues/16107)이 해결되었습니다. [#16956](https://github.com/ClickHouse/ClickHouse/pull/16956) ([Anton Popov](https://github.com/CurtizJ)).
* `optimize_aggregators_of_group_by_keys` 설정이 활성화된 상태에서 `group by` 및 조인 최적화 문제를 수정했습니다. 이로써 [#12604](https://github.com/ClickHouse/ClickHouse/issues/12604) 문제가 해결되었습니다. [#16951](https://github.com/ClickHouse/ClickHouse/pull/16951) ([Anton Popov](https://github.com/CurtizJ)).
* 설치 스크립트는 항상 config 폴더에 하위 디렉터리를 생성해야 합니다. 이는 사용자 지정 config를 사용하는 Docker build에만 해당됩니다. [#16936](https://github.com/ClickHouse/ClickHouse/pull/16936) ([filimonov](https://github.com/filimonov)).
* `ORDER BY`가 있는 쿼리에서 발생할 수 있는 `Illegal type of argument` 오류를 수정했습니다. 이로써 [#16580](https://github.com/ClickHouse/ClickHouse/issues/16580)를 해결합니다. [#16928](https://github.com/ClickHouse/ClickHouse/pull/16928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 데이터가 `WriteBufferFromS3`에 전혀 기록되지 않은 경우 멀티파트 업로드를 중단합니다. [#16840](https://github.com/ClickHouse/ClickHouse/pull/16840) ([Pavel Kovalenko](https://github.com/Jokser)).
* 인수 없이 `any`를 사용할 때 발생하던 충돌을 수정했습니다. 이로써 [#16803](https://github.com/ClickHouse/ClickHouse/issues/16803) 문제가 해결되었습니다. [#16826](https://github.com/ClickHouse/ClickHouse/pull/16826) ([Amos Bird](https://github.com/amosbird)).
* MySQL 프로토콜을 통한 `INSERT` 쿼리에서, ClickHouse가 영향받은 행 수를 반환하지 않고 항상 0을 반환하던 동작을 수정했습니다. 이로써 [#16605](https://github.com/ClickHouse/ClickHouse/issues/16605) 문제가 해결됩니다. [#16715](https://github.com/ClickHouse/ClickHouse/pull/16715) ([Winter Zhang](https://github.com/zhang2014)).
* `TDigest`의 비정상적인 증가 문제를 수정했습니다. [#16680](https://github.com/ClickHouse/ClickHouse/pull/16680) ([hrissan](https://github.com/hrissan)).
* 집계 함수에서 접미사 `if`를 사용할 때 발생하던 원격 쿼리 실패 문제를 수정했습니다. 이 수정으로 [#16574](https://github.com/ClickHouse/ClickHouse/issues/16574), [#16231](https://github.com/ClickHouse/ClickHouse/issues/16231) 문제가 해결되었습니다 [#16610](https://github.com/ClickHouse/ClickHouse/pull/16610) ([Winter Zhang](https://github.com/zhang2014)).

<div id="clickhouse-release-v201041-stable-2020-11-13">
  ### ClickHouse 릴리스 v20.10.4.1-안정, 2020-11-13
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리 프로파일러가 켜져 있고, 일부 함수의 비동기 언와인드 테이블이 (추정상) 깨진 glibc 버전을 사용하는 OS에 ClickHouse가 설치된 경우 드물게 아무런 메시지 없이 크래시가 발생하던 문제를 수정했습니다. 이 수정으로 [#15301](https://github.com/ClickHouse/ClickHouse/issues/15301)과 [#13098](https://github.com/ClickHouse/ClickHouse/issues/13098)이 해결됩니다. [#16846](https://github.com/ClickHouse/ClickHouse/pull/16846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `transform_null_in` 설정이 활성화된 상태에서 여러 컬럼과 튜플에 대한 `IN` 연산자 처리 문제를 수정했습니다. [#15310](https://github.com/ClickHouse/ClickHouse/issues/15310)을 해결합니다. [#16722](https://github.com/ClickHouse/ClickHouse/pull/16722) ([Anton Popov](https://github.com/CurtizJ)).
* max\_threads>0이고 ORDER BY에 표현식이 있는 경우 optimize\_read\_in\_order/optimize\_aggregation\_in\_order 문제를 수정합니다. [#16637](https://github.com/ClickHouse/ClickHouse/pull/16637) ([Azat Khuzhin](https://github.com/azat)).
* 이제 입력에서 AVRO를 파싱할 때 타입에서 LowCardinality가 제거됩니다. [#16188](https://github.com/ClickHouse/ClickHouse/issues/16188)을 해결합니다. [#16521](https://github.com/ClickHouse/ClickHouse/pull/16521) ([Mike](https://github.com/myrrc)).
* MySQL Slave에서 `slave_parallel_worker`가 활성화된 상태로 MySQL Master -> MySQL Slave -> ClickHouse MaterializeMySQL Engine을 사용할 때, GTID 집합을 올바르게 축소해 메타데이터가 빠르게 증가하던 문제를 수정했습니다. 이 수정은 [#15951](https://github.com/ClickHouse/ClickHouse/issues/15951)을 해결합니다. [#16504](https://github.com/ClickHouse/ClickHouse/pull/16504) ([TCeason](https://github.com/TCeason)).
* 분산에 대한 DROP TABLE 문제를 수정했습니다(INSERT와 경합 가능). [#16409](https://github.com/ClickHouse/ClickHouse/pull/16409) ([Azat Khuzhin](https://github.com/azat)).
* 복제 큐의 매우 큰 항목 처리 문제를 수정했습니다. 테이블 구조가 매우 큰 경우(1 MB에 근접) ALTER 쿼리에서 이런 큰 항목이 나타날 수 있습니다. 이 수정은 [#16307](https://github.com/ClickHouse/ClickHouse/issues/16307)을 해결합니다. [#16332](https://github.com/ClickHouse/ClickHouse/pull/16332) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MySQL 데이터베이스 관련 버그를 수정했습니다. 데이터베이스 엔진으로 사용되는 MySQL server가 중단되면, 불필요하게 비활성화된 server에서 테이블을 가져오려고 시도해 일부 쿼리에서 Exception이 발생했습니다. 예를 들어 `SELECT ... FROM system.parts` 쿼리는 MergeTree 테이블에 대해서만 동작해야 하며 MySQL 데이터베이스는 전혀 건드리지 않아야 합니다. [#16032](https://github.com/ClickHouse/ClickHouse/pull/16032) ([Kruglov Pavel](https://github.com/Avogar)).

<div id="improvement">
  #### 개선 사항
</div>

* 프록시로 nginx 서버를 사용하는 환경에서 S3를 사용할 때 적용할 수 있는 우회 방법입니다. 현재 Nginx는 `http://domain.com?delete`처럼 빈 경로가 있는 URL을 허용하지 않지만, 기본 aws-sdk-cpp는 이런 형태의 URL을 생성합니다. 이 커밋에서는 이러한 경우 `http://domain.com/?delete`처럼 경로를 "/"로 지정한 URL을 생성하도록 패치된 aws-sdk-cpp 버전을 사용합니다. [#16813](https://github.com/ClickHouse/ClickHouse/pull/16813) ([ianton-ru](https://github.com/ianton-ru)).

<div id="clickhouse-release-v2010330-2020-10-28">
  ### ClickHouse 릴리스 v20.10.3.30, 2020-10-28
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* `multiple_joins_rewriter_version`을 더 이상 사용하지 않도록 했습니다. 조인 재작성기의 첫 번째 버전을 제거했습니다. [#15472](https://github.com/ClickHouse/ClickHouse/pull/15472) ([Artem Zuikov](https://github.com/4ertus2)).
* 사용자 기대에 더 부합하는 동작을 위해 `format_regexp_escaping_rule` 설정(`Regexp` 포맷 관련)의 기본값을 `Raw`로 변경했습니다(즉, 전체 하위 패턴을 하나의 값으로 읽습니다). [#15426](https://github.com/ClickHouse/ClickHouse/pull/15426) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SQL에서 중첩된 여러 줄 주석 `/* comment /* comment */ */`을 지원하도록 추가했습니다. 이는 SQL 표준을 준수합니다. [#14655](https://github.com/ClickHouse/ClickHouse/pull/14655) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 백그라운드 풀(background pool)과 복제 큐에서 TTL이 있는 머지 수를 제어하기 위한 MergeTree 설정(`max_replicated_merges_with_ttl_in_queue` 및 `max_number_of_merges_with_ttl_in_pool`)을 추가했습니다. 이 변경은 delete TTL을 사용하는 경우에만 이전 버전과의 호환성을 깨뜨립니다. 그 외에는 복제가 계속 호환됩니다. 모든 세그먼트의 레플리카를 한 번에 업데이트하거나, 모든 레플리카 업데이트를 완료할 때까지 `SYSTEM STOP TTL MERGES`를 실행하면 비호환성 문제를 피할 수 있습니다. 복제 큐에 호환되지 않는 항목이 생기면 먼저 `SYSTEM STOP TTL MERGES`를 실행한 다음, 호환되지 않는 TTL 머지가 할당된 파티션에 대해 `ALTER TABLE ... DETACH PARTITION ...`를 실행하십시오. 이후 해당 파티션을 단일 레플리카에 다시 ATTACH하십시오. [#14490](https://github.com/ClickHouse/ClickHouse/pull/14490) ([alesapin](https://github.com/alesapin)).
* 20.5보다 오래된 버전에서 업그레이드할 때 롤링 업데이트를 수행하고, cluster에 20.5 이상 버전과 20.5 미만 버전이 함께 포함되어 있는 상태에서 이전 버전의 ClickHouse 노드를 재시작하면, 더 최신 버전이 존재하는 환경에서 이전 버전이 시작되면서 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 cluster 노드에 새 clickhouse-server 패키지를 설치한 다음 재시작하십시오(즉, clickhouse-server가 재시작될 때 새 버전으로 시작되도록 해야 합니다).

<div id="new-feature-2">
  #### 새 기능
</div>

* 백그라운드에서 데이터 재압축. MergeTree 테이블 엔진 계열에서 `TTL ... RECOMPRESS codec_name`을 지정할 수 있는 기능이 추가되었습니다. [#14494](https://github.com/ClickHouse/ClickHouse/pull/14494) ([alesapin](https://github.com/alesapin)).
* 병렬 quorum 삽입 기능을 추가했습니다. 이로써 [#15601](https://github.com/ClickHouse/ClickHouse/issues/15601)이 해결되었습니다. [#15601](https://github.com/ClickHouse/ClickHouse/pull/15601) ([Latysheva Alexandra](https://github.com/alexelex)).
* 데이터 내구성을 더 엄격하게 보장하기 위한 설정입니다. 비복제 구성에서 유용합니다. [#11948](https://github.com/ClickHouse/ClickHouse/pull/11948) ([Anton Popov](https://github.com/CurtizJ)).
* 중복 block이 로컬에 없는 레플리카(다른 레플리카에서 아직 가져오지 않은 상태)에 기록될 경우, 이를 무시하지 않고 로컬에도 기록하여 성공적으로 복제된 경우와 동일한 효과를 내도록 했습니다. [#11684](https://github.com/ClickHouse/ClickHouse/pull/11684) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 쿼리 Context에서 이름이 있는 서브쿼리를 도입하는 `WITH <identifier> AS (subquery) ... `를 지원합니다. 이로써 [#2416](https://github.com/ClickHouse/ClickHouse/issues/2416)이 해결되었습니다. 이로써 [#4967](https://github.com/ClickHouse/ClickHouse/issues/4967)이 해결되었습니다. [#14771](https://github.com/ClickHouse/ClickHouse/pull/14771) ([Amos Bird](https://github.com/amosbird)).
* 첫 번째 select의 `WITH` SQL 문을 동일한 수준의 다른 select 쿼리에도 전파하고, `WITH` SQL 문의 별칭을 서브쿼리에서도 사용할 수 있게 하는 `enable_global_with_statement` 설정을 도입했습니다. [#15451](https://github.com/ClickHouse/ClickHouse/pull/15451) ([Amos Bird](https://github.com/amosbird)).
* 클러스터 간 쿼리 실행을 안전하게 수행합니다(initial\_user를 현재 쿼리 사용자로 사용). [#13156](https://github.com/ClickHouse/ClickHouse/pull/13156) ([Azat Khuzhin](https://github.com/azat)). [#15551](https://github.com/ClickHouse/ClickHouse/pull/15551) ([Azat Khuzhin](https://github.com/azat)).
* 컬럼 속성과 테이블 TTL을 제거할 수 있는 기능이 추가되었습니다. `ALTER TABLE MODIFY COLUMN col_name REMOVE what_to_remove` 및 `ALTER TABLE REMOVE TTL` 쿼리가 도입되었습니다. 두 작업 모두 가볍고 메타데이터 수준에서 실행됩니다. [#14742](https://github.com/ClickHouse/ClickHouse/pull/14742) ([alesapin](https://github.com/alesapin)).
* 포맷 `RawBLOB`이 추가되었습니다. 이 포맷은 이스케이프나 구분 기호 없이 단일 값을 입력하거나 출력하는 데 사용됩니다. 이로써 [#15349](https://github.com/ClickHouse/ClickHouse/issues/15349)가 해결되었습니다. [#15364](https://github.com/ClickHouse/ClickHouse/pull/15364) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* big-endian 바이트 문자열을 UUID로 변환할 수 있는 `reinterpretAsUUID` 함수를 추가했습니다. [#15480](https://github.com/ClickHouse/ClickHouse/pull/15480) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `force_data_skipping_indices` 설정을 추가했습니다. [#15642](https://github.com/ClickHouse/ClickHouse/pull/15642) ([Azat Khuzhin](https://github.com/azat)).
* Pretty 형식에서 결과 행에 번호를 매길 수 있도록 `output_format_pretty_row_numbers` 설정을 추가했습니다. 이로써 [#15350](https://github.com/ClickHouse/ClickHouse/issues/15350)이 해결되었습니다. [#15443](https://github.com/ClickHouse/ClickHouse/pull/15443) ([flynn](https://github.com/ucasFL)).
* 쿼리 난독화 도구를 추가했습니다. 이 도구를 사용하면 더 나은 테스트를 위해 더 많은 쿼리를 공유할 수 있습니다. 이로써 [#15268](https://github.com/ClickHouse/ClickHouse/issues/15268)을 해결했습니다. [#15321](https://github.com/ClickHouse/ClickHouse/pull/15321) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블 함수 `null('structure')`를 추가했습니다. [#14797](https://github.com/ClickHouse/ClickHouse/pull/14797) ([vxider](https://github.com/Vxider)).
* `formatReadableQuantity` 함수를 추가했습니다. 사람이 큰 숫자를 더 쉽게 읽을 수 있게 해 주는 데 유용합니다. [#14725](https://github.com/ClickHouse/ClickHouse/pull/14725) ([Artem Hnilov](https://github.com/BooBSD)).
* 줄바꿈으로 구분된 여러 줄 시퀀스를 허용하는 포맷 `LineAsString`을 추가했습니다. 각 줄 전체를 하나의 String 필드로 파싱합니다. [#14703](https://github.com/ClickHouse/ClickHouse/pull/14703) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)), [#13846](https://github.com/ClickHouse/ClickHouse/pull/13846) ([hexiaoting](https://github.com/hexiaoting)).
* 문자열 배열 형태로 데이터를 출력하는 `JSONStrings` 포맷을 추가했습니다. [#14333](https://github.com/ClickHouse/ClickHouse/pull/14333) ([hcz](https://github.com/hczhcz)).
* `Regexp` 포맷에 "Raw" 컬럼 포맷 지원이 추가되었습니다. 이를 통해 이스케이프 규칙 없이 하위 패턴 전체를 그대로 간단히 추출할 수 있습니다. [#15363](https://github.com/ClickHouse/ClickHouse/pull/15363) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `TSV` 출력 형식에서 `NULL` 표현을 구성 가능하도록 했습니다. 기본값은 `\N`이며, 설정 `output_format_tsv_null_representation`으로 제어합니다. 이 변경으로 [#9375](https://github.com/ClickHouse/ClickHouse/issues/9375)가 해결되었습니다. 이 설정은 출력 형식에만 적용되며, `TSV` 입력 형식에서 지원되는 `NULL` 표현은 `\N`뿐입니다. [#14586](https://github.com/ClickHouse/ClickHouse/pull/14586) ([Kruglov Pavel](https://github.com/Avogar)).
* `MaterializeMySQL`에서 Decimal 데이터 타입을 지원합니다. `MaterializeMySQL`은 실험적 기능입니다. [#14535](https://github.com/ClickHouse/ClickHouse/pull/14535) ([Winter Zhang](https://github.com/zhang2014)).
* 새로운 기능 추가: `SHOW DATABASES LIKE 'xxx'`. [#14521](https://github.com/ClickHouse/ClickHouse/pull/14521) ([hexiaoting](https://github.com/hexiaoting)).
* 임의의 git 리포지토리를 샘플 데이터셋으로 ClickHouse에 가져오는 스크립트가 추가되었습니다. [#14471](https://github.com/ClickHouse/ClickHouse/pull/14471) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 삽입 SQL 문에서 컬럼 목록에 컬럼 변환기와 함께 별표(또는 그 변형)를 사용할 수 있습니다. [#14453](https://github.com/ClickHouse/ClickHouse/pull/14453) ([Amos Bird](https://github.com/amosbird)).
* 리프 노드에서 읽는 최대 행 수/바이트 수를 제한하기 위한 분산 쿼리용 새 쿼리 복잡도 제한 설정 `max_rows_to_read_leaf`, `max_bytes_to_read_leaf`가 추가되었습니다. 이 제한은 루트 노드의 최종 머지 단계를 *제외하고* 로컬 읽기에만 적용됩니다. [#14221](https://github.com/ClickHouse/ClickHouse/pull/14221) ([Roman Khavronenko](https://github.com/hagen1778)).
* 사용자가 구성 파일의 `<replicated_merge_tree>` 섹션에서 `ReplicatedMergeTree*` 스토리지에 대한 설정을 지정할 수 있도록 했습니다. 이는 `<merge_tree>` 섹션과 비슷하게 동작합니다. `ReplicatedMergeTree*` 스토리지에는 `<merge_tree>`와 `<replicated_merge_tree>`의 설정이 함께 적용되지만, `<replicated_merge_tree>`의 설정이 더 높은 우선순위를 가집니다. `system.replicated_merge_tree_settings` 테이블을 추가했습니다. [#13573](https://github.com/ClickHouse/ClickHouse/pull/13573) ([Amos Bird](https://github.com/amosbird)).
* `mapPopulateSeries` 함수가 추가됨. [#13166](https://github.com/ClickHouse/ClickHouse/pull/13166) ([Ildus Kurbangaliev](https://github.com/ildus)).
* MySQL 타입을 지원합니다: `decimal`(ClickHouse의 `Decimal`로), 그리고 초 미만 정밀도를 지원하는 `datetime`(`DateTime64`로). [#11512](https://github.com/ClickHouse/ClickHouse/pull/11512) ([Vasily Nemkov](https://github.com/Enmk)).
* `system.text_log`, `system.trace_log`, `system.query_log`, `system.query_thread_log` 테이블에 `event_time_microseconds` 필드가 추가되었습니다. [#14760](https://github.com/ClickHouse/ClickHouse/pull/14760) ([Bharat Nallan](https://github.com/bharatnc)).
* `system.asynchronous_metric_log` 및 `system.metric_log` 테이블에 `event_time_microseconds`를 추가했습니다. [#14514](https://github.com/ClickHouse/ClickHouse/pull/14514) ([Bharat Nallan](https://github.com/bharatnc)).
* `system.query_log` 및 `system.query_thread_log` 테이블에 `query_start_time_microseconds` 필드를 추가했습니다. [#14252](https://github.com/ClickHouse/ClickHouse/pull/14252) ([Bharat Nallan](https://github.com/bharatnc)).

<div id="bug-fix">
  #### 버그 수정
</div>

* 제한과 상관없이 메모리가 한도를 초과해 할당될 수 있는 문제를 수정했습니다. 이로써 [#14560](https://github.com/ClickHouse/ClickHouse/issues/14560)이 해결되었습니다. [#16206](https://github.com/ClickHouse/ClickHouse/pull/16206) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `executable` 딕셔너리 소스의 멈춤 현상을 수정했습니다. 이전 버전에서는 일부 포맷(예: `JSONEachRow`)을 사용할 때 자식 프로세스가 최소한 어떤 출력이라도 내기 전까지는 데이터가 자식 프로세스에 전달되지 않았습니다. 이 변경으로 [#1697](https://github.com/ClickHouse/ClickHouse/issues/1697)이 해결되었습니다. 이 변경으로 [#2455](https://github.com/ClickHouse/ClickHouse/issues/2455)가 해결되었습니다. [#14525](https://github.com/ClickHouse/ClickHouse/pull/14525) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 `dictGet`에서 예외가 발생할 때 발생할 수 있는 이중 해제 문제를 수정했습니다. 딕셔너리가 오류 상태로 로드된 경우 이러한 문제가 발생할 수 있었습니다. [#16429](https://github.com/ClickHouse/ClickHouse/pull/16429) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 합계/롤업/cube 수정자 및 group by 키에 대한 min/max 함수를 사용하는 group by 관련 문제를 수정했습니다. [#16393](https://github.com/ClickHouse/ClickHouse/issues/16393)를 수정합니다. [#16397](https://github.com/ClickHouse/ClickHouse/pull/16397) ([Anton Popov](https://github.com/CurtizJ)).
* prefer\_localhost\_replica=0 및 internal\_replication 사용 시 비동기 분산 INSERT 문제를 수정했습니다. [#16358](https://github.com/ClickHouse/ClickHouse/pull/16358) ([Azat Khuzhin](https://github.com/azat)).
* 메모리 누수로 이어질 수 있는 TwoLevelStringHashTable 구현의 심각한 오류를 수정했습니다. [#16264](https://github.com/ClickHouse/ClickHouse/pull/16264) ([Amos Bird](https://github.com/amosbird)).
* 람다에서 집계가 잘못되는 일부 경우에 발생하던 세그폴트를 수정했습니다. [#16082](https://github.com/ClickHouse/ClickHouse/pull/16082) ([Anton Popov](https://github.com/CurtizJ)).
* `ReplicatedVersionedCollapsingMergeTree`의 `ALTER MODIFY ... ORDER BY` 쿼리가 멈추는 문제를 수정했습니다. 이 수정으로 [#15980](https://github.com/ClickHouse/ClickHouse/issues/15980) 문제가 해결됩니다. [#16011](https://github.com/ClickHouse/ClickHouse/pull/16011) ([alesapin](https://github.com/alesapin)).
* `MaterializeMySQL` (실험적 기능): collate 이름과 charset 이름 parser를 수정하고 String type에서 `length = 0`을 지원합니다. [#16008](https://github.com/ClickHouse/ClickHouse/pull/16008) ([Winter Zhang](https://github.com/zhang2014)).
* 복합 키를 사용하는 딕셔너리에서 `direct` 레이아웃을 사용할 수 있게 했습니다. [#16007](https://github.com/ClickHouse/ClickHouse/pull/16007) ([Anton Popov](https://github.com/CurtizJ)).
* 비활성 상태가 일정 기간 이어진 뒤 복제 오류가 발생하면 레플리카가 5\~10분 동안 멈추는 문제를 방지했습니다. [#15987](https://github.com/ClickHouse/ClickHouse/pull/15987) ([filimonov](https://github.com/filimonov)).
* MaterializedView에 데이터를 삽입하거나 MaterializedView에서 조회하는 중 대상 테이블이 동시에 삭제될 때 드물게 발생하던 segfault를 수정했습니다(Atomic 데이터베이스 엔진). [#15984](https://github.com/ClickHouse/ClickHouse/pull/15984) ([tavplubix](https://github.com/tavplubix)).
* 설정 프로필 파싱의 모호성을 수정했습니다. 이제 `CREATE USER ... SETTINGS profile readonly`는 readonly 제약이 있는 `profile` 설정이 아니라, `readonly`라는 이름의 프로필을 사용하는 것으로 해석됩니다. 이 수정으로 [#15628](https://github.com/ClickHouse/ClickHouse/issues/15628)이 해결되었습니다. [#15982](https://github.com/ClickHouse/ClickHouse/pull/15982) ([Vitaly Baranov](https://github.com/vitlibar)).
* `MaterializeMySQL` (실험적 기능): 데이터베이스 생성에 실패할 때 발생하던 충돌을 수정했습니다. [#15954](https://github.com/ClickHouse/ClickHouse/pull/15954) ([Winter Zhang](https://github.com/zhang2014)).
* 테이블 이름이 동시에 변경되는 경우(Atomic 데이터베이스 엔진) `DROP TABLE IF EXISTS`가 `Table ... does not exist` 오류와 함께 실패하던 문제를 수정했습니다. 여러 테이블에 대한 일부 DDL 쿼리(`DROP DATABASE`, `RENAME TABLE` 등)를 동시에 실행할 때 드물게 발생하던 데드락을 수정했습니다. 또한 `DROP/DETACH TABLE`을 동시에 실행하는 경우 `DROP/DETACH DATABASE`가 `Table ... does not exist`와 함께 실패하던 문제를 수정했습니다. [#15934](https://github.com/ClickHouse/ClickHouse/pull/15934) ([tavplubix](https://github.com/tavplubix)).
* `WHERE`, `PREWHERE`, `GLOBAL IN`이 포함된 쿼리를 `Distributed` 테이블에서 실행할 때 잘못 빈 결과가 반환되던 문제를 수정했습니다. [#15792](https://github.com/ClickHouse/ClickHouse/issues/15792). [#15933](https://github.com/ClickHouse/ClickHouse/pull/15933) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* [#12513](https://github.com/ClickHouse/ClickHouse/issues/12513) 수정: 쿼리를 다시 분석할 때 동일한 alias를 사용하는 서로 다른 표현식 관련 문제를 수정했습니다. [#15886](https://github.com/ClickHouse/ClickHouse/pull/15886) ([Winter Zhang](https://github.com/zhang2014)).
* RBAC 구현에서 매우 드물게 발생할 수 있는 교착 상태 문제를 수정했습니다. [#15875](https://github.com/ClickHouse/ClickHouse/pull/15875) ([Vitaly Baranov](https://github.com/vitlibar)).
* `ALTER MODIFY COLUMN` 쿼리 후에 실행된 `SELECT ... ORDER BY DESC` 쿼리에서 발생하던 `Block structure mismatch` 오류를 수정했습니다. [#15800](https://github.com/ClickHouse/ClickHouse/issues/15800). [#15852](https://github.com/ClickHouse/ClickHouse/pull/15852) ([alesapin](https://github.com/alesapin)).
* `MaterializeMySQL` (실험적 기능): `select count()`의 부정확한 동작을 수정했습니다. [#15767](https://github.com/ClickHouse/ClickHouse/pull/15767) ([tavplubix](https://github.com/tavplubix)).
* 가상 컬럼만 선택하는 일부 쿼리의 경우를 수정했습니다. 이전에는 `Not found column _nothing in block` 예외가 발생할 수 있었습니다. [#12298](https://github.com/ClickHouse/ClickHouse/issues/12298)를 수정합니다. [#15756](https://github.com/ClickHouse/ClickHouse/pull/15756) ([Anton Popov](https://github.com/CurtizJ)).
* Atomic 데이터베이스에서 내부 테이블이 있는 materialized view 삭제 시 발생하던 문제를 수정했습니다(MV의 내부 테이블에 대한 재귀적 DROP TABLE로 인해 worker thread가 멈추고, 그 결과 이후의 모든 DROP TABLE도 중단됨). [#15743](https://github.com/ClickHouse/ClickHouse/pull/15743) ([Azat Khuzhin](https://github.com/azat)).
* 첫 번째 시도가 실패한 경우에도 part를 다른 디스크/볼륨으로 이동할 수 있게 했습니다. [#15723](https://github.com/ClickHouse/ClickHouse/pull/15723) ([Pavel Kovalenko](https://github.com/Jokser)).
* `MV` 쿼리에 `ARRAY JOIN`이 포함된 경우 `MATERIALIZED VIEW`에 삽입할 때 발생할 수 있는 `Cannot find column` 오류를 수정했습니다. [#15717](https://github.com/ClickHouse/ClickHouse/pull/15717) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `max_replicated_logs_to_keep` 설정의 기본값이 지나치게 낮았던 문제를 수정했습니다. 이 문제로 인해 레플리카가 너무 자주 유실될 수 있었습니다. 또한 유실된 레플리카의 복구 과정을 개선하여 가장 최신 상태인 레플리카를 복제 원본으로 선택하도록 했습니다. 아울러 유실된 레플리카에서 오래된 파트를 삭제하지 않고 대신 detach하도록 했습니다. [#15701](https://github.com/ClickHouse/ClickHouse/pull/15701) ([tavplubix](https://github.com/tavplubix)).
* MySQL의 Dictionaries 및 테이블에서 드물게 발생하던 경쟁 상태(race condition)를 수정했습니다. [#15686](https://github.com/ClickHouse/ClickHouse/pull/15686) ([alesapin](https://github.com/alesapin)).
* AMQP-CPP의 (무해한) race condition 문제를 수정했습니다. [#15667](https://github.com/ClickHouse/ClickHouse/pull/15667) ([alesapin](https://github.com/alesapin)).
* `Buffer` 테이블의 구조가 대상 테이블과 다른 상태에서 읽는 도중 발생하던 `Cannot add simple transform to empty Pipe` 오류를 수정했습니다. 이 문제는 대상 테이블이 쿼리에 대해 빈 결과를 반환할 때 발생할 수 있었습니다. [#15529](https://github.com/ClickHouse/ClickHouse/issues/15529)을 수정했습니다. [#15662](https://github.com/ClickHouse/ClickHouse/pull/15662) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* S3를 사용하는 MergeTree에 삽입할 때 오류 처리를 올바르게 수행하도록 개선했습니다. S3 기반 MergeTree는 실험적 기능입니다. [#15657](https://github.com/ClickHouse/ClickHouse/pull/15657) ([Pavel Kovalenko](https://github.com/Jokser)).
* S3 테이블 함수 관련 버그를 수정했습니다. URL에서 가져온 리전이 S3 클라이언트 구성에 적용되지 않던 문제입니다. [#15646](https://github.com/ClickHouse/ClickHouse/pull/15646) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 쿼리 계획의 `ReadFromStorage` 단계에서 리소스 소멸 순서를 수정했습니다. 드물게 충돌이 발생하던 문제를 일으킬 수 있었습니다. [#15610](https://github.com/ClickHouse/ClickHouse/issues/15610)과 관련이 있을 가능성이 있습니다. [#15645](https://github.com/ClickHouse/ClickHouse/pull/15645) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* readonly 테이블을 detach할 때 `ReadonlyReplica` 메트릭이 감소하도록 수정했습니다. [#15592](https://github.com/ClickHouse/ClickHouse/pull/15592) ([sundyli](https://github.com/sundy-li)).
* `JSON*` 함수의 결과를 `VALUES`, `LIMIT` 또는 `IN` 연산자의 우변에서 사용할 때 발생하던 `Element ... is not a constant expression` 오류를 수정했습니다. [#15589](https://github.com/ClickHouse/ClickHouse/pull/15589) ([tavplubix](https://github.com/tavplubix)).
* 예외가 발생한 경우 쿼리가 더 빨리 종료됩니다. 예외 발생 시 원격 레플리카에서의 실행을 취소합니다. [#15578](https://github.com/ClickHouse/ClickHouse/pull/15578) ([Azat Khuzhin](https://github.com/azat)).
* 오류 메시지 `Could not calculate available disk space (statvfs), errno: 4, strerror: Interrupted system call`가 발생하는 문제를 방지합니다. 이 수정은 [#15541](https://github.com/ClickHouse/ClickHouse/issues/15541)을 해결합니다. [#15557](https://github.com/ClickHouse/ClickHouse/pull/15557) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* initiator 노드에 데이터베이스가 없는 경우, IN 및 분산 테이블이 포함된 쿼리에서 `Database <db> does not exist.` 오류가 발생하던 문제를 수정했습니다. [#15538](https://github.com/ClickHouse/ClickHouse/pull/15538) ([Artem Zuikov](https://github.com/4ertus2)).
* `MOVE` 또는 `REPLACE PARTITION` 이후, 드물게는 `DETACH`나 `DROP PARTITION` 이후에 존재하지 않는 part를 기다리며 mutation이 멈출 수 있었습니다. 수정되었습니다. [#15537](https://github.com/ClickHouse/ClickHouse/pull/15537) ([tavplubix](https://github.com/tavplubix)).
* 동일한 패턴으로 `LIKE`를 실행한 뒤 `ILIKE` 연산자가 대소문자를 구분하게 되는 버그를 수정했습니다. [#15536](https://github.com/ClickHouse/ClickHouse/pull/15536) ([alesapin](https://github.com/alesapin)).
* 데이터에 없는 컬럼을 선택할 때, 해당 컬럼이 역시 데이터에 없는 다른 컬럼에 의존하는 경우 발생하던 `Missing columns` 오류를 수정했습니다. [#15530](https://github.com/ClickHouse/ClickHouse/issues/15530)을 해결했습니다. [#15532](https://github.com/ClickHouse/ClickHouse/pull/15532) ([alesapin](https://github.com/alesapin)).
* ReplicatedMergeTree에 매개변수 하나만 전달된 경우, 이를 무시하지 않고 오류를 발생시킵니다. [#15516](https://github.com/ClickHouse/ClickHouse/pull/15516) ([nvartolomei](https://github.com/nvartolomei)).
* `ON CLUSTER`에서 드물게 쿼리가 멈추는 현상을 일으킬 수 있는 DDLWorker의 이벤트 구독 버그를 수정했습니다. [#13450](https://github.com/ClickHouse/ClickHouse/issues/13450)에서 도입되었습니다. [#15477](https://github.com/ClickHouse/ClickHouse/pull/15477) ([alesapin](https://github.com/alesapin)).
* `boundingRatio` 집계 함수의 두 번째 인수 유형이 잘못되었을 때 적절한 오류를 보고하도록 수정했습니다. [#15407](https://github.com/ClickHouse/ClickHouse/pull/15407) ([detailyang](https://github.com/detailyang)).
* [#15365](https://github.com/ClickHouse/ClickHouse/issues/15365) 수정: MySQL engine이 있는 데이터베이스를 ATTACH할 때 예외가 발생하던 문제(쿼리 Context 없음)를 수정했습니다. [#15384](https://github.com/ClickHouse/ClickHouse/pull/15384) ([Winter Zhang](https://github.com/zhang2014)).
* select 쿼리에서 컬럼 변환자가 여러 번 나타날 때의 대소문자 처리를 수정했습니다. [#15378](https://github.com/ClickHouse/ClickHouse/pull/15378) ([Amos Bird](https://github.com/amosbird)).
* `S3` 스토리지의 압축 관련 문제를 수정했습니다. [#15376](https://github.com/ClickHouse/ClickHouse/pull/15376) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `SELECT toStartOfDay(today())`와 같은 쿼리가 비어 있는 time\_zone 인수 오류로 실패하던 버그를 수정했습니다. [#15319](https://github.com/ClickHouse/ClickHouse/pull/15319) ([Bharat Nallan](https://github.com/bharatnc)).
* MergeTree 테이블 이름 변경 및 백그라운드 정리 중 발생하는 경쟁 상태(race condition)를 수정했습니다. [#15304](https://github.com/ClickHouse/ClickHouse/pull/15304) ([alesapin](https://github.com/alesapin)).
* 시스템 로그가 활성화된 경우 서버 시작 시 드물게 발생하는 레이스 컨디션을 수정했습니다. [#15300](https://github.com/ClickHouse/ClickHouse/pull/15300) ([alesapin](https://github.com/alesapin)).
* 동일한 `MySQL` 엔진 테이블을 참조하는 서브쿼리가 많은 경우 쿼리가 멈추는 문제를 수정했습니다. 이전에는 쿼리에서 동일한 `MySQL` 테이블을 참조하는 서브쿼리가 16개를 초과하면 무한 대기 상태에 빠졌습니다. [#15299](https://github.com/ClickHouse/ClickHouse/pull/15299) ([Anton Popov](https://github.com/CurtizJ)).
* QueryLog의 MSan 보고 문제를 수정했습니다. 초기화되지 않은 메모리가 `memory_usage` 필드에 사용될 수 있습니다. [#15258](https://github.com/ClickHouse/ClickHouse/pull/15258) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 쿼리에 Merge 테이블에 대한 JOIN이 포함된 경우 GROUP BY에서 발생하던 'Unknown identifier' 문제를 수정했습니다. [#15242](https://github.com/ClickHouse/ClickHouse/pull/15242) ([Artem Zuikov](https://github.com/4ertus2)).
* `LowCardinality` 타입과 함께 `joinGet`을 사용할 때 인스턴스가 충돌하는 문제를 수정했습니다. 이로써 [#15214](https://github.com/ClickHouse/ClickHouse/issues/15214)가 해결되었습니다. [#15220](https://github.com/ClickHouse/ClickHouse/pull/15220) ([Amos Bird](https://github.com/amosbird)).
* `ALTER` 쿼리 후 새 구조의 데이터를 `Buffer`에 삽입할 수 없던 테이블 엔진 `Buffer`의 버그를 수정했습니다. [#15117](https://github.com/ClickHouse/ClickHouse/issues/15117)을 해결했습니다. [#15192](https://github.com/ClickHouse/ClickHouse/pull/15192) ([alesapin](https://github.com/alesapin)).
* MySQL 컬럼 정의 패킷의 Decimal 필드 크기를 조정했습니다. [#15152](https://github.com/ClickHouse/ClickHouse/pull/15152) ([maqroll](https://github.com/maqroll)).
* `join_algorithm='auto'`에서 발생하던 `Data compressed with different methods` 오류를 수정했습니다. `join_algorithm='partial_merge'`에서 왼쪽 테이블 조인 키의 유형으로 LowCardinality가 유지되도록 했습니다. [#15088](https://github.com/ClickHouse/ClickHouse/pull/15088) ([Artem Zuikov](https://github.com/4ertus2)).
* affinity mask 관련 `percpu_arena` 문제를 해결하기 위해 `jemalloc`을 업데이트했습니다. [#15035](https://github.com/ClickHouse/ClickHouse/pull/15035) ([Azat Khuzhin](https://github.com/azat)). [#14957](https://github.com/ClickHouse/ClickHouse/pull/14957) ([Azat Khuzhin](https://github.com/azat)).
* 이미 String과 FixedString 간 비교에는 패딩 비교를 사용하고 있습니다([https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/FunctionsComparison.h#L333](https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/FunctionsComparison.h#L333)). 이 PR은 동일한 로직을 필드 비교에도 적용하여 FixedString을 기본 키(primary key)로 사용할 때의 문제를 바로잡습니다. 이를 통해 [#14908](https://github.com/ClickHouse/ClickHouse/issues/14908)이 수정됩니다. [#15033](https://github.com/ClickHouse/ClickHouse/pull/15033) ([Amos Bird](https://github.com/amosbird)).
* 함수 `bar`가 정교하게 조작된 인수로 호출될 경우 버퍼 오버플로우가 발생할 수 있었습니다. 이로써 [#13926](https://github.com/ClickHouse/ClickHouse/issues/13926)가 해결되었습니다. [#15028](https://github.com/ClickHouse/ClickHouse/pull/15028) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Mac OS용 Docker에서 `clickhouse-server`를 실행할 때 Atomic 데이터베이스에서 DDL 쿼리를 실행하면 발생하던 `Cannot rename ... errno: 22, strerror: Invalid argument` 오류를 수정했습니다. [#15024](https://github.com/ClickHouse/ClickHouse/pull/15024) ([tavplubix](https://github.com/tavplubix)).
* 메모리 제한을 초과해 HashJoin을 MergeJoin으로 전환해야 할 때, join\_algorith='auto'인 RIGHT 또는 FULL JOIN에서 발생하던 충돌을 수정했습니다. [#15002](https://github.com/ClickHouse/ClickHouse/pull/15002) ([Artem Zuikov](https://github.com/4ertus2)).
* 이제 `number_of_free_entries_in_pool_to_execute_mutation` 및 `number_of_free_entries_in_pool_to_lower_max_size_of_merge` 설정을 `background_pool_size`와 같게 지정할 수 있습니다. [#14975](https://github.com/ClickHouse/ClickHouse/pull/14975) ([alesapin](https://github.com/alesapin)).
* 서브쿼리에 `finalizeAggregation` 함수가 포함된 경우 프레디케이트 푸시다운이 작동하지 않던 문제를 수정했습니다. [#14847](https://github.com/ClickHouse/ClickHouse/issues/14847)을 해결합니다. [#14937](https://github.com/ClickHouse/ClickHouse/pull/14937) ([filimonov](https://github.com/filimonov)).
* `system.asynchronous_metrics`에 각 논리 코어별 CPU 주파수를 추가합니다. 이 변경으로 [#14923](https://github.com/ClickHouse/ClickHouse/issues/14923)가 수정되었습니다. [#14924](https://github.com/ClickHouse/ClickHouse/pull/14924) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `MaterializeMySQL` (실험적 기능): `.metadata.tmp File exists` 오류를 해결했습니다. [#14898](https://github.com/ClickHouse/ClickHouse/pull/14898) ([Winter Zhang](https://github.com/zhang2014)).
* `extractAllGroups` 함수의 일부 호출에서 "Memory limit exceeded" 오류가 발생할 수 있는 문제를 수정했습니다. 이로써 [#13383](https://github.com/ClickHouse/ClickHouse/issues/13383)가 해결됩니다. [#14889](https://github.com/ClickHouse/ClickHouse/pull/14889) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* file descriptor를 사용하는 StorageFile에 INSERT를 시도할 때 발생하던 SIGSEGV를 수정했습니다. [#14887](https://github.com/ClickHouse/ClickHouse/pull/14887) ([Azat Khuzhin](https://github.com/azat)).
* `cache` 딕셔너리에서 발생하던 segfault를 해결했습니다 [#14837](https://github.com/ClickHouse/ClickHouse/issues/14837). [#14879](https://github.com/ClickHouse/ClickHouse/pull/14879) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* `MaterializeMySQL` (실험적 기능): MySQL binlog 이벤트 파싱 버그를 수정했습니다. 이 버그로 인해 `MaterializeMySQL` 데이터베이스 엔진에서 `Attempt to read after eof` 및 `Packet payload is not fully read` 오류가 발생했습니다. [#14852](https://github.com/ClickHouse/ClickHouse/pull/14852) ([Winter Zhang](https://github.com/zhang2014)).
* 조회 대상 컬럼에 다른 컬럼에 의존하는 `DEFAULT` 표현식이 있고, 그 다른 컬럼 역시 `DEFAULT`를 가지며 `SELECT` 쿼리에 포함되지도 않고 디스크에도 존재하지 않을 때 `SELECT` 쿼리에서 드물게 발생하던 오류를 수정했습니다. [#14531](https://github.com/ClickHouse/ClickHouse/issues/14531)을 부분적으로 수정합니다. [#14845](https://github.com/ClickHouse/ClickHouse/pull/14845) ([alesapin](https://github.com/alesapin)).
* 설정 파일을 ZK에서 가져와야 할 때(`from_zk` include 옵션 사용), 시작 중 서버가 ZooKeeper와 통신하는 과정에서 멈출 수 있는 문제를 수정했습니다. 이 수정으로 [#14814](https://github.com/ClickHouse/ClickHouse/issues/14814) 문제가 해결됩니다. [#14843](https://github.com/ClickHouse/ClickHouse/pull/14843) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 부호 있는 타입의 축소 `Int -> Int` 캐스트에 대한 단조성 감지 오류를 수정했습니다. 이로 인해 쿼리 결과가 잘못될 수 있습니다. 이 버그는 [#14513](https://github.com/ClickHouse/ClickHouse/issues/14513)에서 확인되었습니다. [#14783](https://github.com/ClickHouse/ClickHouse/pull/14783) ([Amos Bird](https://github.com/amosbird)).
* `Replace` 컬럼 변환기는 식별자를 복제된 AST로 대체해야 합니다. 이로써 [#14695](https://github.com/ClickHouse/ClickHouse/issues/14695) 문제가 해결됩니다. [#14734](https://github.com/ClickHouse/ClickHouse/pull/14734) ([Amos Bird](https://github.com/amosbird)).
* `ALTER ... MODIFY QUERY` 실행 시 materialized view 메타데이터에서 기본 데이터베이스 이름이 누락되던 문제를 수정했습니다. [#14664](https://github.com/ClickHouse/ClickHouse/pull/14664) ([tavplubix](https://github.com/tavplubix)).
* 할당 표현식과 상수 값(예: `UPDATE x = 42`)에서 `Nullable` 컬럼을 사용하는 `ALTER UPDATE` mutation으로 인해 컬럼에 잘못된 값이 기록되거나 segfault가 발생하던 버그를 수정했습니다. [#13634](https://github.com/ClickHouse/ClickHouse/issues/13634), [#14045](https://github.com/ClickHouse/ClickHouse/issues/14045)를 수정했습니다. [#14646](https://github.com/ClickHouse/ClickHouse/pull/14646) ([alesapin](https://github.com/alesapin)).
* 결과 컬럼의 소수 자릿수(scale)가 잘못되어 발생한 Decimal 곱셈 결과 오류를 수정했습니다. [#14603](https://github.com/ClickHouse/ClickHouse/pull/14603) ([Artem Zuikov](https://github.com/4ertus2)).
* `Nullable`의 `LowCardinality`에서 `has` 함수 문제를 수정했습니다. [#14591](https://github.com/ClickHouse/ClickHouse/pull/14591) ([Mike](https://github.com/myrrc)).
* StorageReplicatedMergeTree Engine의 CreateQuery 처리 중 Zookeeper 예외가 발생한 후 데이터 디렉터리를 정리합니다. [#14563](https://github.com/ClickHouse/ClickHouse/pull/14563) ([Bharat Nallan](https://github.com/bharatnc)).
* 매우 큰 매개변수로 인해 오버플로우가 발생한 결과 combinator `-Resample`이 있는 함수에서 드물게 발생하던 segfault를 수정했습니다. [#14562](https://github.com/ClickHouse/ClickHouse/pull/14562) ([Anton Popov](https://github.com/CurtizJ)).
* `Nullable(String)`를 Enum으로 변환할 때 발생하는 버그를 수정했습니다. 이 버그는 [#12745](https://github.com/ClickHouse/ClickHouse/pull/12745)에서 도입되었습니다. 이번 수정으로 [#14435](https://github.com/ClickHouse/ClickHouse/issues/14435)가 해결됩니다. [#14530](https://github.com/ClickHouse/ClickHouse/pull/14530) ([Amos Bird](https://github.com/amosbird)).
* `Nullable` 컬럼의 잘못된 정렬 순서를 수정했습니다. 이로써 [#14344](https://github.com/ClickHouse/ClickHouse/issues/14344)가 해결됩니다. [#14495](https://github.com/ClickHouse/ClickHouse/pull/14495) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* `currentDatabase()` 함수를 `ON CLUSTER` DDL 쿼리에서 사용할 수 없던 버그를 수정했습니다. [#14211](https://github.com/ClickHouse/ClickHouse/pull/14211) ([Winter Zhang](https://github.com/zhang2014)).
* `MaterializeMySQL` (실험적 기능): `MaterializeMySQL` 데이터베이스 엔진에서 발생하던 `Packet payload is not fully read` 오류를 해결했습니다. [#14696](https://github.com/ClickHouse/ClickHouse/pull/14696) ([BohuTANG](https://github.com/BohuTANG)).

<div id="improvement">
  #### 개선 사항
</div>

* 새로 생성되는 데이터베이스에 기본적으로 `Atomic` 데이터베이스 엔진을 사용하도록 설정합니다. [#15003](https://github.com/ClickHouse/ClickHouse/pull/15003) ([tavplubix](https://github.com/tavplubix)).
* 하위 타입이 있는 컬럼에 `Delta`, `T64` 등의 특수 코덱을 지정할 수 있는 기능을 추가했습니다. [#12551](https://github.com/ClickHouse/ClickHouse/issues/12551)을 구현했으며, [#11397](https://github.com/ClickHouse/ClickHouse/issues/11397) 및 [#4609](https://github.com/ClickHouse/ClickHouse/issues/4609)을 수정했습니다. [#15089](https://github.com/ClickHouse/ClickHouse/pull/15089) ([alesapin](https://github.com/alesapin)).
* zookeeper 설정의 동적 재로드. [#14678](https://github.com/ClickHouse/ClickHouse/pull/14678) ([sundyli](https://github.com/sundy-li)).
* 이제 클러스터 구성의 `<internal_replication>` 설정과 무관하게 `ALTER ... ON CLUSTER` 쿼리를 실행할 수 있습니다. [#16075](https://github.com/ClickHouse/ClickHouse/pull/16075) ([alesapin](https://github.com/alesapin)).
* 이제 `joinGet`에서 다중 키 lookup을 지원합니다. [#12418](https://github.com/ClickHouse/ClickHouse/issues/12418)의 후속 작업입니다. [#13015](https://github.com/ClickHouse/ClickHouse/pull/13015) ([Amos Bird](https://github.com/amosbird)).
* `Atomic` 데이터베이스에서 `NO DELAY` 또는 `SYNC`를 지정한 경우 `DROP/DETACH TABLE`이 실제로 완료될 때까지 대기하도록 변경했습니다. [#15448](https://github.com/ClickHouse/ClickHouse/pull/15448) ([tavplubix](https://github.com/tavplubix)).
* 이제 `ALTER` 쿼리를 사용해 `VersionedCollapsingMergeTree`의 버전 컬럼 유형을 변경할 수 있습니다. [#15442](https://github.com/ClickHouse/ClickHouse/pull/15442) ([alesapin](https://github.com/alesapin)).
* 복제된 테이블(Replicated Table) 생성 시 `zookeeper_path`에서 `{database}`, `{table}`, `{uuid}` 매크로를 확장합니다. 서버 재시작 후 `zookeeper_path`가 손상될 수 있는 경우 `RENAME TABLE`을 허용하지 않습니다. [#6917](https://github.com/ClickHouse/ClickHouse/issues/6917)을 수정했습니다. [#15348](https://github.com/ClickHouse/ClickHouse/pull/15348) ([tavplubix](https://github.com/tavplubix)).
* 함수 `now`는 시간대 인수를 받을 수 있습니다. 이로써 [15264](https://github.com/ClickHouse/ClickHouse/issues/15264)가 해결되었습니다. [#15285](https://github.com/ClickHouse/ClickHouse/pull/15285) ([flynn](https://github.com/ucasFL)).
* `/docker-entrypoint-initdb.d/`의 모든 스크립트가 실행될 때까지 ClickHouse 서버에 대한 연결을 허용하지 않습니다. [#15244](https://github.com/ClickHouse/ClickHouse/pull/15244) ([Aleksei Kozharin](https://github.com/alekseik1)).
* `EXPLAIN PLAN` 쿼리에 `optimize` 설정이 추가되었습니다. 활성화하면 쿼리 실행 계획 수준의 최적화가 적용됩니다. 기본적으로 활성화되어 있습니다. [#15201](https://github.com/ClickHouse/ClickHouse/pull/15201) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* CAST의 인수 개수가 잘못되었을 때 표시되는 예외 메시지를 적절하게 수정했습니다. 이로써 [#13992](https://github.com/ClickHouse/ClickHouse/issues/13992)가 해결되었습니다. [#15029](https://github.com/ClickHouse/ClickHouse/pull/15029) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 데이터 파트 삽입 시 TTL 이동을 비활성화하는 옵션이 추가되었습니다. [#15000](https://github.com/ClickHouse/ClickHouse/pull/15000) ([Pavel Kovalenko](https://github.com/Jokser)).
* 뮤테이션을 수행할 때 키 제약 조건을 무시합니다. 이 pull request 없이는 `force_index_by_date = 1` 또는 `force_primary_key = 1`일 때 뮤테이션을 수행할 수 없습니다. [#14973](https://github.com/ClickHouse/ClickHouse/pull/14973) ([Amos Bird](https://github.com/amosbird)).
* 이전 삭제 시도가 ZooKeeper 세션 만료로 인해 실패한 경우에도 Replicated 테이블을 삭제할 수 있도록 했습니다. 이로써 [#11891](https://github.com/ClickHouse/ClickHouse/issues/11891) 문제가 해결됩니다. [#14926](https://github.com/ClickHouse/ClickHouse/pull/14926) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 분산 테이블에서 SETTINGS를 포함한 SELECT를 실행할 때 설정 제약 조건 위반이 과도하게 발생하던 문제를 수정했습니다. [#14876](https://github.com/ClickHouse/ClickHouse/pull/14876) ([Amos Bird](https://github.com/amosbird)).
* 첫 번째 레플리카를 명시적으로 지정할 수 있도록 `load_balancing_first_offset` 쿼리 설정이 추가되었습니다. 이 설정은 `FIRST_OR_RANDOM` 로드 밸런싱 전략과 함께 사용되며, 레플리카의 부하를 제어할 수 있습니다. [#14867](https://github.com/ClickHouse/ClickHouse/pull/14867) ([Amos Bird](https://github.com/amosbird)).
* `EXPLAIN` 결과에서 `SET` 및 `JOIN`의 서브쿼리를 표시합니다. [#14856](https://github.com/ClickHouse/ClickHouse/pull/14856) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 스토리지 `Distributed`에서 다중 볼륨 스토리지 구성을 사용할 수 있게 했습니다. [#14839](https://github.com/ClickHouse/ClickHouse/pull/14839) ([Pavel Kovalenko](https://github.com/Jokser)).
* 동일한 timespec을 기반으로 `query_start_time` 및 `query_start_time_microseconds`를 생성합니다. [#14831](https://github.com/ClickHouse/ClickHouse/pull/14831) ([Bharat Nallan](https://github.com/bharatnc)).
* `StorageJoin` 및 `StorageSet`에서 영속성을 비활성화하는 기능이 추가되었으며, 이 기능은 `disable_set_and_join_persistency` 설정으로 제어됩니다. 또한 이 PR로 이슈 [#6318](https://github.com/ClickHouse/ClickHouse/issues/6318)이 해결되었습니다. [#14776](https://github.com/ClickHouse/ClickHouse/pull/14776) ([vxider](https://github.com/Vxider)).
* 이제 `COLUMNS`를 사용해 컬럼 목록을 묶은 뒤 컬럼 변환기를 적용할 수 있습니다. [#14775](https://github.com/ClickHouse/ClickHouse/pull/14775) ([Amos Bird](https://github.com/amosbird)).
* 머지 점검 기능을 개선하기 위해 `system.merges` 테이블에 `merge_algorithm`을 추가했습니다. [#14705](https://github.com/ClickHouse/ClickHouse/pull/14705) ([Amos Bird](https://github.com/amosbird)).
* ZooKeeper의 exists watch로 인해 발생할 수 있는 메모리 누수 문제를 수정했습니다. [#14693](https://github.com/ClickHouse/ClickHouse/pull/14693) ([hustnn](https://github.com/hustnn)).
* 분산 DDL을 병렬로 실행할 수 있도록 허용합니다. [#14684](https://github.com/ClickHouse/ClickHouse/pull/14684) ([Azat Khuzhin](https://github.com/azat)).
* `QueryMemoryLimitExceeded` 이벤트 카운터를 추가했습니다. 이 변경으로 [#14589](https://github.com/ClickHouse/ClickHouse/issues/14589)가 해결되었습니다. [#14647](https://github.com/ClickHouse/ClickHouse/pull/14647) ([fastio](https://github.com/fastio)).
* 쿼리 포맷팅의 일부 후행 공백을 수정했습니다. [#14595](https://github.com/ClickHouse/ClickHouse/pull/14595) ([Azat Khuzhin](https://github.com/azat)).
* ClickHouse는 partition expr와 key expr를 서로 다르게 처리합니다. Partition expr는 관련 컬럼이 포함된 minmax 인덱스를 구성하는 데 사용되는 반면, primary key expr는 expr로 저장됩니다. 경우에 따라 사용자는 `partition by i / 1000`처럼 더 큰 단위로 테이블을 파티션할 수 있습니다. 하지만 binary 연산자는 단조성이 없으므로, 이 PR은 이를 해결하려고 합니다. 다른 사용 사례에도 도움이 될 수 있습니다. [#14513](https://github.com/ClickHouse/ClickHouse/pull/14513) ([Amos Bird](https://github.com/amosbird)).
* `DiskS3`에 대한 액세스 검사를 건너뛸 수 있는 옵션이 추가되었습니다. `s3` 디스크는 실험적 기능입니다. [#14497](https://github.com/ClickHouse/ClickHouse/pull/14497) ([Pavel Kovalenko](https://github.com/Jokser)).
* 진행 중인 S3 요청이 있는 경우 서버 종료 과정을 더 빠르게 진행합니다. [#14496](https://github.com/ClickHouse/ClickHouse/pull/14496) ([Pavel Kovalenko](https://github.com/Jokser)).
* `SYSTEM RELOAD CONFIG`는 이제 다시 로드에 실패하면 예외를 발생시키며, 이전 users.xml을 계속 사용합니다. 백그라운드에서 주기적으로 수행되는 다시 로드 작업도 실패하면 이전 users.xml을 계속 사용합니다. [#14492](https://github.com/ClickHouse/ClickHouse/pull/14492) ([Vitaly Baranov](https://github.com/vitlibar)).
* `clickhouse-client`의 스크립트 모드에서 VALUES 형식의 인라인 데이터를 사용하는 삽입에서, 줄바꿈 외에도 세미콜론을 데이터 종료자로 지원합니다. [#12288](https://github.com/ClickHouse/ClickHouse/issues/12288)을 해결합니다. [#13192](https://github.com/ClickHouse/ClickHouse/pull/13192) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 컴팩트 파트에서 사용자 지정 코덱을 지원합니다. [#12183](https://github.com/ClickHouse/ClickHouse/pull/12183) ([Anton Popov](https://github.com/CurtizJ)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 작은 파트에서는 compact 파트를 기본적으로 활성화했습니다. 이에 따라 빈번한 삽입을 약간 더 효율적으로(4..100배) 처리할 수 있습니다. [#11913](https://github.com/ClickHouse/ClickHouse/pull/11913) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `quantileTDigest`의 성능을 개선했습니다. 이로써 [#2668](https://github.com/ClickHouse/ClickHouse/issues/2668) 문제가 수정됩니다. [#15542](https://github.com/ClickHouse/ClickHouse/pull/15542) ([Kruglov Pavel](https://github.com/Avogar)).
* AggregatingInOrderTransform/optimize\_aggregation\_in\_order의 메모리 사용량을 크게 줄였습니다. [#15543](https://github.com/ClickHouse/ClickHouse/pull/15543) ([Azat Khuzhin](https://github.com/azat)).
* 256비트 곱셈 속도를 높였습니다. [#15418](https://github.com/ClickHouse/ClickHouse/pull/15418) ([Artem Zuikov](https://github.com/4ertus2)).
* wide 정수의 기본 타입으로 `uint64_t` 또는 `int64_t`를 사용해 256비트 타입의 성능을 개선했습니다. 기존 wide 정수는 기본 타입으로 8비트 타입을 사용합니다. [#14859](https://github.com/ClickHouse/ClickHouse/pull/14859) ([Artem Zuikov](https://github.com/4ertus2)).
* 수직 병합 임시 데이터를 저장할 때 임시 디스크를 명시적으로 사용하도록 했습니다. [#15639](https://github.com/ClickHouse/ClickHouse/pull/15639) ([Grigory Pervakov](https://github.com/GrigoryPervakov)).
* 루프에서 여러 번 DeleteObject를 호출하는 대신 S3 DeleteObjects 요청 1회를 사용하도록 변경했습니다. 기능 변경은 없으므로 integration/test\_log\_family\_s3와 같은 기존 테스트로 검증됩니다. [#15238](https://github.com/ClickHouse/ClickHouse/pull/15238) ([ianton-ru](https://github.com/ianton-ru)).
* `DateTime <op> DateTime`이 느린 일반 구현을 잘못 선택하던 문제를 수정했습니다. 이로써 [#15153](https://github.com/ClickHouse/ClickHouse/issues/15153) 문제가 해결됩니다. [#15178](https://github.com/ClickHouse/ClickHouse/pull/15178) ([Amos Bird](https://github.com/amosbird)).
* `FixedString` 타입의 GROUP BY 키 성능을 개선했습니다. [#15034](https://github.com/ClickHouse/ClickHouse/pull/15034) ([Amos Bird](https://github.com/amosbird)).
* clickhouse-server 시작 시 코드 세그먼트에만 `mlock`을 적용합니다. 이전 버전에서는 디버그 정보를 포함해 매핑된 모든 영역이 메모리에 고정되었습니다. 디버그 정보는 보통 별도 파일로 분리되지만, 그렇지 않으면 메모리 사용량이 2..3 GiB 증가했습니다. [#14929](https://github.com/ClickHouse/ClickHouse/pull/14929) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 링크 타임 최적화로 인해 ClickHouse 바이너리 크기가 더 작아졌습니다.

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 이제 프로덕션용 ClickHouse 빌드에는 clang-11을 사용합니다. [#15239](https://github.com/ClickHouse/ClickHouse/pull/15239) ([alesapin](https://github.com/alesapin)).
* 이제 CI에서 ClickHouse를 빌드할 때 clang-11을 사용합니다. [#14846](https://github.com/ClickHouse/ClickHouse/pull/14846) ([alesapin](https://github.com/alesapin)).
* 바이너리 빌드(Linux, Darwin, AArch64, FreeDSD)의 컴파일러를 clang-11로 전환했습니다. [#15622](https://github.com/ClickHouse/ClickHouse/pull/15622) ([Ilya Yatsishin](https://github.com/qoega)).
* 이제 모든 테스트 이미지에서 `llvm-symbolizer-11`을 사용합니다. [#15069](https://github.com/ClickHouse/ClickHouse/pull/15069) ([alesapin](https://github.com/alesapin)).
* llvm-11로 빌드할 수 있게 했습니다. [#15366](https://github.com/ClickHouse/ClickHouse/pull/15366) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `clang-tidy-10`을 `clang-tidy-11`로 변경했습니다. [#14922](https://github.com/ClickHouse/ClickHouse/pull/14922) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 기본적으로 LLVM의 Experimental 패스 매니저를 사용하도록 변경했습니다. [#15608](https://github.com/ClickHouse/ClickHouse/pull/15608) ([Danila Kutenin](https://github.com/danlark1)).
* 어떤 C++ 번역 단위도 빌드 시간이 10분을 넘거나 메모리 사용량이 10 GB를 초과하지 않도록 했습니다. 이 변경으로 [#14925](https://github.com/ClickHouse/ClickHouse/issues/14925)가 수정되었습니다. [#15060](https://github.com/ClickHouse/ClickHouse/pull/15060) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테스트 실행과 프로파일링 실행을 분리해 성능 테스트가 더 안정적이고 대표성을 띠도록 했습니다. [#15027](https://github.com/ClickHouse/ClickHouse/pull/15027) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 성능 테스트의 신뢰성을 높이기 위한 시도입니다. `madvise`를 사용해 프로세스의 실행 메모리를 런타임에 다시 매핑하여 transparent huge pages를 사용하도록 합니다. 이렇게 하면 성능 테스트 불안정성의 주요 원인인 iTLB miss 수를 줄일 수 있습니다. [#14685](https://github.com/ClickHouse/ClickHouse/pull/14685) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* python3로 전환합니다. 이로써 [#14886](https://github.com/ClickHouse/ClickHouse/issues/14886)가 종료됩니다. [#15007](https://github.com/ClickHouse/ClickHouse/pull/15007) ([Azat Khuzhin](https://github.com/azat)).
* server가 응답하지 않으면 기능 테스트를 즉시 실패로 처리합니다. 이로써 [#15262](https://github.com/ClickHouse/ClickHouse/issues/15262)가 해결되었습니다. [#15267](https://github.com/ClickHouse/ClickHouse/pull/15267) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 구성 파일 없이도 AArch64 버전의 clickhouse-server를 실행할 수 있도록 했습니다. 이로써 [#15174](https://github.com/ClickHouse/ClickHouse/issues/15174)가 용이해집니다. [#15266](https://github.com/ClickHouse/ClickHouse/pull/15266) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* CI Docker 이미지 개선: ZooKeeper를 제거하고 테스트 구성 설치를 단일 스크립트로 처리하도록 했습니다. [#15215](https://github.com/ClickHouse/ClickHouse/pull/15215) ([alesapin](https://github.com/alesapin)).
* 빠른 테스트 스크립트에서 CMake 옵션 전달 문제를 수정했습니다. [#14711](https://github.com/ClickHouse/ClickHouse/issues/14711)의 오류를 해결합니다. [#15155](https://github.com/ClickHouse/ClickHouse/pull/15155) ([alesapin](https://github.com/alesapin)).
* 하나의 명령으로 하드웨어 벤치마크를 수행할 수 있는 스크립트를 추가했습니다. [#15115](https://github.com/ClickHouse/ClickHouse/pull/15115) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 대형 테스트 `test_dictionaries_all_layouts_and_sources`를 여러 개의 작은 테스트로 분할했습니다. [#15110](https://github.com/ClickHouse/ClickHouse/pull/15110) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* base64에서 MSan 보고서가 발생할 수 있는 문제를 수정했을 수 있습니다(AVX-512를 사용하는 서버에서). 이로써 [#14006](https://github.com/ClickHouse/ClickHouse/issues/14006)가 수정됩니다. [#15030](https://github.com/ClickHouse/ClickHouse/pull/15030) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 모든 통합 테스트 \*.py 파일의 코드를 다시 포맷하고 정리했습니다. [#14864](https://github.com/ClickHouse/ClickHouse/pull/14864) ([Bharat Nallan](https://github.com/bharatnc)).
* CI에서 발견된 MaterializeMySQL의 빈 트랜잭션 관련 불안정한 테스트 케이스를 수정했습니다. [#14854](https://github.com/ClickHouse/ClickHouse/pull/14854) ([Winter Zhang](https://github.com/zhang2014)).
* 빌드를 조금 더 빠르게 하도록 개선했습니다. [#14808](https://github.com/ClickHouse/ClickHouse/pull/14808) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 사용하지 않는 헤더를 제거해 빌드를 약간 더 빠르게 했습니다. [#14714](https://github.com/ClickHouse/ClickHouse/pull/14714) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* OSX에서 발생하던 빌드 실패를 수정했습니다. [#14761](https://github.com/ClickHouse/ClickHouse/pull/14761) ([Winter Zhang](https://github.com/zhang2014)).
* OS에서 `ccache`가 감지되면 `cmake`에서 기본적으로 활성화되도록 했습니다. [#14575](https://github.com/ClickHouse/ClickHouse/pull/14575) ([alesapin](https://github.com/alesapin)).
* ClickHouse 리포지토리에서 CI 빌드 구성을 제어하도록 했습니다. [#14547](https://github.com/ClickHouse/ClickHouse/pull/14547) ([alesapin](https://github.com/alesapin)).
* CMake 파일에서: - 일부 옵션 설명의 일부를 위쪽 주석으로 옮겼습니다. - `option`의 기본값에서 0 -> `OFF`, 1 -> `ON`으로 대체했습니다. - 일부 옵션에 설명과 문서 링크를 추가했습니다. - `FUZZER` 옵션을 대체했습니다(`ENABLE_FUZZING`이라는, 동일한 기능을 활성화하는 다른 옵션이 있기 때문입니다). - `ENABLE_TESTS`가 있으므로 `ENABLE_GTEST_LIBRARY` 옵션을 제거했습니다. 전체 설명은 PR: [#14711](https://github.com/ClickHouse/ClickHouse/pull/14711)을 참조하십시오 ([Mike](https://github.com/myrrc)).
* 바이너리 크기를 조금 줄였습니다(디버그 버전 기준 약 50 Mb). [#14555](https://github.com/ClickHouse/ClickHouse/pull/14555) ([Artem Zuikov](https://github.com/4ertus2)).
* 파일 경로를 이어 붙이기 위해 ConfigProcessor에서 std::filesystem::path를 사용합니다. [#14558](https://github.com/ClickHouse/ClickHouse/pull/14558) ([Bharat Nallan](https://github.com/bharatnc)).
* `bitShiftLeft()`를 음수의 큰 정수로 호출할 때 발생하던 디버그 assertion을 수정했습니다. [#14697](https://github.com/ClickHouse/ClickHouse/pull/14697) ([Artem Zuikov](https://github.com/4ertus2)).

<div id="clickhouse-release-209">
  ## ClickHouse 릴리스 20.9
</div>

<div id="clickhouse-release-v209711-stable-2020-12-07">
  ### ClickHouse 릴리스 v20.9.7.11-안정, 2020-12-07
</div>

<div id="performance-improvement">
  #### 성능 개선
</div>

* 매우 많은 수의 `MergeTree` 테이블에 걸친 `Merge` 테이블 읽기 성능을 개선했습니다. [#7748](https://github.com/ClickHouse/ClickHouse/issues/7748)을 해결합니다. [#16988](https://github.com/ClickHouse/ClickHouse/pull/16988) ([Anton Popov](https://github.com/CurtizJ)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `in_memory_parts_enable_wal`이 비활성화된 경우 WAL에서 파트를 복원하지 않도록 합니다. [#17802](https://github.com/ClickHouse/ClickHouse/pull/17802) ([detailyang](https://github.com/detailyang)).
* `Distributed` 테이블에 삽입할 때 공간이 부족하면 발생하던 segfault를 수정했습니다. [#17737](https://github.com/ClickHouse/ClickHouse/pull/17737) ([tavplubix](https://github.com/tavplubix)).
* ClickHouse가 MySQL 서버와의 connection을 다시 복원하지 못하던 문제가 수정되었습니다. [#17681](https://github.com/ClickHouse/ClickHouse/pull/17681) ([Alexander Kazakov](https://github.com/Akazz)).
* Windows Subsystem for Linux에서 실행 중인 ClickHouse의 `Atomic` 데이터베이스에서 `RENAME` 쿼리를 실행할 때 발생하던 `Function not implemented` 오류를 수정했습니다. [#17661](https://github.com/ClickHouse/ClickHouse/issues/17661)을 해결했습니다. [#17664](https://github.com/ClickHouse/ClickHouse/pull/17664) ([tavplubix](https://github.com/tavplubix)).
* clickhouse-client를 대화형 모드에서 여러 줄 쿼리와 함께 사용할 때 한 줄 주석이 쿼리 끝까지 잘못 이어지던 문제가 있었습니다. 이 변경으로 [#13654](https://github.com/ClickHouse/ClickHouse/issues/13654)가 수정되었습니다. [#17565](https://github.com/ClickHouse/ClickHouse/pull/17565) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 드물게 서버가 연결을 더 이상 수락하지 않을 수 있는 문제를 수정했습니다. [#17542](https://github.com/ClickHouse/ClickHouse/pull/17542) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 다른 레플리카에서 해당 mutation이 중지되면 alter 쿼리가 멈추던 문제를 수정했습니다. [#16953](https://github.com/ClickHouse/ClickHouse/issues/16953)를 해결했습니다. [#17499](https://github.com/ClickHouse/ClickHouse/pull/17499) ([alesapin](https://github.com/alesapin)).
* ClickHouse에서 마크 캐시 크기를 과소평가하던 버그를 수정했습니다. 마크가 포함된 매우 작은 파일이 많을 때 이 문제가 발생할 수 있습니다. [#17496](https://github.com/ClickHouse/ClickHouse/pull/17496) ([alesapin](https://github.com/alesapin)).
* 설정 `optimize_redundant_functions_in_order_by`가 활성화된 경우의 `ORDER BY`를 수정했습니다. [#17471](https://github.com/ClickHouse/ClickHouse/pull/17471) ([Anton Popov](https://github.com/CurtizJ)).
* 잘못된 최적화로 인해 발생할 수 있었던 `DISTINCT` 이후의 중복을 수정했습니다. [#17294](https://github.com/ClickHouse/ClickHouse/issues/17294)를 해결했습니다. [#17296](https://github.com/ClickHouse/ClickHouse/pull/17296) ([li chengxiang](https://github.com/chengxianglibra)). [#17439](https://github.com/ClickHouse/ClickHouse/pull/17439) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LowCardinality` 타입의 `JOIN` 테이블을 읽는 중 발생하던 충돌을 수정했습니다. [#17228](https://github.com/ClickHouse/ClickHouse/issues/17228)을 수정했습니다. [#17397](https://github.com/ClickHouse/ClickHouse/pull/17397) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 서브쿼리에 const 컬럼이 있을 때 Set 인덱스가 무효화되던 문제를 수정했습니다. 이로써 [#17246](https://github.com/ClickHouse/ClickHouse/issues/17246)가 해결되었습니다. [#17249](https://github.com/ClickHouse/ClickHouse/pull/17249) ([Amos Bird](https://github.com/amosbird)).
* 충돌을 유발하는 ColumnConst 비교 문제를 수정했습니다. 이 수정으로 [#17088](https://github.com/ClickHouse/ClickHouse/issues/17088) 문제가 해결되었습니다. [#17135](https://github.com/ClickHouse/ClickHouse/pull/17135) ([Amos Bird](https://github.com/amosbird)).
* `some_table`이 `AS table_function()`으로 생성된 경우, `CREATE TABLE ... AS some_table` 쿼리에서 발생하던 충돌을 수정했습니다. [#16944](https://github.com/ClickHouse/ClickHouse/issues/16944)를 해결합니다. [#17072](https://github.com/ClickHouse/ClickHouse/pull/17072) ([tavplubix](https://github.com/tavplubix)).
* fuzzBits 함수의 버그를 수정했습니다. 관련 이슈: [#16980](https://github.com/ClickHouse/ClickHouse/issues/16980). [#17051](https://github.com/ClickHouse/ClickHouse/pull/17051) ([hexiaoting](https://github.com/hexiaoting)).
* `LIMIT`가 있는 쿼리처럼 실행 중에 취소될 수 있는 원격 쿼리에서 불필요한 네트워크 오류를 방지했습니다. [#17006](https://github.com/ClickHouse/ClickHouse/pull/17006) ([Azat Khuzhin](https://github.com/azat)).
* 소규모 개선. [#16866](https://github.com/ClickHouse/ClickHouse/pull/16866) ([tavplubix](https://github.com/tavplubix)).
* MySQL 프로토콜을 통한 INSERT 쿼리에서 영향을 받은 행 수를 반환합니다. 이전에는 ClickHouse가 항상 0을 반환했지만, 이 문제가 수정되었습니다. [#16605](https://github.com/ClickHouse/ClickHouse/issues/16605)을 수정했습니다. [#16715](https://github.com/ClickHouse/ClickHouse/pull/16715) ([Winter Zhang](https://github.com/zhang2014)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 내장 시간대 데이터를 2020d 버전으로 업데이트하고 cctz도 최신 master로 업데이트했습니다. [#17204](https://github.com/ClickHouse/ClickHouse/pull/17204) ([filimonov](https://github.com/filimonov)).

<div id="clickhouse-release-v209614-stable-2020-11-20">
  ### ClickHouse 릴리스 v20.9.6.14-안정, 2020-11-20
</div>

<div id="improvement">
  #### 개선 사항
</div>

* SNI가 필요한 `clickhouse-server` 보안 endpoint에 연결할 수 있게 되었습니다. 이는 `clickhouse-server`가 TLS 프록시 뒤에 호스팅되는 경우에 가능합니다. [#16938](https://github.com/ClickHouse/ClickHouse/pull/16938) ([filimonov](https://github.com/filimonov)).
* 조건부 집계 함수(예: `avgIf`, `sumIf`, `maxIf`)는 조건에 맞는 행이 없고 널 허용 인수를 사용하는 경우 `NULL`을 반환해야 합니다. [#13964](https://github.com/ClickHouse/ClickHouse/pull/13964) ([Winter Zhang](https://github.com/zhang2014)).

<div id="bug-fix">
  #### 버그 수정
</div>

* 리더가 아닌 ReplicatedMergeTreeTables에서 `ON CLUSTER` 쿼리가 무기한 대기할 수 있는 버그를 수정했습니다. [#17089](https://github.com/ClickHouse/ClickHouse/pull/17089) ([alesapin](https://github.com/alesapin)).
* 오류 발생 시 `format_avro_schema_registry_url`의 IP를 다시 확인하도록 수정했습니다. [#16985](https://github.com/ClickHouse/ClickHouse/pull/16985) ([filimonov](https://github.com/filimonov)).
* `SELECT`에 변경 중인 컬럼에 대한 `WHERE` 표현식이 있고 ALTER가 아직 완료되지 않은 상태에서 `ALTER TABLE ... MODIFY COLUMN ... NewType` 수행 후 발생할 수 있는 server 충돌을 수정했습니다. [#16968](https://github.com/ClickHouse/ClickHouse/pull/16968) ([Amos Bird](https://github.com/amosbird)).
* 설치 스크립트가 config 폴더에 항상 하위 디렉터리를 생성하도록 수정했습니다. 이는 사용자 지정 config를 사용하는 Docker build에만 해당합니다. [#16936](https://github.com/ClickHouse/ClickHouse/pull/16936) ([filimonov](https://github.com/filimonov)).
* `ORDER BY`가 포함된 쿼리에서 발생할 수 있는 `Illegal type of argument` 오류를 수정했습니다. [#16580](https://github.com/ClickHouse/ClickHouse/issues/16580)을 수정합니다. [#16928](https://github.com/ClickHouse/ClickHouse/pull/16928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* WriteBufferFromS3에 데이터가 전혀 기록되지 않은 경우 멀티파트 업로드를 중단하도록 수정했습니다. [#16840](https://github.com/ClickHouse/ClickHouse/pull/16840) ([Pavel Kovalenko](https://github.com/Jokser)).
* 인수 없이 `any`를 사용할 때 발생하는 충돌을 수정했습니다. 이는 [#16803](https://github.com/ClickHouse/ClickHouse/issues/16803) 관련 수정입니다. cc @azat. [#16826](https://github.com/ClickHouse/ClickHouse/pull/16826) ([Amos Bird](https://github.com/amosbird)).
* `transform_null_in` setting이 enabled된 상태에서 여러 컬럼과 튜플에 대한 `IN` 연산자 관련 버그를 수정했습니다. [#15310](https://github.com/ClickHouse/ClickHouse/issues/15310)을 수정합니다. [#16722](https://github.com/ClickHouse/ClickHouse/pull/16722) ([Anton Popov](https://github.com/CurtizJ)).
* max\_threads>0이고 `ORDER BY`에 표현식이 있을 때 optimize\_read\_in\_order/optimize\_aggregation\_in\_order 관련 문제를 수정했습니다. [#16637](https://github.com/ClickHouse/ClickHouse/pull/16637) ([Azat Khuzhin](https://github.com/azat)).
* [#16574](https://github.com/ClickHouse/ClickHouse/issues/16574), [#16231](https://github.com/ClickHouse/ClickHouse/issues/16231)을 수정하고, 'if' suffix 집계 함수를 사용할 때 발생하는 원격 쿼리 실패를 수정했습니다. [#16610](https://github.com/ClickHouse/ClickHouse/pull/16610) ([Winter Zhang](https://github.com/zhang2014)).
* 예외가 발생하면 쿼리가 더 빨리 종료되도록 했습니다. 예외 발생 시 원격 레플리카에서의 실행을 취소합니다. [#15578](https://github.com/ClickHouse/ClickHouse/pull/15578) ([Azat Khuzhin](https://github.com/azat)).

<div id="clickhouse-release-v20955-stable-2020-11-13">
  ### ClickHouse 릴리스 v20.9.5.5-안정, 2020-11-13
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리 프로파일러가 켜져 있고, 일부 함수에서 (추정상) 비동기 언와인드 테이블이 손상된 glibc 버전이 포함된 OS에 ClickHouse가 설치된 경우 드물게 조용히 크래시가 발생하던 문제를 수정했습니다. 이 변경으로 [#15301](https://github.com/ClickHouse/ClickHouse/issues/15301)과 [#13098](https://github.com/ClickHouse/ClickHouse/issues/13098)이 수정됩니다. [#16846](https://github.com/ClickHouse/ClickHouse/pull/16846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 입력 AVRO를 파싱할 때 타입에서 LowCardinality가 제거됩니다. [#16188](https://github.com/ClickHouse/ClickHouse/issues/16188)을 수정했습니다. [#16521](https://github.com/ClickHouse/ClickHouse/pull/16521) ([Mike](https://github.com/myrrc)).
* GTID 집합을 올바르게 축소하도록 하여, MySQL Master -> MySQL Slave -> ClickHouse MaterializeMySQL Engine 구성을 사용하고 MySQL Slave에서 `slave_parallel_worker`가 활성화된 경우 메타데이터가 빠르게 증가하던 문제를 수정했습니다. 이 변경으로 [#15951](https://github.com/ClickHouse/ClickHouse/issues/15951)이 수정됩니다. [#16504](https://github.com/ClickHouse/ClickHouse/pull/16504) ([TCeason](https://github.com/TCeason)).
* 분산 분산 테이블에서 DROP TABLE 관련 문제를 수정했습니다 (INSERT와 경쟁 상태 발생). [#16409](https://github.com/ClickHouse/ClickHouse/pull/16409) ([Azat Khuzhin](https://github.com/azat)).
* 복제 큐의 매우 큰 항목 처리 문제를 수정했습니다. 매우 큰 항목은 테이블 구조가 극도로 큰 경우(1 MB에 가까움) ALTER 쿼리에서 나타날 수 있습니다. 이 변경으로 [#16307](https://github.com/ClickHouse/ClickHouse/issues/16307)이 수정됩니다. [#16332](https://github.com/ClickHouse/ClickHouse/pull/16332) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 필터링에 사용할 Set이 생성되지 않아 반환 데이터의 일부가 삭제될 수 있던 비일관적 동작을 수정했습니다. [#16308](https://github.com/ClickHouse/ClickHouse/pull/16308) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* MySQL 데이터베이스 관련 버그를 수정했습니다. 데이터베이스 엔진으로 사용되는 MySQL server가 다운되면, 불필요하게 비활성화된 server에서 테이블을 가져오려고 시도하는 일부 쿼리에서 Exception이 발생하던 문제가 있었습니다. 예를 들어 `SELECT ... FROM system.parts` 쿼리는 MergeTree 테이블에 대해서만 동작해야 하며 MySQL 데이터베이스를 전혀 건드리지 않아야 합니다. [#16032](https://github.com/ClickHouse/ClickHouse/pull/16032) ([Kruglov Pavel](https://github.com/Avogar)).

<div id="clickhouse-release-v209476-stable-2020-10-29">
  ### ClickHouse 릴리스 v20.9.4.76-안정 (2020-10-29)
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `dictGet` 함수에서 예외가 발생할 때 이중 해제가 발생하는 문제를 수정했습니다. 딕셔너리가 오류가 있는 상태로 로드된 경우 이 문제가 발생할 수 있었습니다. [#16429](https://github.com/ClickHouse/ClickHouse/pull/16429) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 합계/롤업/cube 수정자 및 group by 키에 대한 min/max 함수와 함께 사용하는 group by를 수정했습니다. [#16393](https://github.com/ClickHouse/ClickHouse/issues/16393)를 수정합니다. [#16397](https://github.com/ClickHouse/ClickHouse/pull/16397) ([Anton Popov](https://github.com/CurtizJ)).
* prefer\_localhost\_replica=0 및 internal\_replication 사용 시 비동기 분산 INSERT 문제를 수정했습니다. [#16358](https://github.com/ClickHouse/ClickHouse/pull/16358) ([Azat Khuzhin](https://github.com/azat)).
* TwoLevelStringHashTable 구현의 심각하게 잘못된 코드를 수정했습니다. 이 문제는 메모리 누수로 이어질 수 있습니다. 이 버그가 이렇게 오랫동안 숨어 있었다니 놀랍습니다.... [#16264](https://github.com/ClickHouse/ClickHouse/pull/16264) ([Amos Bird](https://github.com/amosbird)).
* 제한과 무관하게 메모리가 과도하게 할당될 수 있던 문제를 수정했습니다. 이로써 [#14560](https://github.com/ClickHouse/ClickHouse/issues/14560)이 해결되었습니다. [#16206](https://github.com/ClickHouse/ClickHouse/pull/16206) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `ReplicatedVersionedCollapsingMergeTree`의 `ALTER MODIFY ... ORDER BY` 쿼리가 멈추는 문제를 수정했습니다. 이 수정으로 [#15980](https://github.com/ClickHouse/ClickHouse/issues/15980) 문제가 해결됩니다. [#16011](https://github.com/ClickHouse/ClickHouse/pull/16011) ([alesapin](https://github.com/alesapin)).
* collate 이름 및 charset 이름 parser를 수정하고 String 타입에서 `length = 0`도 지원하도록 했습니다. [#16008](https://github.com/ClickHouse/ClickHouse/pull/16008) ([Winter Zhang](https://github.com/zhang2014)).
* 복합 키를 사용하는 딕셔너리에서 direct layout을 사용할 수 있게 했습니다. [#16007](https://github.com/ClickHouse/ClickHouse/pull/16007) ([Anton Popov](https://github.com/CurtizJ)).
* 일정 기간 비활성 상태가 지속된 뒤 복제 오류가 발생할 경우 레플리카가 5\~10분간 멈추는 현상을 방지합니다. [#15987](https://github.com/ClickHouse/ClickHouse/pull/15987) ([filimonov](https://github.com/filimonov)).
* MaterializedView에 삽입하거나 MaterializedView에서 조회하는 중 대상 테이블을 동시에 삭제할 때 드물게 발생하던 세그폴트를 수정했습니다(Atomic 데이터베이스 엔진). [#15984](https://github.com/ClickHouse/ClickHouse/pull/15984) ([tavplubix](https://github.com/tavplubix)).
* 설정 프로필 구문 분석의 모호성을 수정했습니다. 이제 `CREATE USER ... SETTINGS profile readonly`는 readonly 제약이 있는 `profile`이라는 이름의 설정이 아니라, `readonly`라는 이름의 프로필을 사용하는 것으로 간주됩니다. 이 변경으로 [#15628](https://github.com/ClickHouse/ClickHouse/issues/15628)이 수정되었습니다. [#15982](https://github.com/ClickHouse/ClickHouse/pull/15982) ([Vitaly Baranov](https://github.com/vitlibar)).
* 데이터베이스 생성이 실패할 때 발생하는 충돌을 수정했습니다. [#15954](https://github.com/ClickHouse/ClickHouse/pull/15954) ([Winter Zhang](https://github.com/zhang2014)).
* 테이블 이름이 동시에 변경되는 경우(Atomic 데이터베이스 엔진) `DROP TABLE IF EXISTS`가 `Table ... does not exist` 오류와 함께 실패하던 문제를 수정했습니다. 여러 테이블을 대상으로 하는 일부 DDL 쿼리(`DROP DATABASE`, `RENAME TABLE` 등)를 동시에 실행할 때 드물게 발생하던 교착 상태를 수정했습니다. `DROP/DETACH TABLE`을 동시에 실행할 때 `DROP/DETACH DATABASE`가 `Table ... does not exist` 오류와 함께 실패하던 문제를 수정했습니다. [#15934](https://github.com/ClickHouse/ClickHouse/pull/15934) ([tavplubix](https://github.com/tavplubix)).
* `WHERE`, `PREWHERE`, `GLOBAL IN`이 포함된 쿼리에서 `Distributed` 테이블 조회 결과가 잘못 비어 있던 문제를 수정했습니다. [#15792](https://github.com/ClickHouse/ClickHouse/issues/15792)를 수정합니다. [#15933](https://github.com/ClickHouse/ClickHouse/pull/15933) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* RBAC에서 발생할 수 있는 교착 상태 문제를 수정했습니다. [#15875](https://github.com/ClickHouse/ClickHouse/pull/15875) ([Vitaly Baranov](https://github.com/vitlibar)).
* `ALTER MODIFY COLUMN` 쿼리 이후에 실행된 `SELECT ... ORDER BY DESC` 쿼리에서 발생하던 `Block structure mismatch` 예외를 수정했습니다. [#15800](https://github.com/ClickHouse/ClickHouse/issues/15800) 문제를 해결했습니다. [#15852](https://github.com/ClickHouse/ClickHouse/pull/15852) ([alesapin](https://github.com/alesapin)).
* MaterializeMySQL에서 `select count()`의 부정확한 동작을 수정했습니다. [#15767](https://github.com/ClickHouse/ClickHouse/pull/15767) ([tavplubix](https://github.com/tavplubix)).
* 가상 컬럼(virtual columns)만 선택하는 일부 쿼리의 경우를 수정했습니다. 이전에는 `Not found column _nothing in block` 예외가 발생할 수 있었습니다. [#12298](https://github.com/ClickHouse/ClickHouse/issues/12298)를 수정했습니다. [#15756](https://github.com/ClickHouse/ClickHouse/pull/15756) ([Anton Popov](https://github.com/CurtizJ)).
* `max_replicated_logs_to_keep` 설정의 기본값이 지나치게 낮아 레플리카가 너무 자주 유실될 수 있던 문제를 수정했습니다. 또한 가장 최신 상태의 레플리카를 선택해 복제하도록 하여 유실된 레플리카의 복구 과정을 개선했습니다. 아울러 유실된 레플리카에서 오래된 파트를 제거하지 않고 대신 detach하도록 변경했습니다. [#15701](https://github.com/ClickHouse/ClickHouse/pull/15701) ([tavplubix](https://github.com/tavplubix)).
* 대상 테이블과 구조가 다른 `Buffer` 테이블에서 읽는 중 발생하던 오류 `Cannot add simple transform to empty Pipe`를 수정했습니다. 이 문제는 대상 테이블이 쿼리에 대해 빈 결과를 반환할 때 발생할 수 있었습니다. [#15529](https://github.com/ClickHouse/ClickHouse/issues/15529)을 수정했습니다. [#15662](https://github.com/ClickHouse/ClickHouse/pull/15662) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* S3 테이블 함수의 글롭 패턴 관련 버그를 수정했습니다. URL의 리전 정보가 S3 클라이언트 구성에 적용되지 않던 문제를 해결했습니다. [#15646](https://github.com/ClickHouse/ClickHouse/pull/15646) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 읽기 전용 테이블을 분리할 때 `ReadonlyReplica` 메트릭이 감소하도록 수정했습니다. 이로써 [#15598](https://github.com/ClickHouse/ClickHouse/issues/15598) 문제가 해결되었습니다. [#15592](https://github.com/ClickHouse/ClickHouse/pull/15592) ([sundyli](https://github.com/sundy-li)).
* ReplicatedMergeTree에 단일 매개변수가 전달되면 이를 무시하지 않고 오류를 발생시킵니다. [#15516](https://github.com/ClickHouse/ClickHouse/pull/15516) ([nvartolomei](https://github.com/nvartolomei)).

<div id="improvement-6">
  #### 개선
</div>

* 이제 클러스터 구성의 `<internal_replication>` 설정과 관계없이 `ALTER ... ON CLUSTER` 쿼리를 실행할 수 있습니다. [#16075](https://github.com/ClickHouse/ClickHouse/pull/16075) ([alesapin](https://github.com/alesapin)).
* 이제 테이블 생성 시 `ReplicatedMergeTree` 인수의 `{database}`, `{table}`, `{uuid}` 매크로가 확장됩니다. [#16160](https://github.com/ClickHouse/ClickHouse/pull/16160) ([tavplubix](https://github.com/tavplubix)).

<div id="clickhouse-release-v209345-stable-2020-10-09">
  ### ClickHouse 릴리스 v20.9.3.45-안정 (2020-10-09)
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `MV` 쿼리에 `ARRAY JOIN`이 포함된 경우 `MATERIALIZED VIEW`에 삽입할 때 발생할 수 있는 `Cannot find column` 오류를 수정했습니다. [#15717](https://github.com/ClickHouse/ClickHouse/pull/15717) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* AMQP-CPP의 race condition을 수정했습니다. [#15667](https://github.com/ClickHouse/ClickHouse/pull/15667) ([alesapin](https://github.com/alesapin)).
* 쿼리 계획의 `ReadFromStorage` 단계에서 리소스 해제 순서를 수정했습니다. 드물게 비정상 종료가 발생할 수 있었습니다. [#15610](https://github.com/ClickHouse/ClickHouse/issues/15610)과 관련이 있을 수 있습니다. [#15645](https://github.com/ClickHouse/ClickHouse/pull/15645) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `VALUES`, `LIMIT` 또는 `IN` 연산자의 오른쪽에서 `JSON*` 함수의 결과를 사용할 때 발생하던 `Element ... is not a constant expression` 오류를 수정했습니다. [#15589](https://github.com/ClickHouse/ClickHouse/pull/15589) ([tavplubix](https://github.com/tavplubix)).
* 오류 메시지 `Could not calculate available disk space (statvfs), errno: 4, strerror: Interrupted system call`가 발생할 수 있는 가능성을 차단했습니다. 이 수정으로 [#15541](https://github.com/ClickHouse/ClickHouse/issues/15541)를 해결했습니다. [#15557](https://github.com/ClickHouse/ClickHouse/pull/15557) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* AggregatingInOrderTransform/optimize\_aggregation\_in\_order의 메모리 사용량을 크게 줄였습니다. [#15543](https://github.com/ClickHouse/ClickHouse/pull/15543) ([Azat Khuzhin](https://github.com/azat)).
* `MOVE` 또는 `REPLACE PARTITION` 후, 드물게는 `DETACH` 또는 `DROP PARTITION` 후에 존재하지 않는 part를 기다리면서 mutation이 멈출 수 있었습니다. 이 문제가 수정되었습니다. [#15537](https://github.com/ClickHouse/ClickHouse/pull/15537) ([tavplubix](https://github.com/tavplubix)).
* 동일한 패턴으로 `LIKE`를 실행한 경우 `ILIKE` 연산자가 더 이상 대소문자를 구분하지 않게 되는 버그를 수정했습니다. [#15536](https://github.com/ClickHouse/ClickHouse/pull/15536) ([alesapin](https://github.com/alesapin)).
* 데이터에 없는 컬럼을 선택할 때, 그 컬럼이 역시 데이터에 없는 다른 컬럼에 의존해 발생하던 `Missing columns` 오류를 수정했습니다. [#15530](https://github.com/ClickHouse/ClickHouse/issues/15530). [#15532](https://github.com/ClickHouse/ClickHouse/pull/15532) ([alesapin](https://github.com/alesapin)).
* 드물게 `ON CLUSTER`에서 쿼리가 멈출 수 있는 DDLWorker의 이벤트 subscription 버그를 수정했습니다. [#13450](https://github.com/ClickHouse/ClickHouse/issues/13450)에서 처음 도입되었습니다. [#15477](https://github.com/ClickHouse/ClickHouse/pull/15477) ([alesapin](https://github.com/alesapin)).
* `boundingRatio` 집계 함수의 두 번째 인수 유형이 잘못된 경우 적절한 오류가 보고되도록 수정했습니다. [#15407](https://github.com/ClickHouse/ClickHouse/pull/15407) ([detailyang](https://github.com/detailyang)).
* `SELECT toStartOfDay(today())`와 같은 쿼리에서 time\_zone 인수가 비어 있다는 오류가 발생하며 실패하던 버그를 수정했습니다. [#15319](https://github.com/ClickHouse/ClickHouse/pull/15319) ([Bharat Nallan](https://github.com/bharatnc)).
* MergeTree 테이블 이름 변경 및 백그라운드 정리 중 발생하는 경쟁 조건을 수정했습니다. [#15304](https://github.com/ClickHouse/ClickHouse/pull/15304) ([alesapin](https://github.com/alesapin)).
* system.logs가 활성화된 경우 서버 시작 시 드물게 발생하던 경쟁 상태를 수정했습니다. [#15300](https://github.com/ClickHouse/ClickHouse/pull/15300) ([alesapin](https://github.com/alesapin)).
* QueryLog의 MSan 보고 문제를 수정했습니다. 초기화되지 않은 메모리가 `memory_usage` 필드에 사용될 수 있었습니다. [#15258](https://github.com/ClickHouse/ClickHouse/pull/15258) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* LowCardinality 타입에서 `joinGet`을 사용할 때 인스턴스가 충돌하던 문제를 수정했습니다. 이 수정으로 [#15214](https://github.com/ClickHouse/ClickHouse/issues/15214) 문제가 해결됩니다. [#15220](https://github.com/ClickHouse/ClickHouse/pull/15220) ([Amos Bird](https://github.com/amosbird)).
* `ALTER` 쿼리 후 새 구조의 데이터를 `Buffer`에 삽입할 수 없던 테이블 엔진 `Buffer`의 버그를 수정했습니다. [#15117](https://github.com/ClickHouse/ClickHouse/issues/15117)을 수정합니다. [#15192](https://github.com/ClickHouse/ClickHouse/pull/15192) ([alesapin](https://github.com/alesapin)).
* MySQL 컬럼 정의 패킷에서 decimals 필드의 크기를 조정합니다. [#15152](https://github.com/ClickHouse/ClickHouse/pull/15152) ([maqroll](https://github.com/maqroll)).
* Mac OS에서 Docker로 clickhouse-server를 실행할 때 Atomic 데이터베이스에서 DDL 쿼리 실행 시 발생하던 `Cannot rename ... errno: 22, strerror: Invalid argument` 오류를 수정했습니다. [#15024](https://github.com/ClickHouse/ClickHouse/pull/15024) ([tavplubix](https://github.com/tavplubix)).
* 서브쿼리에 finalizeAggregation 함수가 포함된 경우 프레디케이트 푸시다운이 작동하지 않던 문제를 수정했습니다. [#14847](https://github.com/ClickHouse/ClickHouse/issues/14847). [#14937](https://github.com/ClickHouse/ClickHouse/pull/14937) ([filimonov](https://github.com/filimonov)).
* 설정 파일을 ZK에서 가져와야 하는 경우(`from_zk` include 옵션 사용), ZooKeeper와 통신하는 중 서버가 시작 시 멈출 수 있는 문제를 수정했습니다. 이 수정으로 [#14814](https://github.com/ClickHouse/ClickHouse/issues/14814) 문제가 해결됩니다. [#14843](https://github.com/ClickHouse/ClickHouse/pull/14843) ([Alexander Kuzmenkov](https://github.com/akuzm)).

<div id="improvement-6">
  #### 개선
</div>

* 이제 `ALTER` 쿼리를 사용해 `VersionedCollapsingMergeTree`의 버전 컬럼 유형을 변경할 수 있습니다. [#15442](https://github.com/ClickHouse/ClickHouse/pull/15442) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v209220-2020-09-22">
  ### ClickHouse 릴리스 v20.9.2.20, 2020-09-22
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 20.5보다 오래된 버전에서 업그레이드할 때 롤링 업데이트를 수행하는 경우, 클러스터에 20.5 이상 버전과 20.5 미만 버전이 혼재한 상태에서 구버전 ClickHouse 노드를 재시작하면, 신버전 노드가 있는 상태에서 구버전이 시작되면서 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 클러스터 노드에 새 clickhouse-server 패키지를 설치한 다음 재시작하십시오. 그러면 clickhouse-server가 재시작될 때 새 버전으로 시작됩니다.

<div id="new-feature">
  #### 새로운 기능
</div>

* 선택한 컬럼 목록에(`*` 또는 `COLUMNS(...)` 뒤) 적용할 수 있는 컬럼 변환자 `EXCEPT`, `REPLACE`, `APPLY`가 추가되었습니다. 예를 들어 `SELECT * EXCEPT(URL) REPLACE(number + 1 AS number)`와 같이 작성할 수 있습니다. 또 다른 예로, 모든 문자열 컬럼의 최대 길이를 구하기 위해 `select * apply(length) apply(max) from wide_string_table`를 사용할 수 있습니다. [#14233](https://github.com/ClickHouse/ClickHouse/pull/14233) ([Amos Bird](https://github.com/amosbird)).
* 순위 상관계수를 계산하는 집계 함수 `rankCorr`가 추가되었습니다. [#11769](https://github.com/ClickHouse/ClickHouse/pull/11769) ([antikvist](https://github.com/antikvist)) [#14411](https://github.com/ClickHouse/ClickHouse/pull/14411) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 서브쿼리를 테이블 객체로 바꾸는 테이블 함수 `view`가 추가되었습니다. 이를 통해 쿼리를 다른 곳에 전달해 사용하기가 쉬워집니다. 예를 들어 remote/cluster 테이블 함수에서 사용할 수 있습니다. [#12567](https://github.com/ClickHouse/ClickHouse/pull/12567) ([Amos Bird](https://github.com/amosbird)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `ALTER UPDATE` mutation에서 할당 표현식과 상수 값(예: `UPDATE x = 42`)에 널 허용 컬럼이 포함된 경우, 컬럼에 잘못된 값이 기록되거나 segfault가 발생하던 버그를 수정했습니다. [#13634](https://github.com/ClickHouse/ClickHouse/issues/13634), [#14045](https://github.com/ClickHouse/ClickHouse/issues/14045)를 수정했습니다. [#14646](https://github.com/ClickHouse/ClickHouse/pull/14646) ([alesapin](https://github.com/alesapin)).
* 결과 컬럼의 decimal scale이 잘못되어 Decimal 곱셈 결과가 잘못되는 문제를 수정했습니다. [#14603](https://github.com/ClickHouse/ClickHouse/pull/14603) ([Artem Zuikov](https://github.com/4ertus2)).
* `Nullable` 컬럼의 잘못된 정렬 순서를 바로잡았습니다. 이로써 [#14344](https://github.com/ClickHouse/ClickHouse/issues/14344) 문제가 해결되었습니다. [#14495](https://github.com/ClickHouse/ClickHouse/pull/14495) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 더 짧은 문자열과 비교할 때 인덱스 분석 중 `FixedString` 유형의 기본 키(primary key)에 대한 비교가 일관되지 않던 문제를 수정했습니다. 이 수정은 [#14908](https://github.com/ClickHouse/ClickHouse/issues/14908)을 해결합니다. [#15033](https://github.com/ClickHouse/ClickHouse/pull/15033) ([Amos Bird](https://github.com/amosbird)).
* part가 1개뿐인 파티션이 있는 테이블에서 머지 할당이 잘못되던 버그를 수정했습니다. [#14444](https://github.com/ClickHouse/ClickHouse/pull/14444) ([alesapin](https://github.com/alesapin)).
* 함수 `bar`가 특별히 조작된 인수와 함께 호출될 경우 버퍼 오버플로우가 발생할 수 있었습니다. 이로써 [#13926](https://github.com/ClickHouse/ClickHouse/issues/13926)가 해결되었습니다. [#15028](https://github.com/ClickHouse/ClickHouse/pull/15028) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `system.asynchronous_metrics`에 논리 코어별 CPU 주파수를 추가했습니다. 이로써 [#14923](https://github.com/ClickHouse/ClickHouse/issues/14923) 문제가 해결됩니다. [#14924](https://github.com/ClickHouse/ClickHouse/pull/14924) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `MaterializeMySQL` 데이터베이스 엔진을 사용할 때 발생하던 `.metadata.tmp File exists` 오류를 해결했습니다. [#14898](https://github.com/ClickHouse/ClickHouse/pull/14898) ([Winter Zhang](https://github.com/zhang2014)).
* 일부 `extractAllGroups` 함수 호출이 "메모리 제한 초과" 오류를 유발할 수 있는 문제를 수정했습니다. 이 수정은 [#13383](https://github.com/ClickHouse/ClickHouse/issues/13383)를 해결합니다. [#14889](https://github.com/ClickHouse/ClickHouse/pull/14889) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* StorageFile(fd)에 INSERT를 시도할 때 발생하던 SIGSEGV를 수정했습니다. [#14887](https://github.com/ClickHouse/ClickHouse/pull/14887) ([Azat Khuzhin](https://github.com/azat)).
* `SELECT` 쿼리에서 조회 대상 컬럼에 다른 컬럼에 의존하는 `DEFAULT` 표현식이 있고, 그 다른 컬럼에도 `DEFAULT`가 설정되어 있으며 `SELECT` 쿼리에 포함되지 않고 디스크에도 존재하지 않는 경우 드물게 발생하던 오류를 수정했습니다. [#14531](https://github.com/ClickHouse/ClickHouse/issues/14531)을 부분적으로 수정합니다. [#14845](https://github.com/ClickHouse/ClickHouse/pull/14845) ([alesapin](https://github.com/alesapin)).
* 부호 있는 타입의 축소 `Int -> Int` 캐스트에서 잘못된 단조성 판별을 수정했습니다. 이 문제로 인해 쿼리 결과가 잘못될 수 있습니다. 이 버그는 [#14513](https://github.com/ClickHouse/ClickHouse/issues/14513)에서 확인되었습니다. [#14783](https://github.com/ClickHouse/ClickHouse/pull/14783) ([Amos Bird](https://github.com/amosbird)).
* `ALTER ... MODIFY QUERY` 실행 시 materialized view의 메타데이터에서 기본 데이터베이스 이름이 누락되는 문제를 수정했습니다. [#14664](https://github.com/ClickHouse/ClickHouse/pull/14664) ([tavplubix](https://github.com/tavplubix)).
* LowCardinality 및 널 허용 타입이 포함된 경우 함수 `has`의 결과가 잘못될 수 있는 문제를 수정했습니다. [#14591](https://github.com/ClickHouse/ClickHouse/pull/14591) ([Mike](https://github.com/myrrc)).
* ReplicatedMergeTree Engine을 사용하는 테이블의 CREATE 쿼리에서 Zookeeper 예외가 발생한 경우 데이터 디렉터리를 정리합니다. [#14563](https://github.com/ClickHouse/ClickHouse/pull/14563) ([Bharat Nallan](https://github.com/bharatnc)).
* 매우 큰 매개변수에서 오버플로우가 발생할 때 결과에 드물게 나타날 수 있던 combinator `-Resample`가 있는 함수의 segfault를 수정했습니다. [#14562](https://github.com/ClickHouse/ClickHouse/pull/14562) ([Anton Popov](https://github.com/CurtizJ)).
* `topK` 집계 함수에서 배열 크기 오버플로우를 검사하도록 했습니다. 이 검사가 없으면 사용자가 정교하게 조작된 매개변수가 포함된 쿼리를 보내 server가 충돌할 수 있습니다. 이 수정으로 [#14452](https://github.com/ClickHouse/ClickHouse/issues/14452)가 해결되었습니다. [#14467](https://github.com/ClickHouse/ClickHouse/pull/14467) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SysVinit의 재시작/시작/중지/리로드를 systemd로 프록시합니다(사용 중인 경우). [#14460](https://github.com/ClickHouse/ClickHouse/pull/14460) ([Azat Khuzhin](https://github.com/azat)).
* `PipelineExecutor` 자체에서 예외가 발생하면 쿼리 실행을 중단합니다. 이를 통해 드물게 발생할 수 있는 쿼리 멈춤 현상을 방지할 수 있습니다. [#14334](https://github.com/ClickHouse/ClickHouse/pull/14334) [#14402](https://github.com/ClickHouse/ClickHouse/pull/14402) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `AS table_function`으로 생성된 테이블에서 `ALTER` 쿼리 수행 중 발생하던 충돌을 수정했습니다. 이로써 [#14212](https://github.com/ClickHouse/ClickHouse/issues/14212)가 해결되었습니다. [#14326](https://github.com/ClickHouse/ClickHouse/pull/14326) ([alesapin](https://github.com/alesapin)).
* ALTER LIVE VIEW 쿼리에서 REFRESH 명령 실행 중 발생하던 예외를 수정했습니다. LIVE VIEW는 실험적 기능입니다. [#14320](https://github.com/ClickHouse/ClickHouse/pull/14320) ([Bharat Nallan](https://github.com/bharatnc)).
* 중첩된 인터프리터를 사용하는 쿼리에서 QueryPlan의 수명(EXPLAIN PIPELINE graph=1용)을 수정했습니다. [#14315](https://github.com/ClickHouse/ClickHouse/pull/14315) ([Azat Khuzhin](https://github.com/azat)).
* SSD cache 복합 키 외부 딕셔너리에서 튜플 크기 검사를 개선했습니다. 이 수정으로 [#13981](https://github.com/ClickHouse/ClickHouse/issues/13981)가 해결됩니다. [#14313](https://github.com/ClickHouse/ClickHouse/pull/14313) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `ALIAS` 컬럼 유형에서는 `CODEC`를 사용할 수 없도록 했습니다. [#13911](https://github.com/ClickHouse/ClickHouse/issues/13911)을 수정했습니다. [#14263](https://github.com/ClickHouse/ClickHouse/pull/14263) ([Bharat Nallan](https://github.com/bharatnc)).
* 전역 수준이 아닌 범위에서 실행할 때 `GRANT ALL` 문의 문제를 수정했습니다. [#13987](https://github.com/ClickHouse/ClickHouse/pull/13987) ([Vitaly Baranov](https://github.com/vitlibar)).
* 람다에서의 arrayJoin() 캡처 문제 수정(논리 오류 메시지와 함께 예외가 발생하던 문제). [#13792](https://github.com/ClickHouse/ClickHouse/pull/13792) ([Azat Khuzhin](https://github.com/azat)).

<div id="experimental-feature-2">
  #### 실험 기능
</div>

* 주어진 SELECT 쿼리를 기반으로 무작위 데이터베이스를 생성하는 `db-generator` 도구를 추가했습니다. 사용자에게서 불완전한 버그 보고만 받은 경우에도 문제를 재현하는 데 도움이 될 수 있습니다. [#14442](https://github.com/ClickHouse/ClickHouse/pull/14442) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)) [#10973](https://github.com/ClickHouse/ClickHouse/issues/10973) ([ZeDRoman](https://github.com/ZeDRoman)).

<div id="improvement">
  #### 개선 사항
</div>

* 분산 스토리지에서 다중 볼륨 스토리지 구성을 사용할 수 있습니다. [#14839](https://github.com/ClickHouse/ClickHouse/pull/14839) ([Pavel Kovalenko](https://github.com/Jokser)).
* `toStartOf*` 계열 함수에서 빈 `time_zone` 인수를 허용하지 않습니다. [#14509](https://github.com/ClickHouse/ClickHouse/pull/14509) ([Bharat Nallan](https://github.com/bharatnc)).
* MySQL handler는 `SET @@var = value`와 같은 쿼리에 `OK`를 반환합니다. 이러한 statement는 무시됩니다. 일부 MySQL driver는 핸드셰이크 이후 초기 설정을 위해 `SET @@` 쿼리를 보내므로 이 동작이 필요합니다 [https://github.com/ClickHouse/ClickHouse/issues/9336#issuecomment-686222422](https://github.com/ClickHouse/ClickHouse/issues/9336#issuecomment-686222422) . [#14469](https://github.com/ClickHouse/ClickHouse/pull/14469) ([BohuTANG](https://github.com/BohuTANG)).
* 이제 이전에 구체화되지 않은 TTL은 머지 중에 적용됩니다. [#14438](https://github.com/ClickHouse/ClickHouse/pull/14438) ([alesapin](https://github.com/alesapin)).
* 이제 `clickhouse-obfuscator`가 [#13163](https://github.com/ClickHouse/ClickHouse/issues/13163)에서 제안된 UUID 유형을 지원합니다. [#14409](https://github.com/ClickHouse/ClickHouse/pull/14409) ([dimarub2000](https://github.com/dimarub2000)).
* [#11384](https://github.com/ClickHouse/ClickHouse/issues/11384)에서 제안된 새로운 설정 `system_events_show_zero_values`를 추가했습니다. [#14404](https://github.com/ClickHouse/ClickHouse/pull/14404) ([dimarub2000](https://github.com/dimarub2000)).
* `MaterializeMySQL`에서 프라이머리 키를 암묵적으로 NOT NULL로 변환합니다 (`MySQL`과 동일). [#14114](https://github.com/ClickHouse/ClickHouse/issues/14114)를 수정했습니다. [#14397](https://github.com/ClickHouse/ClickHouse/pull/14397) ([Winter Zhang](https://github.com/zhang2014)).
* boost multiprecision의 대형 정수(256비트)를 [https://github.com/cerevra/int](https://github.com/cerevra/int) 의 구현으로 대체합니다. 256비트 정수는 실험적입니다. [#14229](https://github.com/ClickHouse/ClickHouse/pull/14229) ([Artem Zuikov](https://github.com/4ertus2)).
* `system.part_log`의 파트에 기본 압축 코덱인 `default_compression_codec`를 추가합니다. [#14116](https://github.com/ClickHouse/ClickHouse/pull/14116) ([alesapin](https://github.com/alesapin)).
* `DateTime` 유형에 precision 인수를 추가합니다. 이제 `DateTime64` 대신 `DateTime` 이름을 사용할 수 있습니다. [#13761](https://github.com/ClickHouse/ClickHouse/pull/13761) ([Winter Zhang](https://github.com/zhang2014)).
* `Redis` 외부 딕셔너리에 requirepass 인증을 추가했습니다. [#13688](https://github.com/ClickHouse/ClickHouse/pull/13688) ([Ivan Torgashov](https://github.com/it1804)).
* `RabbitMQ` engine이 개선되었습니다. connection 및 channel 장애 처리, 올바른 커밋, 삽입 실패 처리, 향상된 exchange, 큐 내구성, 큐 재개 기능, 새로운 큐 설정이 추가되었습니다. 테스트도 수정했습니다. [#12761](https://github.com/ClickHouse/ClickHouse/pull/12761) ([Kseniia Sumarokova](https://github.com/kssenii)).
* compact 파트에서 사용자 정의 코덱을 지원합니다. [#12183](https://github.com/ClickHouse/ClickHouse/pull/12183) ([Anton Popov](https://github.com/CurtizJ)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* `optimize_skip_unused_shards` 및 `optimize_distributed_group_by_sharding_key` 사용 시, GROUP BY `sharding_key`를 사용하는 분산 테이블에 대해 LIMIT/LIMIT BY/ORDER BY가 포함된 쿼리를 최적화합니다. [#10373](https://github.com/ClickHouse/ClickHouse/pull/10373) ([Azat Khuzhin](https://github.com/azat)).
* 여러 `JOIN` 및 `IN`에 대한 Set을 병렬로 생성합니다. 서로 다른 여러 `IN subquery` 표현식이 있는 쿼리의 성능이 약간 향상될 수 있습니다. [#14412](https://github.com/ClickHouse/ClickHouse/pull/14412) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 각 컨슈머에 독립적인 스레드를 제공해 Kafka 엔진 성능을 개선합니다. Kafka와 같은 스트리밍 엔진을 위한 별도의 스레드 풀을 추가했습니다. [#13939](https://github.com/ClickHouse/ClickHouse/pull/13939) ([fastio](https://github.com/fastio)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* `Functions`에서 디버그 정보를 제거해 디버그 빌드의 바이너리 크기를 줄였습니다. 이는 매우 오래된 링커를 사용하는 Yandex의 한 내부 프로젝트에만 필요합니다. [#14549](https://github.com/ClickHouse/ClickHouse/pull/14549) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clang 11로 빌드할 수 있도록 준비했습니다. [#14455](https://github.com/ClickHouse/ClickHouse/pull/14455) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 백포트 스크립트의 로직을 수정했습니다. 이전 버전에서는 빨간색이 100%인 모든 레이블에 대해 동작했습니다. 이는 이상한 동작이었습니다. [#14433](https://github.com/ClickHouse/ClickHouse/pull/14433) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 통합 테스트는 기본 base config를 사용합니다. 모든 구성 변경은 각 인스턴스별로 main\_configs, user\_configs, dictionaries 매개변수를 통해 명시적으로 지정합니다. [#13647](https://github.com/ClickHouse/ClickHouse/pull/13647) ([Ilya Yatsishin](https://github.com/qoega)).

<div id="clickhouse-release-208">
  ## ClickHouse 릴리스 20.8
</div>

<div id="clickhouse-release-v208122-lts-2021-01-16">
  ### ClickHouse 릴리스 v20.8.12.2-lts, 2021-01-16
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* \*If combinator와 단항 함수 및 널 허용 타입 관련 문제를 수정했습니다. [#18806](https://github.com/ClickHouse/ClickHouse/pull/18806) ([Azat Khuzhin](https://github.com/azat)).
* wide에서 compact 파트로의 머지를 제한했습니다. 수직 병합에서는 이로 인해 손상된 결과 파트가 생성될 수 있었습니다. [#18381](https://github.com/ClickHouse/ClickHouse/pull/18381) ([Anton Popov](https://github.com/CurtizJ)).

<div id="clickhouse-release-v2081117-lts-2020-12-25">
  ### ClickHouse 릴리스 v20.8.11.17-lts, 2020-12-25
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 머지 중 AIO 쓰기를 비활성화했습니다. 머지 과정에서 매우 드물게 프라이머리 키 컬럼의 데이터가 손상될 수 있기 때문입니다. [#18481](https://github.com/ClickHouse/ClickHouse/pull/18481) ([alesapin](https://github.com/alesapin)).
* `Nullable(String)` 타입 인수로 `toType(...)` 함수(`toDate`, `toUInt32` 등)를 호출할 때 발생하던 `value is too short` 오류를 수정했습니다. 이제 이러한 함수는 파싱 오류가 발생하면 예외를 발생시키는 대신 `NULL`을 반환합니다. [#7673](https://github.com/ClickHouse/ClickHouse/issues/7673)을 수정했습니다. [#18445](https://github.com/ClickHouse/ClickHouse/pull/18445) ([tavplubix](https://github.com/tavplubix)).
* 2단계 집계를 사용할 때 combinator `Distinct`가 적용된 집계 함수에서 발생할 수 있는 충돌을 수정했습니다. [#17682](https://github.com/ClickHouse/ClickHouse/issues/17682)을 수정했습니다. [#18365](https://github.com/ClickHouse/ClickHouse/pull/18365) ([Anton Popov](https://github.com/CurtizJ)).

<div id="clickhouse-release-v2081013-lts-2020-12-24">
  ### ClickHouse 릴리스 v20.8.10.13-lts, 2020-12-24
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `logger.size` 매개변수에 2^32보다 큰 숫자 값을 지정해 서버 로그 회전을 구성한 경우, 로그가 제대로 회전되지 않았습니다. [#17905](https://github.com/ClickHouse/ClickHouse/pull/17905) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* MergeTreeWriterSettings에서 `max_compress_block_size`를 `min_compress_block_size`로 잘못 초기화하던 문제를 수정했습니다. [#17833](https://github.com/ClickHouse/ClickHouse/pull/17833) ([flynn](https://github.com/ucasFL)).
* ClickHouse가 MySQL 서버와의 연결을 다시 수립하지 못하던 문제를 수정했습니다. [#17681](https://github.com/ClickHouse/ClickHouse/pull/17681) ([Alexander Kazakov](https://github.com/Akazz)).
* 해당 mutation이 다른 레플리카에서 중단되었을 때 `ALTER` 쿼리가 멈추는 문제를 수정했습니다. 이 수정으로 [#16953](https://github.com/ClickHouse/ClickHouse/issues/16953)가 해결됩니다. [#17499](https://github.com/ClickHouse/ClickHouse/pull/17499) ([alesapin](https://github.com/alesapin)).
* ClickHouse가 마크 캐시 크기를 실제보다 작게 산정할 때 발생하던 버그를 수정했습니다. 마크가 포함된 아주 작은 파일이 많은 경우 이런 문제가 발생할 수 있습니다. [#17496](https://github.com/ClickHouse/ClickHouse/pull/17496) ([alesapin](https://github.com/alesapin)).
* 설정 `optimize_redundant_functions_in_order_by`가 활성화된 경우의 `ORDER BY` 문제를 수정했습니다. [#17471](https://github.com/ClickHouse/ClickHouse/pull/17471) ([Anton Popov](https://github.com/CurtizJ)).
* 충돌을 유발하던 `ColumnConst` 비교를 수정했습니다. 이 수정으로 [#17088](https://github.com/ClickHouse/ClickHouse/issues/17088) 문제가 해결되었습니다. [#17135](https://github.com/ClickHouse/ClickHouse/pull/17135) ([Amos Bird](https://github.com/amosbird)).
* 리더가 아닌 ReplicatedMergeTreeTables에서 `ON CLUSTER` 쿼리가 무기한 대기할 수 있던 버그를 수정했습니다. [#17089](https://github.com/ClickHouse/ClickHouse/pull/17089) ([alesapin](https://github.com/alesapin)).
* 실행 중 취소될 수 있는 원격 쿼리(예: `LIMIT`가 있는 쿼리)에서 불필요한 네트워크 오류를 방지했습니다. [#17006](https://github.com/ClickHouse/ClickHouse/pull/17006) ([Azat Khuzhin](https://github.com/azat)).
* 오류 발생 시 `format_avro_schema_registry_url`의 IP를 다시 조회합니다. [#16985](https://github.com/ClickHouse/ClickHouse/pull/16985) ([filimonov](https://github.com/filimonov)).
* `ALTER TABLE ... MODIFY COLUMN ... NewType` 이후, 변경 중인 컬럼에 대한 `WHERE` 표현식이 있는 `SELECT`를 수행하고 ALTER가 아직 완료되지 않은 상태에서 발생할 수 있던 서버 충돌을 수정했습니다. [#16968](https://github.com/ClickHouse/ClickHouse/pull/16968) ([Amos Bird](https://github.com/amosbird)).
* 설치 스크립트는 설정 폴더에 항상 하위 디렉터리를 생성해야 합니다. 이는 사용자 지정 설정을 사용하는 Docker build에만 관련됩니다. [#16936](https://github.com/ClickHouse/ClickHouse/pull/16936) ([filimonov](https://github.com/filimonov)).
* `ORDER BY`가 있는 쿼리에서 발생할 수 있던 `Illegal type of argument` 오류를 수정했습니다. 관련 이슈: [#16580](https://github.com/ClickHouse/ClickHouse/issues/16580). [#16928](https://github.com/ClickHouse/ClickHouse/pull/16928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* WriteBufferFromS3에 데이터가 기록되지 않았을 경우 멀티파트 업로드를 중단합니다. [#16840](https://github.com/ClickHouse/ClickHouse/pull/16840) ([Pavel Kovalenko](https://github.com/Jokser)).
* 인수 없이 `any`를 사용할 때 발생하는 충돌을 수정했습니다. [#16803](https://github.com/ClickHouse/ClickHouse/issues/16803)을 해결합니다. [#16826](https://github.com/ClickHouse/ClickHouse/pull/16826) ([Amos Bird](https://github.com/amosbird)).
* `transform_null_in` 설정이 활성화된 경우 여러 컬럼과 튜플에 대한 `IN` 연산자를 수정했습니다. [#15310](https://github.com/ClickHouse/ClickHouse/issues/15310)을 수정했습니다. [#16722](https://github.com/ClickHouse/ClickHouse/pull/16722) ([Anton Popov](https://github.com/CurtizJ)).
* `optimize_read_in_order/optimize_aggregation_in_order`에서 max\_threads > 0이고 ORDER BY에 표현식이 있을 때 발생하던 비일관적인 동작 문제를 수정했습니다. [#16637](https://github.com/ClickHouse/ClickHouse/pull/16637) ([Azat Khuzhin](https://github.com/azat)).
* `ARRAY JOIN`이 포함된 쿼리에서 쿼리 최적화로 인해 잘못된 결과가 반환되던 문제가 수정되었습니다. [#17887](https://github.com/ClickHouse/ClickHouse/pull/17887) ([sundyli](https://github.com/sundy-li)).
* 예외가 발생하면 쿼리가 더 빨리 종료됩니다. 예외 발생 시 원격 레플리카에서의 실행을 취소합니다. [#15578](https://github.com/ClickHouse/ClickHouse/pull/15578) ([Azat Khuzhin](https://github.com/azat)).

<div id="clickhouse-release-v20866-lts-2020-11-13">
  ### ClickHouse 릴리스 v20.8.6.6-lts, 2020-11-13
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리 프로파일러가 켜져 있고, 일부 함수의 비동기 언와인드 테이블이 (추정상) 손상된 glibc 버전을 사용하는 OS에 ClickHouse가 설치된 경우 드물게 아무 메시지 없이 비정상 종료되던 문제를 수정했습니다. 이로써 [#15301](https://github.com/ClickHouse/ClickHouse/issues/15301)이 수정됩니다. 이로써 [#13098](https://github.com/ClickHouse/ClickHouse/issues/13098)도 수정됩니다. [#16846](https://github.com/ClickHouse/ClickHouse/pull/16846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 입력으로 받은 AVRO를 파싱할 때 타입에서 LowCardinality가 제거됩니다. [#16188](https://github.com/ClickHouse/ClickHouse/issues/16188)을 수정합니다. [#16521](https://github.com/ClickHouse/ClickHouse/pull/16521) ([Mike](https://github.com/myrrc)).
* GTID 집합을 올바르게 축소하도록 하여, MySQL Master -> MySQL Slave -> ClickHouse MaterializeMySQL Engine을 사용하고 MySQL Slave에서 `slave_parallel_worker`가 활성화된 경우 메타데이터가 빠르게 증가하던 문제를 수정했습니다. 이로써 [#15951](https://github.com/ClickHouse/ClickHouse/issues/15951)이 수정됩니다. [#16504](https://github.com/ClickHouse/ClickHouse/pull/16504) ([TCeason](https://github.com/TCeason)).
* 분산의 DROP TABLE을 수정했습니다 (INSERT와 경합 발생). [#16409](https://github.com/ClickHouse/ClickHouse/pull/16409) ([Azat Khuzhin](https://github.com/azat)).
* 복제 큐에서 매우 큰 항목을 처리하는 문제를 수정했습니다. 매우 큰 항목은 테이블 구조가 극도로 큰 경우(1 MB에 근접) ALTER 쿼리에서 나타날 수 있습니다. 이로써 [#16307](https://github.com/ClickHouse/ClickHouse/issues/16307)이 수정됩니다. [#16332](https://github.com/ClickHouse/ClickHouse/pull/16332) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 필터링에 사용할 Set이 생성되지 않아 반환 데이터의 일부가 누락될 수 있었던 비일관적인 동작을 수정했습니다. [#16308](https://github.com/ClickHouse/ClickHouse/pull/16308) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* MySQL 데이터베이스 관련 버그를 수정했습니다. 데이터베이스 엔진으로 사용되는 MySQL server가 다운되면, 일부 쿼리가 비활성화된 server에서 테이블을 가져오려고 시도하면서 Exception을 발생시키는 문제가 있었는데, 이는 불필요한 동작입니다. 예를 들어 `SELECT ... FROM system.parts` 쿼리는 MergeTree 테이블에 대해서만 동작해야 하며 MySQL 데이터베이스는 전혀 건드리지 않아야 합니다. [#16032](https://github.com/ClickHouse/ClickHouse/pull/16032) ([Kruglov Pavel](https://github.com/Avogar)).

<div id="clickhouse-release-v208545-lts-2020-10-29">
  ### ClickHouse 릴리스 v20.8.5.45-lts, 2020-10-29
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 함수 `dictGet`에서 예외가 발생할 경우 이중 해제가 발생하던 문제를 수정했습니다. 이 문제는 딕셔너리를 오류가 있는 상태로 로드한 경우 발생할 수 있었습니다. [#16429](https://github.com/ClickHouse/ClickHouse/pull/16429) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 합계/롤업/cube 수정자 및 GROUP BY 키에 대한 min/max 함수와 관련된 GROUP BY 문제를 수정했습니다. [#16393](https://github.com/ClickHouse/ClickHouse/issues/16393)를 수정했습니다. [#16397](https://github.com/ClickHouse/ClickHouse/pull/16397) ([Anton Popov](https://github.com/CurtizJ)).
* prefer\_localhost\_replica=0 및 internal\_replication 사용 시 비동기 분산 INSERT 문제를 수정했습니다. [#16358](https://github.com/ClickHouse/ClickHouse/pull/16358) ([Azat Khuzhin](https://github.com/azat)).
* `GROUP BY`에서 문자열 키를 사용할 때 `TwoLevelStringHashTable` 구현 오류로 인해 발생할 수 있는 메모리 누수를 해결했습니다. [#16264](https://github.com/ClickHouse/ClickHouse/pull/16264) ([Amos Bird](https://github.com/amosbird)).
* 제한과 무관하게 메모리가 한도를 초과해 할당될 수 있던 문제를 수정했습니다. 이로써 [#14560](https://github.com/ClickHouse/ClickHouse/issues/14560)이 해결되었습니다. [#16206](https://github.com/ClickHouse/ClickHouse/pull/16206) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `ReplicatedVersionedCollapsingMergeTree`에서 `ALTER MODIFY ... ORDER BY` 쿼리가 멈추는 문제를 수정했습니다. 이로써 [#15980](https://github.com/ClickHouse/ClickHouse/issues/15980) 문제가 해결됩니다. [#16011](https://github.com/ClickHouse/ClickHouse/pull/16011) ([alesapin](https://github.com/alesapin)).
* collate name 및 charset name 파서를 수정하고 string type에서 `length = 0`을 지원합니다. [#16008](https://github.com/ClickHouse/ClickHouse/pull/16008) ([Winter Zhang](https://github.com/zhang2014)).
* 복합 키를 사용하는 딕셔너리에서 direct layout을 사용할 수 있도록 지원했습니다. [#16007](https://github.com/ClickHouse/ClickHouse/pull/16007) ([Anton Popov](https://github.com/CurtizJ)).
* 일정 기간 비활성 상태가 지속된 뒤 복제 오류가 발생할 때 레플리카가 5\~10분간 멈추는 현상을 방지했습니다. [#15987](https://github.com/ClickHouse/ClickHouse/pull/15987) ([filimonov](https://github.com/filimonov)).
* MaterializedView에 삽입하거나 MaterializedView에서 조회하는 중 대상 테이블을 동시에 삭제할 때 드물게 발생하던 segfault를 수정했습니다(Atomic 데이터베이스 엔진용). [#15984](https://github.com/ClickHouse/ClickHouse/pull/15984) ([tavplubix](https://github.com/tavplubix)).
* 설정 프로필 파싱의 모호성을 수정했습니다. 이제 `CREATE USER ... SETTINGS profile readonly`는 readonly 제약이 있는 `profile` 설정이 아니라, `readonly`라는 이름의 프로필을 사용하는 것으로 간주됩니다. 이 수정으로 [#15628](https://github.com/ClickHouse/ClickHouse/issues/15628) 문제가 해결됩니다. [#15982](https://github.com/ClickHouse/ClickHouse/pull/15982) ([Vitaly Baranov](https://github.com/vitlibar)).
* 데이터베이스 생성 실패 시 발생하던 크래시를 수정했습니다. [#15954](https://github.com/ClickHouse/ClickHouse/pull/15954) ([Winter Zhang](https://github.com/zhang2014)).
* 테이블 이름이 동시에 변경되는 경우 `DROP TABLE IF EXISTS`가 `Table ... does not exist` 오류로 실패하던 문제를 수정했습니다(Atomic 데이터베이스 엔진). 여러 테이블이 관련된 일부 DDL 쿼리(`DROP DATABASE`, `RENAME TABLE` 등)를 동시에 실행할 때 드물게 발생하던 데드락을 수정했습니다. `DROP/DETACH TABLE`을 동시에 실행할 때 `DROP/DETACH DATABASE`가 `Table ... does not exist` 오류로 실패하던 문제를 수정했습니다. [#15934](https://github.com/ClickHouse/ClickHouse/pull/15934) ([tavplubix](https://github.com/tavplubix)).
* `WHERE`, `PREWHERE`, `GLOBAL IN`이 포함된 쿼리를 `Distributed` 테이블에서 실행할 때 결과가 잘못 비어 있던 문제를 수정했습니다. [#15792](https://github.com/ClickHouse/ClickHouse/issues/15792)를 수정합니다. [#15933](https://github.com/ClickHouse/ClickHouse/pull/15933) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* RBAC에서 발생할 수 있는 교착 상태를 수정했습니다. [#15875](https://github.com/ClickHouse/ClickHouse/pull/15875) ([Vitaly Baranov](https://github.com/vitlibar)).
* `ALTER MODIFY COLUMN` 쿼리 이후에 실행된 `SELECT ... ORDER BY DESC` 쿼리에서 발생하던 `Block structure mismatch` 예외를 수정했습니다. [#15800](https://github.com/ClickHouse/ClickHouse/issues/15800)을 해결합니다. [#15852](https://github.com/ClickHouse/ClickHouse/pull/15852) ([alesapin](https://github.com/alesapin)).
* 가상 컬럼만 선택하는 일부 쿼리 처리 문제를 수정했습니다. 이전에는 `Not found column _nothing in block` 예외가 발생할 수 있었습니다. [#12298](https://github.com/ClickHouse/ClickHouse/issues/12298)을 수정했습니다. [#15756](https://github.com/ClickHouse/ClickHouse/pull/15756) ([Anton Popov](https://github.com/CurtizJ)).
* `MV`용 쿼리에 `ARRAY JOIN`이 포함된 경우 `MATERIALIZED VIEW`에 삽입할 때 발생할 수 있는 `Cannot find column` 오류를 수정했습니다. [#15717](https://github.com/ClickHouse/ClickHouse/pull/15717) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `max_replicated_logs_to_keep` 설정의 기본값이 지나치게 낮아 레플리카가 너무 자주 손실될 수 있던 문제를 수정했습니다. 손실된 레플리카 복구 과정에서는 복제 대상으로 가장 최신 상태의 레플리카를 선택하도록 개선했습니다. 또한 손실된 레플리카에서 오래된 파트를 제거하지 않고 대신 detach하도록 했습니다. [#15701](https://github.com/ClickHouse/ClickHouse/pull/15701) ([tavplubix](https://github.com/tavplubix)).
* `Buffer` 테이블에서 읽는 동안 발생하던 오류 `Cannot add simple transform to empty Pipe`를 수정했습니다. 이 문제는 `Buffer` 테이블의 구조가 대상 테이블의 구조와 다를 때, 대상 테이블이 쿼리에 대해 빈 결과를 반환하면 발생할 수 있었습니다. [#15529](https://github.com/ClickHouse/ClickHouse/issues/15529)을 해결했습니다. [#15662](https://github.com/ClickHouse/ClickHouse/pull/15662) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* S3 테이블 함수의 글롭 패턴 관련 버그를 수정했습니다. URL의 Region이 S3 클라이언트 구성에 적용되지 않던 문제를 해결했습니다. [#15646](https://github.com/ClickHouse/ClickHouse/pull/15646) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 읽기 전용 테이블을 분리할 때 `ReadonlyReplica` 메트릭을 감소하도록 했습니다. 이로써 [#15598](https://github.com/ClickHouse/ClickHouse/issues/15598) 문제가 수정되었습니다. [#15592](https://github.com/ClickHouse/ClickHouse/pull/15592) ([sundyli](https://github.com/sundy-li)).
* 단일 매개변수가 ReplicatedMergeTree에 전달되면 이를 무시하지 않고 오류를 발생시킵니다. [#15516](https://github.com/ClickHouse/ClickHouse/pull/15516) ([nvartolomei](https://github.com/nvartolomei)).

<div id="improvement-6">
  #### 개선
</div>

* 이제 클러스터 구성의 `<internal_replication>` 설정과 무관하게 `ALTER ... ON CLUSTER` 쿼리를 실행할 수 있습니다. [#16075](https://github.com/ClickHouse/ClickHouse/pull/16075) ([alesapin](https://github.com/alesapin)).
* 테이블 생성 시 `ReplicatedMergeTree` 인수의 `{database}`, `{table}`, `{uuid}` 매크로가 확장됩니다. [#16159](https://github.com/ClickHouse/ClickHouse/pull/16159) ([tavplubix](https://github.com/tavplubix)).

<div id="clickhouse-release-v208411-lts-2020-10-09">
  ### ClickHouse 릴리스 v20.8.4.11-lts, 2020-10-09
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리 계획의 `ReadFromStorage` 단계에서 리소스의 해제 순서를 수정했습니다. 드문 경우 충돌이 발생할 수 있었습니다. [#15610](https://github.com/ClickHouse/ClickHouse/issues/15610)과 관련이 있을 수 있습니다. [#15645](https://github.com/ClickHouse/ClickHouse/pull/15645) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `VALUES`, `LIMIT` 또는 `IN` 연산자의 우변에서 `JSON*` 함수 결과를 사용할 때 발생하던 `Element ... is not a constant expression` 오류를 수정했습니다. [#15589](https://github.com/ClickHouse/ClickHouse/pull/15589) ([tavplubix](https://github.com/tavplubix)).
* 오류 메시지 `Could not calculate available disk space (statvfs), errno: 4, strerror: Interrupted system call`가 발생할 가능성을 방지했습니다. 이 수정으로 [#15541](https://github.com/ClickHouse/ClickHouse/issues/15541)이 해결되었습니다. [#15557](https://github.com/ClickHouse/ClickHouse/pull/15557) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* AggregatingInOrderTransform/optimize\_aggregation\_in\_order의 메모리 사용량을 대폭 줄였습니다. [#15543](https://github.com/ClickHouse/ClickHouse/pull/15543) ([Azat Khuzhin](https://github.com/azat)).
* mutation이 `MOVE` 또는 `REPLACE PARTITION` 이후, 또는 드문 경우 `DETACH`나 `DROP PARTITION` 이후 존재하지 않는 일부 part를 기다리며 멈춘 상태가 될 수 있었습니다. 수정되었습니다. [#15537](https://github.com/ClickHouse/ClickHouse/pull/15537) ([tavplubix](https://github.com/tavplubix)).
* 동일한 패턴의 `LIKE`가 실행되면 `ILIKE` 연산자가 더 이상 대소문자를 구분하지 않지 않게 되는 버그를 수정했습니다. [#15536](https://github.com/ClickHouse/ClickHouse/pull/15536) ([alesapin](https://github.com/alesapin)).
* 데이터에 없는 컬럼을 선택할 때, 해당 컬럼이 역시 데이터에 없는 다른 컬럼에 의존하는 경우 발생하던 `Missing columns` 오류를 수정했습니다. [#15530](https://github.com/ClickHouse/ClickHouse/issues/15530)을 수정했습니다. [#15532](https://github.com/ClickHouse/ClickHouse/pull/15532) ([alesapin](https://github.com/alesapin)).
* DDLWorker의 이벤트 subscription 관련 버그를 수정했습니다. 이 버그는 드물게 `ON CLUSTER`에서 쿼리가 멈추는 원인이 될 수 있습니다. [#13450](https://github.com/ClickHouse/ClickHouse/issues/13450)에서 도입되었습니다. [#15477](https://github.com/ClickHouse/ClickHouse/pull/15477) ([alesapin](https://github.com/alesapin)).
* `boundingRatio` 집계 함수의 두 번째 인수 유형이 잘못되었을 때 적절한 오류가 보고되도록 수정했습니다. [#15407](https://github.com/ClickHouse/ClickHouse/pull/15407) ([detailyang](https://github.com/detailyang)).
* MergeTree 테이블 이름 변경 및 백그라운드 정리 중 발생하는 경쟁 조건을 수정했습니다. [#15304](https://github.com/ClickHouse/ClickHouse/pull/15304) ([alesapin](https://github.com/alesapin)).
* system.logs가 활성화된 상태에서 서버 시작 시 드물게 발생하는 경합 상태(race condition)를 수정했습니다. [#15300](https://github.com/ClickHouse/ClickHouse/pull/15300) ([alesapin](https://github.com/alesapin)).
* QueryLog의 MSan 보고 문제를 수정했습니다. 초기화되지 않은 메모리가 `memory_usage` 필드에 사용될 수 있습니다. [#15258](https://github.com/ClickHouse/ClickHouse/pull/15258) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* joinGet을 LowCardinality 타입과 함께 사용할 때 인스턴스가 비정상 종료되는 문제를 수정했습니다. 이 수정으로 [#15214](https://github.com/ClickHouse/ClickHouse/issues/15214)가 해결됩니다. [#15220](https://github.com/ClickHouse/ClickHouse/pull/15220) ([Amos Bird](https://github.com/amosbird)).
* `ALTER` 쿼리 후 새로운 구조의 데이터를 `Buffer`에 삽입할 수 없던 테이블 엔진 `Buffer`의 버그를 수정했습니다. [#15117](https://github.com/ClickHouse/ClickHouse/issues/15117)을 해결합니다. [#15192](https://github.com/ClickHouse/ClickHouse/pull/15192) ([alesapin](https://github.com/alesapin)).
* MySQL 컬럼 정의 패킷의 decimals 필드 크기를 조정했습니다. [#15152](https://github.com/ClickHouse/ClickHouse/pull/15152) ([maqroll](https://github.com/maqroll)).
* 이미 String과 FixedString 간 비교에는 패딩 비교를 사용하고 있습니다([https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/FunctionsComparison.h#L333](https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/FunctionsComparison.h#L333)). 이 PR은 동일한 로직을 필드 비교에도 적용하여 FixedString을 기본 키(primary key)로 사용할 때의 동작을 바로잡습니다. 이로써 [#14908](https://github.com/ClickHouse/ClickHouse/issues/14908)이 수정됩니다. [#15033](https://github.com/ClickHouse/ClickHouse/pull/15033) ([Amos Bird](https://github.com/amosbird)).
* 함수 `bar`가 특수하게 조작된 인수와 함께 호출될 경우 버퍼 오버플로우가 발생할 수 있었습니다. 이로써 [#13926](https://github.com/ClickHouse/ClickHouse/issues/13926)가 해결되었습니다. [#15028](https://github.com/ClickHouse/ClickHouse/pull/15028) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Mac OS의 Docker 환경에서 `clickhouse-server`를 실행할 때 Atomic 데이터베이스에서 DDL 쿼리를 실행하면 발생하던 `Cannot rename ... errno: 22, strerror: Invalid argument` 오류를 수정했습니다. [#15024](https://github.com/ClickHouse/ClickHouse/pull/15024) ([tavplubix](https://github.com/tavplubix)).
* 이제 설정 `number_of_free_entries_in_pool_to_execute_mutation` 및 `number_of_free_entries_in_pool_to_lower_max_size_of_merge`의 값은 `background_pool_size`와 같을 수 있습니다. [#14975](https://github.com/ClickHouse/ClickHouse/pull/14975) ([alesapin](https://github.com/alesapin)).
* 서브쿼리에 finalizeAggregation 함수가 포함된 경우 프레디케이트 푸시다운이 작동하도록 수정했습니다. [#14847](https://github.com/ClickHouse/ClickHouse/issues/14847)을 해결합니다. [#14937](https://github.com/ClickHouse/ClickHouse/pull/14937) ([filimonov](https://github.com/filimonov)).
* `system.asynchronous_metrics`에 논리 코어별 CPU 주파수를 추가했습니다. 이로써 [#14923](https://github.com/ClickHouse/ClickHouse/issues/14923) 문제가 수정되었습니다. [#14924](https://github.com/ClickHouse/ClickHouse/pull/14924) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `MaterializeMySQL` 데이터베이스 엔진 사용 시 발생하던 `.metadata.tmp File exists` 오류를 수정했습니다. [#14898](https://github.com/ClickHouse/ClickHouse/pull/14898) ([Winter Zhang](https://github.com/zhang2014)).
* 설정 파일을 ZK에서 가져와야 하는 경우(`from_zk` include 옵션 사용), ZooKeeper와 통신하는 과정에서 서버가 시작 중 멈출 수 있는 문제를 수정했습니다. 이로써 [#14814](https://github.com/ClickHouse/ClickHouse/issues/14814)가 해결됩니다. [#14843](https://github.com/ClickHouse/ClickHouse/pull/14843) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 부호 있는 타입의 축소 `Int -> Int` 캐스트에서 단조성을 잘못 감지하던 문제를 수정했습니다. 이로 인해 쿼리 결과가 잘못될 수 있었습니다. 이 버그는 [#14513](https://github.com/ClickHouse/ClickHouse/issues/14513)에서 드러났습니다. [#14783](https://github.com/ClickHouse/ClickHouse/pull/14783) ([Amos Bird](https://github.com/amosbird)).
* `Nullable` 컬럼의 잘못된 정렬 순서를 수정했습니다. 이 수정으로 [#14344](https://github.com/ClickHouse/ClickHouse/issues/14344)가 해결됩니다. [#14495](https://github.com/ClickHouse/ClickHouse/pull/14495) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).

<div id="improvement">
  #### 개선 사항
</div>

* 이제 `ALTER` 쿼리를 사용해 `VersionedCollapsingMergeTree`의 버전 컬럼 타입을 변경할 수 있습니다. [#15442](https://github.com/ClickHouse/ClickHouse/pull/15442) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v208318-stable-2020-09-18">
  ### ClickHouse 릴리스 v20.8.3.18-stable, 2020-09-18
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `extractAllGroups` 함수의 일부 호출에서 "Memory limit exceeded" 오류가 발생할 수 있던 문제를 수정했습니다. 이 수정으로 [#13383](https://github.com/ClickHouse/ClickHouse/issues/13383)가 해결됩니다. [#14889](https://github.com/ClickHouse/ClickHouse/pull/14889) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* StorageFile(fd)에 `INSERT`를 시도할 때 발생하던 SIGSEGV를 수정했습니다. [#14887](https://github.com/ClickHouse/ClickHouse/pull/14887) ([Azat Khuzhin](https://github.com/azat)).
* 조회 대상 컬럼에 다른 컬럼에 의존하는 `DEFAULT` 표현식이 있고, 그 다른 컬럼에도 `DEFAULT`가 설정되어 있으며 `SELECT` 쿼리에 포함되지 않고 디스크에도 존재하지 않는 경우 드물게 발생하던 오류를 수정했습니다. 이 수정은 [#14531](https://github.com/ClickHouse/ClickHouse/issues/14531)을 부분적으로 해결합니다. [#14845](https://github.com/ClickHouse/ClickHouse/pull/14845) ([alesapin](https://github.com/alesapin)).
* `ALTER ... MODIFY QUERY` 실행 시 materialized view 메타데이터에 기본 데이터베이스 이름이 누락되던 문제를 수정했습니다. [#14664](https://github.com/ClickHouse/ClickHouse/pull/14664) ([tavplubix](https://github.com/tavplubix)).
* 할당 표현식에 널 허용 컬럼과 상수 값(예: `UPDATE x = 42`)이 포함된 `ALTER UPDATE` mutation으로 인해 컬럼에 잘못된 값이 기록되거나 segfault가 발생하던 버그를 수정했습니다. [#13634](https://github.com/ClickHouse/ClickHouse/issues/13634), [#14045](https://github.com/ClickHouse/ClickHouse/issues/14045)를 해결합니다. [#14646](https://github.com/ClickHouse/ClickHouse/pull/14646) ([alesapin](https://github.com/alesapin)).
* 결과 컬럼의 decimal scale이 잘못 계산되어 Decimal 곱셈 결과가 잘못되던 문제를 수정했습니다. [#14603](https://github.com/ClickHouse/ClickHouse/pull/14603) ([Artem Zuikov](https://github.com/4ertus2)).
* `lc->isNullable()` 또는 `ls->getDictionaryPtr()->isNullable()` 호출만으로는 올바른 결과를 반환하지 않던 문제를 해결하기 위해 checker를 추가했습니다. [#14591](https://github.com/ClickHouse/ClickHouse/pull/14591) ([myrrc](https://github.com/myrrc)).
* StorageReplicatedMergeTree Engine의 CreateQuery 도중 Zookeeper 예외가 발생했을 때 데이터 디렉터리를 정리하도록 수정했습니다. [#14563](https://github.com/ClickHouse/ClickHouse/pull/14563) ([Bharat Nallan](https://github.com/bharatnc)).
* 매우 큰 매개변수로 인한 오버플로우 결과로 발생할 수 있던 combinator -Resample 함수의 드문 segfault를 수정했습니다. [#14562](https://github.com/ClickHouse/ClickHouse/pull/14562) ([Anton Popov](https://github.com/CurtizJ)).

<div id="improvement-6">
  #### 개선
</div>

* 진행 중인 S3 요청이 있을 때 서버 종료를 더 빠르게 수행합니다. [#14858](https://github.com/ClickHouse/ClickHouse/pull/14858) ([Pavel Kovalenko](https://github.com/Jokser)).
* 분산 스토리지에서 다중 볼륨 스토리지 구성을 사용할 수 있도록 했습니다. [#14839](https://github.com/ClickHouse/ClickHouse/pull/14839) ([Pavel Kovalenko](https://github.com/Jokser)).
* 진행 중인 S3 요청이 있을 때 서버 종료를 더 빠르게 수행합니다. [#14496](https://github.com/ClickHouse/ClickHouse/pull/14496) ([Pavel Kovalenko](https://github.com/Jokser)).
* compact 파트에서 사용자 지정 코덱을 지원합니다. [#12183](https://github.com/ClickHouse/ClickHouse/pull/12183) ([Anton Popov](https://github.com/CurtizJ)).

<div id="clickhouse-release-v20823-stable-2020-09-08">
  ### ClickHouse 릴리스 v20.8.2.3-stable, 2020-09-08
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 이제 `OPTIMIZE FINAL` 쿼리는 TTL이 생성되기 전에 추가된 파트의 TTL을 다시 계산하지 않습니다. 이를 계산하려면 한 번 `ALTER TABLE ... MATERIALIZE TTL`을 사용하십시오. 그 이후에는 `OPTIMIZE FINAL`이 TTL을 올바르게 평가합니다. 이 동작은 복제된 테이블(Replicated Table)에서는 원래 동작하지 않았습니다. [#14220](https://github.com/ClickHouse/ClickHouse/pull/14220) ([alesapin](https://github.com/alesapin)).
* `parallel_distributed_insert_select` 설정이 확장되어 로컬 테이블에 `INSERT`를 실행하는 옵션이 추가되었습니다. 이 설정의 유형이 `Bool`에서 `UInt64`로 변경되므로 `false`와 `true` 값은 더 이상 지원되지 않습니다. 서버 구성에 이러한 값이 있으면 서버가 시작되지 않습니다. 각각 `0`과 `1`로 바꾸십시오. [#14060](https://github.com/ClickHouse/ClickHouse/pull/14060) ([Azat Khuzhin](https://github.com/azat)).
* `ODBCDriver` 입력/출력 포맷 지원이 제거되었습니다. 이 포맷은 한때 ClickHouse ODBC 드라이버와 통신하는 데 사용되었지만, 이후 더 이상 권장되지 않게 되었고 현재는 오래전에 `ODBCDriver2` 포맷으로 대체되었습니다. [#13629](https://github.com/ClickHouse/ClickHouse/issues/13629)을 해결합니다. [#13847](https://github.com/ClickHouse/ClickHouse/pull/13847) ([hexiaoting](https://github.com/hexiaoting)).
* 20.5보다 이전 버전에서 업그레이드할 때 롤링 업데이트를 수행하고, cluster에 20.5 이상 버전과 20.5 미만 버전이 함께 포함된 상태에서 이전 버전의 ClickHouse 노드를 재시작하면, 새 버전 노드가 있는 환경에서 이전 버전이 시작되면서 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 cluster 노드에 새 `clickhouse-server` 패키지를 설치한 다음 재시작하십시오(즉, `clickhouse-server`를 재시작할 때 새 버전으로 시작되도록 해야 합니다).

<div id="new-feature">
  #### 새로운 기능
</div>

* `config.xml`에 지정된 설정에 해당하는 컬럼에 `Default` 압축 코덱을 지정할 수 있는 기능을 추가했습니다. 구현: [#9074](https://github.com/ClickHouse/ClickHouse/issues/9074). [#14049](https://github.com/ClickHouse/ClickHouse/pull/14049) ([alesapin](https://github.com/alesapin)).
* `krb5` 및 `cyrus-sasl` 라이브러리를 사용해 Kafka에서 Kerberos 인증을 지원합니다. [#12771](https://github.com/ClickHouse/ClickHouse/pull/12771) ([Ilya Golshtein](https://github.com/ilejn)).
* 리터럴, 리터럴 시퀀스, 복잡한 alias를 placeholder로 대체하는 `normalizeQuery` 함수를 추가했습니다. 유사한 쿼리에 대해 동일한 64비트 hash 값을 반환하는 `normalizedQueryHash` 함수도 추가했습니다. 이를 통해 쿼리 Log를 분석하는 데 도움이 됩니다. 이 변경으로 [#11271](https://github.com/ClickHouse/ClickHouse/issues/11271)이 해결되었습니다. [#13816](https://github.com/ClickHouse/ClickHouse/pull/13816) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `time_zones` 테이블(table)을 추가했습니다. [#13880](https://github.com/ClickHouse/ClickHouse/pull/13880) ([Bharat Nallan](https://github.com/bharatnc)).
* 지정된 유형의 기본값을 반환하는 `defaultValueOfTypeName` 함수를 추가했습니다. [#13877](https://github.com/ClickHouse/ClickHouse/pull/13877) ([hcz](https://github.com/hczhcz)).
* 정수 또는 Decimal 컬럼의 10진 자릿수를 계산하는 `countDigits(x)` 함수를 추가했습니다. Decimal 컬럼의 값이 해당 precision 또는 지정한 precision 범위를 벗어났는지 확인하는 `isDecimalOverflow(d, [p])` 함수도 추가했습니다. [#14151](https://github.com/ClickHouse/ClickHouse/pull/14151) ([Artem Zuikov](https://github.com/4ertus2)).
* `medianExactLow` 및 `medianExactHigh`에 대한 해당 alias와 함께 `quantileExactLow` 및 `quantileExactHigh` 구현을 추가했습니다. [#13818](https://github.com/ClickHouse/ClickHouse/pull/13818) ([Bharat Nallan](https://github.com/bharatnc)).
* 날짜/시간 값을 지정된 날짜/시간 단위로 잘라내는 `date_trunc` 함수를 추가했습니다. [#13888](https://github.com/ClickHouse/ClickHouse/pull/13888) ([Vladimir Golovchenko](https://github.com/vladimir-golovchenko)).
* 기본 config에 새로운 선택적 섹션 `<user_directories>`를 추가했습니다. [#13425](https://github.com/ClickHouse/ClickHouse/pull/13425) ([Vitaly Baranov](https://github.com/vitlibar)).
* 테이블의 SAMPLE 절을 변경할 수 있는 `ALTER SAMPLE BY` statement를 추가했습니다. [#13280](https://github.com/ClickHouse/ClickHouse/pull/13280) ([Amos Bird](https://github.com/amosbird)).
* 이제 `position` 함수는 선택적 `start_pos` 인수를 지원합니다. [#13237](https://github.com/ClickHouse/ClickHouse/pull/13237) ([vdimir](https://github.com/vdimir)).

<div id="bug-fix">
  #### 버그 수정
</div>

* interactive mode의 클라이언트에서 진행률 표시줄로 인해 화면에 표시된 데이터가 덮어써지는 문제를 수정했습니다. 이 수정으로 [#12562](https://github.com/ClickHouse/ClickHouse/issues/12562), [#13369](https://github.com/ClickHouse/ClickHouse/issues/13369), [#13584](https://github.com/ClickHouse/ClickHouse/issues/13584), [#12964](https://github.com/ClickHouse/ClickHouse/issues/12964)가 해결됩니다. [#13691](https://github.com/ClickHouse/ClickHouse/pull/13691) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 여러 컬럼으로 정렬할 때 `LowCardinality` 컬럼의 정렬 순서가 잘못되던 문제를 수정했습니다. 이로써 [#13958](https://github.com/ClickHouse/ClickHouse/issues/13958)가 해결되었습니다. [#14223](https://github.com/ClickHouse/ClickHouse/pull/14223) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* `topK` 집계 함수에서 배열 크기 오버플로우를 검사하도록 했습니다. 이 검사가 없으면 사용자가 정교하게 조작한 매개변수로 쿼리를 보내 서버 충돌을 유발할 수 있습니다. 이로써 [#14452](https://github.com/ClickHouse/ClickHouse/issues/14452)가 해결되었습니다. [#14467](https://github.com/ClickHouse/ClickHouse/pull/14467) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* part가 하나뿐인 파티션이 있는 테이블에서 잘못된 머지 할당이 발생할 수 있는 버그를 수정했습니다. [#14444](https://github.com/ClickHouse/ClickHouse/pull/14444) ([alesapin](https://github.com/alesapin)).
* `PipelineExecutor` 자체에서 예외가 발생하면 쿼리 실행을 중지합니다. 이렇게 하면 드물게 발생할 수 있는 쿼리 중단 문제를 방지할 수 있습니다. [#14334](https://github.com/ClickHouse/ClickHouse/issues/14334)의 후속 작업입니다. [#14402](https://github.com/ClickHouse/ClickHouse/pull/14402) [#14334](https://github.com/ClickHouse/ClickHouse/pull/14334) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `AS table_function`으로 생성된 테이블에서 `ALTER` 쿼리 실행 중 발생하던 비정상 종료를 수정했습니다. [#14212](https://github.com/ClickHouse/ClickHouse/issues/14212)을 해결합니다. [#14326](https://github.com/ClickHouse/ClickHouse/pull/14326) ([alesapin](https://github.com/alesapin)).
* REFRESH 명령이 포함된 ALTER LIVE VIEW 쿼리 수행 중 발생하는 예외를 수정했습니다. 라이브 view는 실험적 기능입니다. [#14320](https://github.com/ClickHouse/ClickHouse/pull/14320) ([Bharat Nallan](https://github.com/bharatnc)).
* 중첩된 인터프리터가 있는 쿼리에서 QueryPlan의 수명(EXPLAIN PIPELINE graph=1용)을 수정했습니다. [#14315](https://github.com/ClickHouse/ClickHouse/pull/14315) ([Azat Khuzhin](https://github.com/azat)).
* 일부 외부 소스에서 스키마를 가져오는 동안 `clickhouse-odbc-bridge`에서 발생하던 세그폴트를 수정했습니다. 이 PR은 [#13861](https://github.com/ClickHouse/ClickHouse/issues/13861)을 수정합니다. [#14267](https://github.com/ClickHouse/ClickHouse/pull/14267) ([Vitaly Baranov](https://github.com/vitlibar)).
* [#12277](https://github.com/ClickHouse/ClickHouse/pull/12277)로 도입된 mark 포함 검색 관련 충돌 문제를 수정했습니다. [#14225](https://github.com/ClickHouse/ClickHouse/pull/14225) ([Amos Bird](https://github.com/amosbird)).
* 이름이 지정된 Tuple이 포함된 테이블 생성 문제를 수정했습니다. 이 수정으로 [#13027](https://github.com/ClickHouse/ClickHouse/issues/13027)이 해결됩니다. [#14143](https://github.com/ClickHouse/ClickHouse/pull/14143) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 작은 음수 decimal 숫자의 포맷을 수정했습니다. 이로써 [#14111](https://github.com/ClickHouse/ClickHouse/issues/14111) 문제가 해결되었습니다. [#14119](https://github.com/ClickHouse/ClickHouse/pull/14119) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `DistributedFilesToInsert` 메트릭 수정(0이 아니어야 하는데 0으로 표시되던 문제). [#14095](https://github.com/ClickHouse/ClickHouse/pull/14095) ([Azat Khuzhin](https://github.com/azat)).
* `pointInPolygon`에서 다각형으로 상수 2차원 배열을 사용할 때의 문제를 수정했습니다. [#14079](https://github.com/ClickHouse/ClickHouse/pull/14079) ([Alexey Ilyukhov](https://github.com/livace)).
* `Poco::Exception: no space left on device`의 추가 정보에 있는 잘못된 마운트 지점을 수정했습니다. [#14050](https://github.com/ClickHouse/ClickHouse/pull/14050) ([tavplubix](https://github.com/tavplubix)).
* 전역이 아닌 수준에서 실행될 때 GRANT ALL 문을 수정했습니다. [#13987](https://github.com/ClickHouse/ClickHouse/pull/13987) ([Vitaly Baranov](https://github.com/vitlibar)).
* 엔진이 있는 테이블 함수를 사용한 CREATE TABLE을 거부하도록 파서를 수정했습니다. [#13940](https://github.com/ClickHouse/ClickHouse/pull/13940) ([hcz](https://github.com/hczhcz)).
* `optimize_duplicate_order_by_and_distinct` setting이 활성화된 경우, `DISTINCT` 키워드가 있는 SELECT 쿼리와 UNION ALL을 포함한 서브쿼리에서 잘못된 결과가 발생하던 문제를 수정했습니다. [#13925](https://github.com/ClickHouse/ClickHouse/pull/13925) ([Artem Zuikov](https://github.com/4ertus2)).
* `Distributed` 테이블 이름 변경 시 발생할 수 있는 교착 상태 문제를 수정했습니다. [#13922](https://github.com/ClickHouse/ClickHouse/pull/13922) ([tavplubix](https://github.com/tavplubix)).
* 여러 컬럼으로 정렬할 때 `FixedString` 컬럼에서 정렬이 잘못되던 문제를 수정했습니다. [#13182](https://github.com/ClickHouse/ClickHouse/issues/13182). [#13887](https://github.com/ClickHouse/ClickHouse/pull/13887) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `topK`/`topKWeighted` 머지 결과(기본값이 아닌 매개변수 사용 시)가 부정확해질 수 있는 문제를 수정했습니다. [#13817](https://github.com/ClickHouse/ClickHouse/pull/13817) ([Azat Khuzhin](https://github.com/azat)).
* NULL과 비교할 때 SET 유형의 INDEX가 있는 MergeTree 테이블에서 읽기에 실패하던 문제를 수정했습니다. 이 변경으로 [#13686](https://github.com/ClickHouse/ClickHouse/issues/13686)이 해결됩니다. [#13793](https://github.com/ClickHouse/ClickHouse/pull/13793) ([Amos Bird](https://github.com/amosbird)).
* 람다에서 `arrayJoin` 캡처 문제(`LOGICAL&#95;ERROR`)를 수정했습니다. [#13792](https://github.com/ClickHouse/ClickHouse/pull/13792) ([Azat Khuzhin](https://github.com/azat)).
* `range` 함수에 간격 오버플로우 검사를 추가했습니다. [#13790](https://github.com/ClickHouse/ClickHouse/pull/13790) ([Azat Khuzhin](https://github.com/azat)).
* `DROP DATABASE`와 `CREATE TABLE`을 동시에 실행할 때 발생하던 `Directory not empty` 오류를 해결했습니다. [#13756](https://github.com/ClickHouse/ClickHouse/pull/13756) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `h3KRing` 함수에 범위 검사를 추가했습니다. 이 변경으로 [#13633](https://github.com/ClickHouse/ClickHouse/issues/13633) 문제가 수정되었습니다. [#13752](https://github.com/ClickHouse/ClickHouse/pull/13752) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DETACH와 백그라운드 머지 사이의 경쟁 상태를 수정했습니다. DETACH 후 파트가 되살아날 수 있습니다. 이는 문제를 해결하지는 못했지만, 매우 드문 경우 실패하기 시작한 테스트를 추가해 해당 문제를 드러낸 [#8602](https://github.com/ClickHouse/ClickHouse/issues/8602)의 후속 작업입니다. [#13746](https://github.com/ClickHouse/ClickHouse/pull/13746) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* log\_queries\_min\_type > QUERY\_START인 경우 로깅 Settings.Names/Values를 수정했습니다. [#13737](https://github.com/ClickHouse/ClickHouse/pull/13737) ([Azat Khuzhin](https://github.com/azat)).
* verbose=1일 때 `/replicas_status` endpoint의 응답 상태 코드를 수정했습니다. [#13722](https://github.com/ClickHouse/ClickHouse/pull/13722) ([javi santana](https://github.com/javisantana)).
* 사용자 및 그룹 확인 시 `clickhouse-server.init`의 잘못된 메시지를 수정했습니다. [#13711](https://github.com/ClickHouse/ClickHouse/pull/13711) ([ylchou](https://github.com/ylchou)).
* `optimize_move_functions_out_of_any` 설정에서는 any(arrayJoin()) -> arrayJoin()를 최적화하지 않습니다. [#13681](https://github.com/ClickHouse/ClickHouse/pull/13681) ([Azat Khuzhin](https://github.com/azat)).
* StorageMerge를 사용한 JOIN에서 `set enable_optimize_predicate_expression=1` 설정 시 발생하던 충돌을 수정했습니다. [#13679](https://github.com/ClickHouse/ClickHouse/pull/13679) ([Artem Zuikov](https://github.com/4ertus2)).
* `The value of 'number_of_free_entries_in_pool_to_lower_max_size_of_merge' setting` 관련 오류 메시지의 오타를 수정했습니다. [#13678](https://github.com/ClickHouse/ClickHouse/pull/13678) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 동시에 실행되는 `ALTER ... REPLACE/MOVE PARTITION ...` 쿼리에서 교착 상태가 발생할 수 있었습니다. 이 문제가 수정되었습니다. [#13626](https://github.com/ClickHouse/ClickHouse/pull/13626) ([tavplubix](https://github.com/tavplubix)).
* 일부 경우 cache 딕셔너리가 source에 있는 값을 반환해야 하는데 기본값을 반환하던 동작을 수정했습니다. [#13624](https://github.com/ClickHouse/ClickHouse/pull/13624) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* compact 파트에서 발생하던 보조 인덱스 손상을 수정했습니다. compact 파트는 실험적 기능입니다. [#13538](https://github.com/ClickHouse/ClickHouse/pull/13538) ([Anton Popov](https://github.com/CurtizJ)).
* 단일 레플리카에서 실행해야 하는 쿼리에서 `ON CLUSTER` 타임아웃이 너무 일찍 발생하던 문제를 수정했습니다. [#6704](https://github.com/ClickHouse/ClickHouse/issues/6704), [#7228](https://github.com/ClickHouse/ClickHouse/issues/7228), [#13361](https://github.com/ClickHouse/ClickHouse/issues/13361), [#11884](https://github.com/ClickHouse/ClickHouse/issues/11884)를 수정합니다. [#13450](https://github.com/ClickHouse/ClickHouse/pull/13450) ([alesapin](https://github.com/alesapin)).
* 함수 `netloc`의 잘못된 코드를 수정했습니다. 이 수정으로 [#13335](https://github.com/ClickHouse/ClickHouse/issues/13335) 문제가 해결되었습니다. [#13446](https://github.com/ClickHouse/ClickHouse/pull/13446) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `StorageMemory`에서 발생할 수 있는 경쟁 상태를 수정했습니다. [#13416](https://github.com/ClickHouse/ClickHouse/pull/13416) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `TSV/CSVWithNames` 포맷의 HTTP 프로토콜에서 헤더가 누락되거나 과도하게 포함되는 문제를 수정했습니다. 이로써 [#12504](https://github.com/ClickHouse/ClickHouse/issues/12504)가 해결됩니다. [#13343](https://github.com/ClickHouse/ClickHouse/pull/13343) ([Azat Khuzhin](https://github.com/azat)).
* 데이터베이스 또는 테이블 이름에 점이 포함되어 있을 때 users.xml의 행 정책을 파싱하는 문제를 수정했습니다. 이 수정으로 [#5779](https://github.com/ClickHouse/ClickHouse/issues/5779), [#12527](https://github.com/ClickHouse/ClickHouse/issues/12527) 문제가 해결됩니다. [#13199](https://github.com/ClickHouse/ClickHouse/pull/13199) ([Vitaly Baranov](https://github.com/vitlibar)).
* 연결이 한 번 끊긴 후 `redis` 딕셔너리에 다시 접근할 수 없던 문제를 수정했습니다. 이 문제는 `cache` 및 `direct` 딕셔너리 레이아웃에서도 발생할 수 있습니다. [#13082](https://github.com/ClickHouse/ClickHouse/pull/13082) ([Anton Popov](https://github.com/CurtizJ)).
* ClickHouseDictionarySource를 사용해 원격 테이블에 쿼리할 때 적용되던 잘못된 인증 접근 검사를 제거했습니다. [#12756](https://github.com/ClickHouse/ClickHouse/pull/12756) ([sundyli](https://github.com/sundy-li)).
* 일부 경우 common subexpression elimination을 위해 서브쿼리를 올바르게 구분하지 못하던 문제를 수정했습니다. [#8333](https://github.com/ClickHouse/ClickHouse/issues/8333). [#8367](https://github.com/ClickHouse/ClickHouse/pull/8367) ([Amos Bird](https://github.com/amosbird)).

<div id="improvement-6">
  #### 개선
</div>

* `ALIAS` 컬럼 유형에서는 `CODEC`를 허용하지 않도록 했습니다. [#13911](https://github.com/ClickHouse/ClickHouse/issues/13911)을 수정했습니다. [#14263](https://github.com/ClickHouse/ClickHouse/pull/14263) ([Bharat Nallan](https://github.com/bharatnc)).
* 딕셔너리 업데이트가 완료될 때까지 기다릴 때는 하드코딩된 값 대신 `query_wait_timeout_milliseconds` 설정에 지정된 timeout 값을 사용합니다. [#14105](https://github.com/ClickHouse/ClickHouse/pull/14105) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 실수로 `index_granularity_bytes` 설정값이 너무 낮은 테이블을 생성하지 않도록 보호하는 `min_index_granularity_bytes` 설정을 추가했습니다. [#14139](https://github.com/ClickHouse/ClickHouse/pull/14139) ([Bharat Nallan](https://github.com/bharatnc)).
* 이제 서로 다른 ZooKeeper를 사용하는 클러스터에서 파티션을 가져올 수 있습니다: `ALTER TABLE table_name FETCH PARTITION partition_expr FROM 'zk-name:/path-in-zookeeper'`. 이는 새 클러스터로 데이터를 옮길 때 유용합니다. [#14155](https://github.com/ClickHouse/ClickHouse/pull/14155) ([Amos Bird](https://github.com/amosbird)).
* 매우 작은 블록이 매우 많이 있는 경우(그럴 가능성은 낮습니다) Memory 테이블의 성능이 약간 더 향상되었습니다. 이 아이디어의 제안자: [Mark Papadakis](https://github.com/markpapadakis). [#14043](https://github.com/ClickHouse/ClickHouse/issues/14043)를 해결합니다. [#14056](https://github.com/ClickHouse/ClickHouse/pull/14056) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 조건부 집계 함수(예: `avgIf`, `sumIf`, `maxIf`)는 행이 없고 널 허용 인수를 사용하는 경우 `NULL`을 반환해야 합니다. [#13964](https://github.com/ClickHouse/ClickHouse/pull/13964) ([Winter Zhang](https://github.com/zhang2014)).
* -Resample combinator의 제한값을 1M으로 늘렸습니다. [#13947](https://github.com/ClickHouse/ClickHouse/pull/13947) ([Mikhail f. Shiryaev](https://github.com/Felixoid)).
* 비정상적으로 작고 잘못된 메시지를 수신했을 때 Kafka 테이블 엔진의 메시지 처리가 중단되던 AvroConfluent 포맷 오류를 수정했습니다. [#13941](https://github.com/ClickHouse/ClickHouse/pull/13941) ([Gervasio Varela](https://github.com/gervarela)).
* 긴 쿼리에서 잘못된 오류가 표시되던 문제를 수정했습니다. 올바른 쿼리에도 `Max query size exceeded` 대신 구문 오류가 발생할 수 있었습니다. [#13928](https://github.com/ClickHouse/ClickHouse/pull/13928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `TabSeparated` 포맷에서 NULL 값에 대한 오류 메시지를 개선했습니다. [#13906](https://github.com/ClickHouse/ClickHouse/pull/13906) ([jiang tao](https://github.com/tomjiang1987)).
* `arrayCompact` 함수는 배열 요소의 유형이 Float32/Float64인 경우 NaN을 비트 단위로 비교합니다. 이전 버전에서는 배열 요소의 유형이 Float32/Float64이면 NaN이 항상 서로 같지 않은 것으로 처리되었고, Nullable(Float64)처럼 유형이 더 복잡한 경우에는 항상 같은 것으로 처리되었습니다. 이 변경으로 [#13857](https://github.com/ClickHouse/ClickHouse/issues/13857)가 해결되었습니다. [#13868](https://github.com/ClickHouse/ClickHouse/pull/13868) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `lgamma` 함수의 데이터 레이스 문제를 수정했습니다. 이 문제는 `tsan`에서만 발견되었고, 실제로는 부작용이 전혀 없었습니다. [#13842](https://github.com/ClickHouse/ClickHouse/pull/13842) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 배열을 필드로 처리할 때 쿼리가 지나치게 느려지는 것을 방지합니다. 대신 예외를 발생시킵니다. [#13753](https://github.com/ClickHouse/ClickHouse/pull/13753) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Redis 딕셔너리 소스용 requirepass 인증을 추가했습니다. [#13688](https://github.com/ClickHouse/ClickHouse/pull/13688) ([Ivan Torgashov](https://github.com/it1804)).
* MergeTree Write-Ahead-Log (WAL) 덤프 도구를 추가했습니다. WAL은 실험 기능입니다. [#13640](https://github.com/ClickHouse/ClickHouse/pull/13640) ([BohuTANG](https://github.com/BohuTANG)).
* 이전 버전에서는 `lcm` 함수가 특별히 조작된 인수로 호출될 경우 디버그 build에서 assertion violation이 발생할 수 있었습니다. 이 변경으로 [#13368](https://github.com/ClickHouse/ClickHouse/issues/13368) 문제가 수정되었습니다. [#13510](https://github.com/ClickHouse/ClickHouse/pull/13510) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 더 많은 경우에서 `toDate/toDateTime` 함수의 단조성을 보장합니다. 단조성 정보는 인덱스 분석에 사용되며(더 복잡한 쿼리도 인덱스를 사용할 수 있습니다). 이제 입력 인수가 더 자연스럽게 포화 처리되어 단조성이 개선되었습니다. [#13497](https://github.com/ClickHouse/ClickHouse/pull/13497) ([Amos Bird](https://github.com/amosbird)).
* 사용자 정의 설정에 복합 식별자를 지원합니다. 사용자 정의 설정은 ClickHouse 코드베이스를 다른 코드베이스와 통합하기 위한 접점이며(ClickHouse 자체에는 이점이 없음) [#13496](https://github.com/ClickHouse/ClickHouse/pull/13496) ([Vitaly Baranov](https://github.com/vitlibar)).
* 파트를 DiskLocal에서 DiskS3로 병렬 이동할 수 있습니다. `DiskS3`는 실험적 기능입니다. [#13459](https://github.com/ClickHouse/ClickHouse/pull/13459) ([Pavel Kovalenko](https://github.com/Jokser)).
* 혼합 세분화 수준 파트를 기본값으로 활성화했습니다. [#13449](https://github.com/ClickHouse/ClickHouse/pull/13449) ([alesapin](https://github.com/alesapin)).
* S3 리디렉션 시 원격 호스트를 올바르게 검사하도록 개선(보안 관련 사항). [#13404](https://github.com/ClickHouse/ClickHouse/pull/13404) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `QueryTimeMicroseconds`, `SelectQueryTimeMicroseconds`, `InsertQueryTimeMicroseconds`가 system.events에 추가되었습니다. [#13336](https://github.com/ClickHouse/ClickHouse/pull/13336) ([ianton-ru](https://github.com/ianton-ru)).
* Decimal의 음수 지수 절댓값이 너무 클 때 발생하는 디버그 assertion 문제를 수정했습니다. [#13188](https://github.com/ClickHouse/ClickHouse/issues/13188)을 해결했습니다. [#13228](https://github.com/ClickHouse/ClickHouse/pull/13228) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DiskS3용 캐시 계층이 추가되었습니다(로컬 디스크의 mark 및 인덱스 파일용 캐시). `DiskS3`는 실험적 기능입니다. [#13076](https://github.com/ClickHouse/ClickHouse/pull/13076) ([Pavel Kovalenko](https://github.com/Jokser)).
* 이제 readline이 이력을 파일에 저장하도록 수정했습니다. [#13600](https://github.com/ClickHouse/ClickHouse/pull/13600) ([Amos Bird](https://github.com/amosbird)).
* 기본적으로 `system` 데이터베이스를 `Atomic` 엔진으로 생성하도록 변경했습니다(어디서나 `Atomic` 데이터베이스 엔진을 기본값으로 활성화하기 위한 준비 작업입니다). [#13680](https://github.com/ClickHouse/ClickHouse/pull/13680) ([tavplubix](https://github.com/tavplubix)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* `LowCardinality`를 사용하는 매우 짧은 쿼리를 소폭 최적화했습니다. [#14129](https://github.com/ClickHouse/ClickHouse/pull/14129) ([Anton Popov](https://github.com/CurtizJ)).
* 설정 `max_insert_threads`가 지정되면 테이블 엔진 `Null`, `Memory`, `Distributed`, `Buffer`에 대해 병렬 INSERT를 활성화했습니다. [#14120](https://github.com/ClickHouse/ClickHouse/pull/14120) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 파트 스캔 중 `max_rows_to_read` 제한을 초과하면 즉시 실패하도록 했습니다. 이 변경의 목적은 `max_rows_to_read`를 이미 초과한 것이 분명한 경우, 선택된 모든 파트에 대한 범위 스캔을 건너뛰는 것입니다. 이 변경은 많은 수의 파트에 대한 쿼리에서 특히 두드러집니다. [#13677](https://github.com/ClickHouse/ClickHouse/pull/13677) ([Roman Khavronenko](https://github.com/hagen1778)).
* UInt8/UInt16 키에 대한 집계 성능을 소폭 개선했습니다. [#13099](https://github.com/ClickHouse/ClickHouse/pull/13099) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Array(LowCardinality(T))`와 상수 우변 인수에 대해 `has()`, `indexOf()`, `countEqual()` 함수를 최적화했습니다. [#12550](https://github.com/ClickHouse/ClickHouse/pull/12550) ([myrrc](https://github.com/myrrc)).
* 단순한 `INSERT SELECT` 쿼리를 수행할 때 `max_threads`를 1 또는 `max_insert_threads`로 자동 설정하고, `max_block_size`를 `min_insert_block_size_rows`로 설정합니다. [#5907](https://github.com/ClickHouse/ClickHouse/issues/5907)와 관련됩니다. [#12195](https://github.com/ClickHouse/ClickHouse/pull/12195) ([flynn](https://github.com/ucasFL)).

<div id="experimental-feature">
  #### 실험적 기능
</div>

* ClickHouse는 MySQL 레플리카로 동작할 수 있습니다. 이는 `MaterializeMySQL` 데이터베이스 엔진으로 구현되었습니다. [#4006](https://github.com/ClickHouse/ClickHouse/issues/4006). [#10851](https://github.com/ClickHouse/ClickHouse/pull/10851) ([Winter Zhang](https://github.com/zhang2014)).
* `Int128`, `Int256`, `UInt256` 타입과 관련 함수를 추가했습니다. Decimal을 Decimal256까지 확장했으며, precision은 최대 76자리입니다. 새 타입은 `allow_experimental_bigint_types` setting에서 사용할 수 있습니다. 동작이 매우 느리고 품질도 좋지 않습니다. 구현도 완전하지 않습니다. 이 기능은 사용하지 마십시오. [#13097](https://github.com/ClickHouse/ClickHouse/pull/13097) ([Artem Zuikov](https://github.com/4ertus2)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 단일 실행 파일만 있는 경우에 유용한 `clickhouse install` 스크립트가 추가되었습니다. [#13528](https://github.com/ClickHouse/ClickHouse/pull/13528) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `clickhouse` 바이너리를 구성 없이 실행할 수 있게 했습니다. [#13515](https://github.com/ClickHouse/ClickHouse/pull/13515) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 코드의 오타를 검사하는 `codespell` check를 활성화했습니다. [#13513](https://github.com/ClickHouse/ClickHouse/pull/13513) [#13511](https://github.com/ClickHouse/ClickHouse/pull/13511) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* CI에서 .sh 테스트용 린터인 Shellcheck를 활성화했습니다. 이로써 [#13168](https://github.com/ClickHouse/ClickHouse/issues/13168)이 해결되었습니다. [#13530](https://github.com/ClickHouse/ClickHouse/pull/13530) [#13529](https://github.com/ClickHouse/ClickHouse/pull/13529) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 자동 재구성 대신 구성 단계가 실패하도록 하는 CMake 옵션을 추가했으며, 기본적으로 활성화됩니다. [#13687](https://github.com/ClickHouse/ClickHouse/pull/13687) ([Konstantin](https://github.com/podshumok)).
* system.build\_options의 TZDATA\_VERSION을 통해 내장된 tzdata 버전을 확인할 수 있습니다. [#13648](https://github.com/ClickHouse/ClickHouse/pull/13648) ([filimonov](https://github.com/filimonov)).
* 빌드 과정에서 system.time\_zones 테이블 생성이 개선되었습니다. [#14209](https://github.com/ClickHouse/ClickHouse/issues/14209)를 해결했습니다. [#14215](https://github.com/ClickHouse/ClickHouse/pull/14215) ([filimonov](https://github.com/filimonov)).
* 패키지 리포지토리의 최신 tzdata를 사용해 ClickHouse를 빌드합니다. [#13623](https://github.com/ClickHouse/ClickHouse/pull/13623) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* skip\_list.json에 js 스타일 주석을 쓸 수 있는 기능을 추가했습니다. [#14159](https://github.com/ClickHouse/ClickHouse/pull/14159) ([alesapin](https://github.com/alesapin)).
* 복사해 붙여 넣은 GPL 코드가 없도록 합니다. [#13514](https://github.com/ClickHouse/ClickHouse/pull/13514) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테스트용 Docker 이미지가 test-base parent를 사용하도록 변경했습니다. [#14167](https://github.com/ClickHouse/ClickHouse/pull/14167) ([Ilya Yatsishin](https://github.com/qoega)).
* docker-compose 클러스터 구동 시 재시도 로직 추가; COMPOSE\_HTTP\_TIMEOUT 증가. [#14112](https://github.com/ClickHouse/ClickHouse/pull/14112) ([vzakaznikov](https://github.com/vzakaznikov)).
* 더 많은 버그를 찾아내기 위해 스트레스 테스트에서 `system.text_log`를 활성화했습니다. [#13855](https://github.com/ClickHouse/ClickHouse/pull/13855) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Testflows LDAP 모듈: openldap4용 누락된 인증서와 dhparam.pem을 추가했습니다. [#13780](https://github.com/ClickHouse/ClickHouse/pull/13780) ([vzakaznikov](https://github.com/vzakaznikov)).
* ZooKeeper는 CI 인프라에서 단위 테스트로 안정적으로 검증할 수 없습니다. 실제 ZooKeeper와의 상호작용을 단위 테스트에 사용하는 것 자체가 처음부터 바람직하지 않습니다(단위 테스트는 복잡한 분산 시스템을 검증하기 위한 것이 아닙니다). 이 목적에는 이미 통합 테스트를 사용하고 있으며, 통합 테스트가 더 적합합니다. [#13745](https://github.com/ClickHouse/ClickHouse/pull/13745) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Style check용 Docker image를 추가했습니다. 모든 docker 및 docker compose 파일이 docker 디렉터리에 위치하는지 확인하는 Style check를 추가했습니다. [#13724](https://github.com/ClickHouse/ClickHouse/pull/13724) ([Ilya Yatsishin](https://github.com/qoega)).
* Mac OS에서 cassandra build 문제를 수정했습니다. [#13708](https://github.com/ClickHouse/ClickHouse/pull/13708) ([Ilya Yatsishin](https://github.com/qoega)).
* 공유 빌드의 링크 오류를 수정했습니다. [#13700](https://github.com/ClickHouse/ClickHouse/pull/13700) ([Amos Bird](https://github.com/amosbird)).
* RBAC에서 정상적으로 작동하는지 확인할 수 있도록 LDAP 사용자 authentication 테스트 모음을 업데이트했습니다. [#13656](https://github.com/ClickHouse/ClickHouse/pull/13656) ([vzakaznikov](https://github.com/vzakaznikov)).
* `contrib/aws`에서 `-DENABLE_CURL_CLIENT`를 제거했습니다. [#13628](https://github.com/ClickHouse/ClickHouse/pull/13628) ([Vladimir Chebotarev](https://github.com/excitoon)).
* ClickHouse 노드의 헬스 체크 timeout 시간을 늘리고, 비정상 컨테이너가 발견되면 docker-compose logs를 덤프하도록 지원을 추가했습니다. [#13612](https://github.com/ClickHouse/ClickHouse/pull/13612) ([vzakaznikov](https://github.com/vzakaznikov)).
* [#10977](https://github.com/ClickHouse/ClickHouse/issues/10977)이 무효임을 확인했습니다. [#13539](https://github.com/ClickHouse/ClickHouse/pull/13539) ([Amos Bird](https://github.com/amosbird)).
* robot-clickhouse의 PR은 제외합니다. [#13489](https://github.com/ClickHouse/ClickHouse/pull/13489) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* Dockerfile을 통합 테스트에서 `docker/test` 디렉터리로 옮겼습니다. docker\_compose 파일은 `runner` docker 컨테이너에서 사용할 수 있습니다. Docker 이미지는 통합 테스트가 아니라 CI에서 빌드됩니다. [#13448](https://github.com/ClickHouse/ClickHouse/pull/13448) ([Ilya Yatsishin](https://github.com/qoega)).

<div id="clickhouse-release-207">
  ## ClickHouse 릴리스 20.7
</div>

<div id="clickhouse-release-v207230-stable-2020-08-31">
  ### ClickHouse 릴리스 v20.7.2.30-안정, 2020-08-31
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 인수 중 하나 이상이 부동소수점 수인 함수 `modulo`(연산자 `%`)는 이제 두 인수를 정수로 변환하지 않고, 부동소수점 수에 대해 직접 나눗셈의 나머지를 계산합니다. 이로써 대부분의 DBMS와 동작이 호환됩니다. 이는 Date 및 DateTime 데이터 타입에도 적용됩니다. 별칭 `mod`도 추가되었습니다. 이 변경으로 [#7323](https://github.com/ClickHouse/ClickHouse/issues/7323)이 해결되었습니다. [#12585](https://github.com/ClickHouse/ClickHouse/pull/12585) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 제로 날짜 Date/DateTime 값을 `0000-00-00` 및 `0000-00-00 00:00:00`으로 특별 출력하던 방식은 더 이상 권장되지 않습니다. [#12442](https://github.com/ClickHouse/ClickHouse/pull/12442) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 `groupArrayMoving*`는 분산 쿼리에서 동작하지 않았습니다. 또한 결과가 잘못된 데이터 타입(가장 큰 타입으로 승격되지 않음)으로 계산되고 있었습니다. 함수 `groupArrayMovingAvg`는 `avg` 함수와 일관되지 않게 정수를 반환하고 있었습니다. 이 변경으로 [#12568](https://github.com/ClickHouse/ClickHouse/issues/12568)이 수정되었습니다. [#12622](https://github.com/ClickHouse/ClickHouse/pull/12622) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MergeTree 설정에 대한 sanity check를 추가했습니다. 설정이 올바르지 않으면 server는 시작하거나 테이블 생성을 거부하고, 자세한 설명을 출력합니다. [#13153](https://github.com/ClickHouse/ClickHouse/pull/13153) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 사용자가 `background_pool_size`를 `number_of_free_entries_in_pool_to_execute_mutation` 또는 `number_of_free_entries_in_pool_to_lower_max_size_of_merge`보다 작은 값으로 설정하는 경우를 방지합니다. 이런 경우 ALTER가 동작하지 않거나 머지의 최대 크기가 지나치게 제한될 수 있습니다. 이때 어떻게 해야 하는지 설명하는 예외를 발생시킵니다. 이 변경으로 [#10897](https://github.com/ClickHouse/ClickHouse/issues/10897)이 해결되었습니다. [#12728](https://github.com/ClickHouse/ClickHouse/pull/12728) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 20.5보다 오래된 버전에서 업그레이드할 때, 롤링 업데이트를 수행하여 클러스터에 20.5 이상 버전과 20.5 미만 버전이 함께 존재하는 상태에서 구버전 ClickHouse 노드를 재시작하면, 최신 버전 노드가 있는 환경에서 구버전이 시작되면서 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 클러스터 노드에 새 clickhouse-server 패키지를 설치한 다음 재시작하십시오(즉, clickhouse-server가 재시작될 때 새 버전으로 시작되도록 해야 합니다).

<div id="new-feature-2">
  #### 새 기능
</div>

* 다수의 Polygon(세계 지도)으로 구성된 딕셔너리에서 좌표를 기반으로 지역을 찾는 효율적인 "역지오코딩" lookup을 제공하는 Polygon 딕셔너리 타입을 추가했습니다. 낮은 CPU 및 메모리 사용량을 유지할 수 있도록 재귀 그리드를 사용하는 정교하게 최적화된 알고리즘을 사용합니다. [#9278](https://github.com/ClickHouse/ClickHouse/pull/9278) ([achulkov2](https://github.com/achulkov2)).
* 사전 구성된 사용자에 대해 LDAP authentication("Simple Bind" 메서드) 지원을 추가했습니다. [#11234](https://github.com/ClickHouse/ClickHouse/pull/11234) ([Denis Glazachev](https://github.com/traceon)).
* 일부 `ALTER TABLE ... PARTITION ...` 쿼리(현재 `ATTACH` 및 `FREEZE`)에서 영향을 받은 파트 정보를 출력하는 설정 `alter_partition_verbose_result`를 도입했습니다. [#8076](https://github.com/ClickHouse/ClickHouse/issues/8076)을 해결했습니다. [#13017](https://github.com/ClickHouse/ClickHouse/pull/13017) ([alesapin](https://github.com/alesapin)).
* 베이지안 A/B 테스트를 위한 `bayesAB` 함수를 추가했습니다. [#12327](https://github.com/ClickHouse/ClickHouse/pull/12327) ([achimbab](https://github.com/achimbab)).
* 치명적 오류의 스택 트레이스를 수집하는 `system.crash_log` 테이블을 추가했습니다. 이 테이블은 비어 있어야 합니다. [#12316](https://github.com/ClickHouse/ClickHouse/pull/12316) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 기본 데이터베이스와 출력 형식을 설정하는 데 사용할 수 있는 HTTP 헤더 `X-ClickHouse-Database` 및 `X-ClickHouse-Format`을 추가했습니다. [#12981](https://github.com/ClickHouse/ClickHouse/pull/12981) ([hcz](https://github.com/hczhcz)).
* `SimpleAggregateFunction`에 `minMap` 및 `maxMap` 함수 지원을 추가했습니다. [#12662](https://github.com/ClickHouse/ClickHouse/pull/12662) ([Ildus Kurbangaliev](https://github.com/ildus)).
* 디스크의 데이터를 수정하는 `ALTER` 쿼리의 실행을 제한하는 설정 `allow_non_metadata_alters`를 추가했습니다. 기본적으로 비활성화되어 있습니다. [#11547](https://github.com/ClickHouse/ClickHouse/issues/11547)을 해결했습니다. [#12635](https://github.com/ClickHouse/ClickHouse/pull/12635) ([alesapin](https://github.com/alesapin)).
* 지정한 포맷을 통해 임의의 표현식을 문자열로 변환할 수 있도록 `formatRow` 함수를 추가했습니다. 이 함수는 SQL 출력 조작에 유용하며 `columns` 함수와 함께 사용하면 매우 다양하게 활용할 수 있습니다. [#12574](https://github.com/ClickHouse/ClickHouse/pull/12574) ([Amos Bird](https://github.com/amosbird)).
* MySQL 호환성을 위해 `FROM_UNIXTIME` 함수를 추가했습니다. 관련 이슈는 [12149](https://github.com/ClickHouse/ClickHouse/issues/12149)입니다. [#12484](https://github.com/ClickHouse/ClickHouse/pull/12484) ([flynn](https://github.com/ucasFL)).
* `allow_nullable_key` 테이블 설정이 활성화된 경우 MergeTree 테이블에서 널 허용 타입을 키로 사용할 수 있도록 허용합니다. [#5319](https://github.com/ClickHouse/ClickHouse/issues/5319)를 해결했습니다. [#12433](https://github.com/ClickHouse/ClickHouse/pull/12433) ([Amos Bird](https://github.com/amosbird)).
* [COS](https://intl.cloud.tencent.com/product/cos) 통합. [#12386](https://github.com/ClickHouse/ClickHouse/pull/12386) ([fastio](https://github.com/fastio)).
* 키별로 매핑된 값을 더하거나 빼기 위한 `mapAdd` 및 `mapSubtract` 함수를 추가했습니다. [#11735](https://github.com/ClickHouse/ClickHouse/pull/11735) ([Ildus Kurbangaliev](https://github.com/ildus)).

<div id="bug-fix">
  #### 버그 수정
</div>

* 단일 레플리카에서 실행되어야 하는 쿼리에서 `ON CLUSTER` 시간 초과가 너무 일찍 발생하던 문제를 수정했습니다. [#6704](https://github.com/ClickHouse/ClickHouse/issues/6704), [#7228](https://github.com/ClickHouse/ClickHouse/issues/7228), [#13361](https://github.com/ClickHouse/ClickHouse/issues/13361), [#11884](https://github.com/ClickHouse/ClickHouse/issues/11884). [#13450](https://github.com/ClickHouse/ClickHouse/pull/13450) ([alesapin](https://github.com/alesapin)).
* [#12277](https://github.com/ClickHouse/ClickHouse/pull/12277)에서 도입된 mark 포함 검색 중 발생하던 크래시를 수정했습니다. [#14225](https://github.com/ClickHouse/ClickHouse/pull/14225) ([Amos Bird](https://github.com/amosbird)).
* 서버 충돌로 이어질 수 있는 cache 레이아웃의 외부 딕셔너리 경쟁 상태를 수정했습니다. [#12566](https://github.com/ClickHouse/ClickHouse/pull/12566) ([alesapin](https://github.com/alesapin)).
* 대화형 모드의 클라이언트에서 진행률 표시줄이 화면에 표시된 데이터를 덮어쓰는 문제를 수정했습니다. 이 수정으로 [#12562](https://github.com/ClickHouse/ClickHouse/issues/12562), [#13369](https://github.com/ClickHouse/ClickHouse/issues/13369), [#13584](https://github.com/ClickHouse/ClickHouse/issues/13584), [#12964](https://github.com/ClickHouse/ClickHouse/issues/12964)가 해결되었습니다. [#13691](https://github.com/ClickHouse/ClickHouse/pull/13691) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* ORDER BY에 여러 컬럼을 사용할 때 `LowCardinality` 컬럼의 정렬 순서가 잘못 적용되던 문제를 수정했습니다. 이로써 [#13958](https://github.com/ClickHouse/ClickHouse/issues/13958) 문제가 해결됩니다. [#14223](https://github.com/ClickHouse/ClickHouse/pull/14223) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* cache 딕셔너리에서 `query_wait_timeout_milliseconds` 설정보다 잘못 우선 적용되던 하드코딩된 timeout을 제거했습니다. [#14105](https://github.com/ClickHouse/ClickHouse/pull/14105) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* `Poco::Exception: no space left on device`에 대한 추가 정보에서 잘못된 마운트 지점을 수정했습니다. [#14050](https://github.com/ClickHouse/ClickHouse/pull/14050) ([tavplubix](https://github.com/tavplubix)).
* `optimize_duplicate_order_by_and_distinct` setting이 활성화된 경우, 서브쿼리에도 `DISTINCT`가 있을 때 `DISTINCT` 키워드가 포함된 select 쿼리에서 발생하던 잘못된 쿼리 최적화를 수정했습니다. [#13925](https://github.com/ClickHouse/ClickHouse/pull/13925) ([Artem Zuikov](https://github.com/4ertus2)).
* `Distributed` 테이블 이름 변경 시 발생할 수 있는 잠재적인 교착 상태를 수정했습니다. [#13922](https://github.com/ClickHouse/ClickHouse/pull/13922) ([tavplubix](https://github.com/tavplubix)).
* ORDER BY에 여러 컬럼을 사용할 때 `FixedString` 컬럼의 잘못된 정렬 문제를 수정했습니다. [#13182](https://github.com/ClickHouse/ClickHouse/issues/13182)를 해결했습니다. [#13887](https://github.com/ClickHouse/ClickHouse/pull/13887) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 기본값이 아닌 매개변수를 사용할 때 `topK`/`topKWeighted` 집계의 정밀도가 낮아질 수 있는 문제를 수정했습니다. [#13817](https://github.com/ClickHouse/ClickHouse/pull/13817) ([Azat Khuzhin](https://github.com/azat)).
* NULL과 비교할 때 SET 유형의 INDEX가 있는 MergeTree 테이블에서 읽기 작업이 실패하던 문제를 수정했습니다. 이 수정은 [#13686](https://github.com/ClickHouse/ClickHouse/issues/13686)을 해결합니다. [#13793](https://github.com/ClickHouse/ClickHouse/pull/13793) ([Amos Bird](https://github.com/amosbird)).
* 함수 `range()`의 간격 오버플로우를 수정했습니다. [#13790](https://github.com/ClickHouse/ClickHouse/pull/13790) ([Azat Khuzhin](https://github.com/azat)).
* `DROP DATABASE`와 `CREATE TABLE`을 동시에 실행할 때 발생하는 `Directory not empty` 오류를 수정했습니다. [#13756](https://github.com/ClickHouse/ClickHouse/pull/13756) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `h3KRing` 함수에 범위 검사를 추가했습니다. 이 변경으로 [#13633](https://github.com/ClickHouse/ClickHouse/issues/13633) 문제가 해결됩니다. [#13752](https://github.com/ClickHouse/ClickHouse/pull/13752) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DETACH와 백그라운드 머지 사이의 경쟁 상태를 수정했습니다. DETACH 후에도 파트가 다시 나타날 수 있었습니다. 이는 [#8602](https://github.com/ClickHouse/ClickHouse/issues/8602)의 후속 작업으로, 해당 이슈를 해결하지는 못했지만 매우 드물게 실패하기 시작한 테스트를 추가해 문제를 드러냈습니다. [#13746](https://github.com/ClickHouse/ClickHouse/pull/13746) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `log_queries_min_type`가 `QUERY_START`보다 큰 경우 로깅 Settings.Names/Values를 수정했습니다. [#13737](https://github.com/ClickHouse/ClickHouse/pull/13737) ([Azat Khuzhin](https://github.com/azat)).
* 사용자 및 그룹 확인 시 `clickhouse-server.init`의 잘못된 메시지를 수정했습니다. [#13711](https://github.com/ClickHouse/ClickHouse/pull/13711) ([ylchou](https://github.com/ylchou)).
* `optimize_move_functions_out_of_any`에서 `any(arrayJoin())`를 `arrayJoin()`로 최적화하지 않도록 했습니다. [#13681](https://github.com/ClickHouse/ClickHouse/pull/13681) ([Azat Khuzhin](https://github.com/azat)).
* `ALTER ... REPLACE/MOVE PARTITION ...` 쿼리가 동시에 실행될 때 발생할 수 있는 교착 상태를 수정했습니다. [#13626](https://github.com/ClickHouse/ClickHouse/pull/13626) ([tavplubix](https://github.com/tavplubix)).
* 캐시 딕셔너리가 때때로 source에 있는 값 대신 기본값을 반환하던 문제를 수정했습니다. [#13624](https://github.com/ClickHouse/ClickHouse/pull/13624) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* compact parts의 보조 인덱스 손상 문제를 수정했습니다 (compact parts는 실험적 기능입니다). [#13538](https://github.com/ClickHouse/ClickHouse/pull/13538) ([Anton Popov](https://github.com/CurtizJ)).
* 함수 `netloc`의 잘못된 코드를 바로잡았습니다. 이로써 [#13335](https://github.com/ClickHouse/ClickHouse/issues/13335)이 해결됩니다. [#13446](https://github.com/ClickHouse/ClickHouse/pull/13446) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `parseDateTimeBestEffort` 함수에 Unix timestamp가 인수로 전달되었을 때 발생하던 오류를 수정했습니다. 이로써 [#13362](https://github.com/ClickHouse/ClickHouse/issues/13362)가 해결되었습니다. [#13441](https://github.com/ClickHouse/ClickHouse/pull/13441) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `NULL` 요소가 있는 튜플 비교 시 잘못된 반환 유형을 수정했습니다. [#12461](https://github.com/ClickHouse/ClickHouse/issues/12461)을 수정합니다. [#13420](https://github.com/ClickHouse/ClickHouse/pull/13420) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 잘못된 최적화로 인해 `SET optimize_move_functions_out_of_any = 1` 설정과 `any()` 내부의 별칭 때문에 `aggregate function any(x) is found inside another aggregate function in query` 오류가 발생하던 문제를 수정했습니다. [#13419](https://github.com/ClickHouse/ClickHouse/pull/13419) ([Artem Zuikov](https://github.com/4ertus2)).
* `StorageMemory`에서 발생할 수 있는 경쟁 상태(race condition)를 수정했습니다. [#13416](https://github.com/ClickHouse/ClickHouse/pull/13416) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Arrow` 및 `Parquet` 포맷에서 쿼리가 0개의 행을 반환할 때 빈 출력이 생성되던 문제를 수정했습니다. 이 포맷에서는 빈 출력이 유효하지 않기 때문입니다. [#13399](https://github.com/ClickHouse/ClickHouse/pull/13399) ([hcz](https://github.com/hczhcz)).
* 상수 컬럼과 프라이머리 키의 접두사가 `ORDER BY` 절에 포함된 select 쿼리 문제를 수정했습니다. [#13396](https://github.com/ClickHouse/ClickHouse/pull/13396) ([Anton Popov](https://github.com/CurtizJ)).
* `clickhouse-local`의 `PrettyCompactMonoBlock`를 수정했습니다. `PrettyCompactMonoBlock`에서 extremes/합계 문제를 수정했습니다. [#7746](https://github.com/ClickHouse/ClickHouse/issues/7746)을 해결했습니다. [#13394](https://github.com/ClickHouse/ClickHouse/pull/13394) ([Azat Khuzhin](https://github.com/azat)).
* system.text\_log의 데드락을 해결했습니다. [#12452](https://github.com/ClickHouse/ClickHouse/pull/12452) ([alexey-milovidov](https://github.com/alexey-milovidov)). 이는 [#12339](https://github.com/ClickHouse/ClickHouse/issues/12339)의 일부입니다. 이로써 [#12325](https://github.com/ClickHouse/ClickHouse/issues/12325)도 해결되었습니다. [#13386](https://github.com/ClickHouse/ClickHouse/pull/13386) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* `File(TSVWithNames*)`를 수정했습니다(헤더가 여러 번 기록되는 문제). `clickhouse-local --format CSVWithNames*`를 수정했습니다(헤더가 없고 [#12197](https://github.com/ClickHouse/ClickHouse/issues/12197) 이후부터 동작이 깨진 문제). 행이 0개인 `clickhouse-local --format CSVWithNames*`도 수정했습니다(헤더가 없는 문제). [#13343](https://github.com/ClickHouse/ClickHouse/pull/13343) ([Azat Khuzhin](https://github.com/azat)).
* 함수 `groupArrayMovingSum`가 빈 state를 역직렬화할 때 발생하는 segfault를 수정했습니다. [#13339](https://github.com/ClickHouse/ClickHouse/issues/13339)을 해결합니다. [#13341](https://github.com/ClickHouse/ClickHouse/pull/13341) ([alesapin](https://github.com/alesapin)).
* `JOIN ON` 절에서 `arrayJoin()` 함수를 사용하면 오류가 발생합니다. [#13330](https://github.com/ClickHouse/ClickHouse/pull/13330) ([Artem Zuikov](https://github.com/4ertus2)).
* `LEFT ASOF JOIN`에서 `join_use_nulls=1`일 때 발생하는 충돌 문제를 수정했습니다. [#13291](https://github.com/ClickHouse/ClickHouse/pull/13291) ([Artem Zuikov](https://github.com/4ertus2)).
* 지연된 레플리카에서 온 쿼리의 경우 발생할 수 있는 오류 `Totals having transform was already added to pipeline`를 수정했습니다. [#13290](https://github.com/ClickHouse/ClickHouse/pull/13290) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 사용자가 `h3ToChildren` 함수에 특수하게 조작된 인수를 전달할 경우 서버가 충돌할 수 있습니다. 이 변경으로 [#13275](https://github.com/ClickHouse/ClickHouse/issues/13275)가 수정되었습니다. [#13277](https://github.com/ClickHouse/ClickHouse/pull/13277) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `NaN` 값이 있는 Float 타입에서 호출되는 `uniqExact`, `topK`, `sumDistinct` 및 유사한 집계 함수의 잠재적인 성능 저하와 다소 부정확한 결과 문제를 수정했습니다. 또한 디버그 빌드에서 assert를 유발하던 문제도 수정했습니다. 이 수정은 [#12491](https://github.com/ClickHouse/ClickHouse/issues/12491)을 해결합니다. [#13254](https://github.com/ClickHouse/ClickHouse/pull/13254) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 프라이머리 키에 단조 함수가 포함된 표현식이 있고, 쿼리에 타입이 다른 상수와의 비교가 포함된 경우 KeyCondition의 assertion을 수정했습니다. 이로써 [#12465](https://github.com/ClickHouse/ClickHouse/issues/12465)가 해결되었습니다. [#13251](https://github.com/ClickHouse/ClickHouse/pull/13251) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `roundUpToPowerOfTwoOrZero()` 함수에서 MSB가 설정된 숫자에 대해서는 입력된 숫자를 그대로 반환합니다. 이는 배열 크기 오버플로우 시 발생할 수 있는 잠재적인 오류를 방지합니다. [#13234](https://github.com/ClickHouse/ClickHouse/pull/13234) ([Azat Khuzhin](https://github.com/azat)).
* 리터럴 NULL이 아닌 cond에 널 허용 constexpr을 사용할 때의 if 함수를 수정했습니다. [#12463](https://github.com/ClickHouse/ClickHouse/issues/12463)를 수정했습니다. [#13226](https://github.com/ClickHouse/ClickHouse/pull/13226) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 배열 요소와 배열 첨자가 모두 널 허용인 경우 `arrayElement` 함수에서 발생하던 assert를 수정했습니다. 이 수정으로 [#12172](https://github.com/ClickHouse/ClickHouse/issues/12172)가 해결됩니다. [#13224](https://github.com/ClickHouse/ClickHouse/pull/13224) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 상수 인수를 사용하는 DateTime64 변환 함수를 수정했습니다. [#13205](https://github.com/ClickHouse/ClickHouse/pull/13205) ([Azat Khuzhin](https://github.com/azat)).
* 데이터베이스 또는 테이블 이름에 점(.)이 포함된 경우 `users.xml`에서 행 정책(row policies)을 파싱하지 못하던 문제를 수정했습니다. 이로써 [#5779](https://github.com/ClickHouse/ClickHouse/issues/5779), [#12527](https://github.com/ClickHouse/ClickHouse/issues/12527)이 해결됩니다. [#13199](https://github.com/ClickHouse/ClickHouse/pull/13199) ([Vitaly Baranov](https://github.com/vitlibar)).
* 연결이 한 번 끊긴 후 `redis` 딕셔너리에 접근할 수 없던 문제를 수정했습니다. 이 문제는 `cache` 및 `direct` 딕셔너리 레이아웃에서 발생할 수 있습니다. [#13082](https://github.com/ClickHouse/ClickHouse/pull/13082) ([Anton Popov](https://github.com/CurtizJ)).
* 함수 사용 시 잘못된 인덱스 분석을 수정했습니다. 이 문제로 인해 `MergeTree` 테이블을 읽을 때 일부 데이터 파트가 건너뛰어질 수 있었습니다. [#13060](https://github.com/ClickHouse/ClickHouse/issues/13060)을 수정했습니다. [#12406](https://github.com/ClickHouse/ClickHouse/issues/12406)을 수정했습니다. [#13081](https://github.com/ClickHouse/ClickHouse/pull/13081) ([Anton Popov](https://github.com/CurtizJ)).
* `now()`, `now64()`, `randConstant()`처럼 쿼리 범위 내에서는 결정적(deterministic)이지만 쿼리 간에는 결정적이지 않은 함수를 사용하는 원격 쿼리에서, `Cannot convert column because it is constant but values of constants are different in source and result` 오류를 수정했습니다. [#11327](https://github.com/ClickHouse/ClickHouse/issues/11327)을 수정했습니다. [#13075](https://github.com/ClickHouse/ClickHouse/pull/13075) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `ORDER BY` Tuple과 작은 `LIMIT`이 있는 쿼리에서 발생할 수 있던 크래시를 수정했습니다. [#12623](https://github.com/ClickHouse/ClickHouse/issues/12623)를 해결했습니다. [#13009](https://github.com/ClickHouse/ClickHouse/pull/13009) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `UNION` 및 `JOIN`이 포함된 쿼리의 `Block structure mismatch` 오류를 수정했습니다. [#12602](https://github.com/ClickHouse/ClickHouse/issues/12602) 문제를 해결했습니다. [#12989](https://github.com/ClickHouse/ClickHouse/pull/12989) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 하나의 시간 인터벌 동안 만료가 두 개 이상의 파티션에 영향을 미칠 경우 제대로 동작하지 않던 `merge_with_ttl_timeout` 로직을 수정했습니다. (작성자: @excitoon). [#12982](https://github.com/ClickHouse/ClickHouse/pull/12982) ([Alexander Kazakov](https://github.com/Akazz)).
* DDL 쿼리로 생성된 range hashed 딕셔너리의 컬럼 중복 문제를 수정했습니다. 이 변경으로 [#10605](https://github.com/ClickHouse/ClickHouse/issues/10605) 문제가 해결되었습니다. [#12857](https://github.com/ClickHouse/ClickHouse/pull/12857) ([alesapin](https://github.com/alesapin)).
* 로컬 레플리카에서 SELECT할 때 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. [#12840](https://github.com/ClickHouse/ClickHouse/pull/12840) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `ALTER DELETE`와 `ALTER MODIFY COLUMN` 쿼리가 동시에 실행될 때 단일 mutation으로 처리되는 드문 버그를 수정했습니다. 이 버그로 인해 `count.txt`의 행 수가 잘못 기록되고, 그 결과 part의 데이터도 잘못될 수 있습니다. 또한 `ALTER RENAME COLUMN`과 `ALTER ADD COLUMN`이 동시에 실행될 때 발생하는 사소한 버그도 수정했습니다. [#12760](https://github.com/ClickHouse/ClickHouse/pull/12760) ([alesapin](https://github.com/alesapin)).
* 원격 테이블을 쿼리할 때 `clickhouse` 딕셔너리 소스에서 잘못된 자격 증명이 사용되던 문제를 수정했습니다. [#12756](https://github.com/ClickHouse/ClickHouse/pull/12756) ([sundyli](https://github.com/sundy-li)).
* `CAST(Nullable(String), Enum())` 문제를 수정했습니다. [#12745](https://github.com/ClickHouse/ClickHouse/pull/12745) ([Azat Khuzhin](https://github.com/azat)).
* `IN` 절에서 함수로 해석되는 큰 튜플의 성능을 개선했습니다. 이는 어떤 특별한 이유로 사용자가 `WHERE x IN (1, 2, ...)` 대신 `WHERE x IN tuple(1, 2, ...)`를 작성하는 경우입니다. [#12700](https://github.com/ClickHouse/ClickHouse/pull/12700) ([Anton Popov](https://github.com/CurtizJ)).
* input\_format\_parallel\_parsing의 메모리 추적 문제를 수정했습니다(스레드를 그룹에 연결하는 방식으로). [#12672](https://github.com/ClickHouse/ClickHouse/pull/12672) ([Azat Khuzhin](https://github.com/azat)).
* `any(func(<lambda>))`의 경우 `optimize_move_functions_out_of_any=1` 최적화가 잘못 적용되는 문제를 수정했습니다. [#12664](https://github.com/ClickHouse/ClickHouse/pull/12664) ([Artem Zuikov](https://github.com/4ertus2)).
* const 표현식이 있는 블룸 필터 인덱스 관련 [#10572](https://github.com/ClickHouse/ClickHouse/issues/10572) 문제를 수정했습니다. [#12659](https://github.com/ClickHouse/ClickHouse/pull/12659) ([Winter Zhang](https://github.com/zhang2014)).
* 브로커를 사용할 수 없을 때뿐 아니라 그 밖의 경우에도 StorageKafka에서 발생하는 SIGSEGV를 수정했습니다. [#12658](https://github.com/ClickHouse/ClickHouse/pull/12658) ([Azat Khuzhin](https://github.com/azat)).
* 함수 `if`에 `Array(UUID)` 인수 지원을 추가했습니다. 이로써 [#11066](https://github.com/ClickHouse/ClickHouse/issues/11066) 문제가 수정되었습니다. [#12648](https://github.com/ClickHouse/ClickHouse/pull/12648) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 CREATE USER IF NOT EXISTS는 사용자가 이미 존재해도 Exception을 발생시키지 않습니다. 이로써 [#12507](https://github.com/ClickHouse/ClickHouse/issues/12507) 문제가 수정되었습니다. [#12646](https://github.com/ClickHouse/ClickHouse/pull/12646) ([Vitaly Baranov](https://github.com/vitlibar)).
* 예기치 않은 상황(예: UInt64 컬럼에서 값을 빼는 경우)에서 `ALTER ... UPDATE` 수행 중 `There is no supertype...` 예외가 발생할 수 있습니다. 이 변경으로 [#7306](https://github.com/ClickHouse/ClickHouse/issues/7306)이 수정되었습니다. 이 변경으로 [#4165](https://github.com/ClickHouse/ClickHouse/issues/4165)가 수정되었습니다. [#12633](https://github.com/ClickHouse/ClickHouse/pull/12633) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 외부 정렬을 사용하는 쿼리에서 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#12617](https://github.com/ClickHouse/ClickHouse/issues/12617)을 해결했습니다. [#12618](https://github.com/ClickHouse/ClickHouse/pull/12618) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `OPTIMIZE DEDUPLICATE`에서 발생하던 오류 `Output of TreeExecutor is not sorted`를 수정했습니다. [#11572](https://github.com/ClickHouse/ClickHouse/issues/11572)를 수정했습니다. [#12613](https://github.com/ClickHouse/ClickHouse/pull/12613) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 함수 `any` 결과의 별칭(alias)이 쿼리 최적화 과정에서 사라질 수 있던 문제를 수정했습니다. [#12593](https://github.com/ClickHouse/ClickHouse/pull/12593) ([Anton Popov](https://github.com/CurtizJ)).
* DROP TABLE 시 분산 테이블의 데이터(async INSERT에서 생성된 block)를 삭제합니다. [#12556](https://github.com/ClickHouse/ClickHouse/pull/12556) ([Azat Khuzhin](https://github.com/azat)).
* 이제 파일 `checksums.txt`가 없을 때 ClickHouse가 파트의 체크섬을 다시 계산합니다. [#9827](https://github.com/ClickHouse/ClickHouse/issues/9827) 이후 동작하지 않던 문제였습니다. [#12545](https://github.com/ClickHouse/ClickHouse/pull/12545) ([alesapin](https://github.com/alesapin)).
* `enable_mixed_granularity_parts=1`일 때 `ALTER DELETE` 쿼리 후 기존 파트가 손상되던 버그를 수정했습니다. [#12536](https://github.com/ClickHouse/ClickHouse/issues/12536)을 해결합니다. [#12543](https://github.com/ClickHouse/ClickHouse/pull/12543) ([alesapin](https://github.com/alesapin)).
* 데이터 중복을 일으킬 수 있던 라이브 view 테이블의 race condition을 수정했습니다. LIVE VIEW는 실험적 기능입니다. [#12519](https://github.com/ClickHouse/ClickHouse/pull/12519) ([vzakaznikov](https://github.com/vzakaznikov)).
* `AggregateFunction(avg, ...)` 값의 바이너리 형식에 대한 하위 호환성 문제를 수정했습니다. 이 변경으로 [#12342](https://github.com/ClickHouse/ClickHouse/issues/12342) 문제가 해결됩니다. [#12486](https://github.com/ClickHouse/ClickHouse/pull/12486) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 딕셔너리 키 표현식을 기준으로 딕셔너리와 JOIN할 때 발생하던 크래시를 수정했습니다: `t JOIN dict ON expr(dict.id) = t.id`. 이 경우에는 딕셔너리 JOIN 최적화를 비활성화했습니다. [#12458](https://github.com/ClickHouse/ClickHouse/pull/12458) ([Artem Zuikov](https://github.com/4ertus2)).
* 매우 큰 LIMIT 또는 OFFSET이 지정되었을 때 발생하는 오버플로우를 수정했습니다. 이로써 [#10470](https://github.com/ClickHouse/ClickHouse/issues/10470)이 해결되었습니다. 이로써 [#11372](https://github.com/ClickHouse/ClickHouse/issues/11372)가 해결되었습니다. [#12427](https://github.com/ClickHouse/ClickHouse/pull/12427) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* kafka: batch 중간에 오류가 있는 메시지가 있을 때 발생하던 SIGSEGV 문제를 수정했습니다. [#12302](https://github.com/ClickHouse/ClickHouse/pull/12302) ([Azat Khuzhin](https://github.com/azat)).

<div id="improvement">
  #### 개선 사항
</div>

* ZooKeeper에 저장되는 로그 양을 줄입니다. 서버/테이블/삽입 작업이 많은 환경에서 레플리카가 오프라인인 경우 ZooKeeper 노드가 과도하게 증가하는 것을 방지합니다. [#13100](https://github.com/ClickHouse/ClickHouse/pull/13100) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 ALTER 또는 mutation 중 오류가 발생하면 예외가 클라이언트에 전달됩니다. [#11329](https://github.com/ClickHouse/ClickHouse/issues/11329)가 해결되었습니다. [#12666](https://github.com/ClickHouse/ClickHouse/pull/12666) ([alesapin](https://github.com/alesapin)).
* `QueryTimeMicroseconds`, `SelectQueryTimeMicroseconds`, `InsertQueryTimeMicroseconds`를 `system.events`와 system.metrics, processes, query\_log 등에 추가했습니다. [#13028](https://github.com/ClickHouse/ClickHouse/pull/13028) ([ianton-ru](https://github.com/ianton-ru)).
* `SelectedRows`와 `SelectedBytes`가 `system.events`와 함께 system.metrics, processes, query\_log 등에도 추가되었습니다. [#12638](https://github.com/ClickHouse/ClickHouse/pull/12638) ([ianton-ru](https://github.com/ianton-ru)).
* `system.query_log`에 `current_database` 정보가 추가되었습니다. [#12652](https://github.com/ClickHouse/ClickHouse/pull/12652) ([Amos Bird](https://github.com/amosbird)).
* 입력 형식으로 `TabSeparatedRaw`를 허용합니다. [#12009](https://github.com/ClickHouse/ClickHouse/pull/12009) ([hcz](https://github.com/hczhcz)).
* 이제 `joinGet`에서 다중 키 조회를 지원합니다. [#12418](https://github.com/ClickHouse/ClickHouse/pull/12418) ([Amos Bird](https://github.com/amosbird)).
* NULL이 포함된 배열에서도 `*Map` 집계 함수가 동작할 수 있도록 합니다. [#13157](https://github.com/ClickHouse/ClickHouse/issues/13157) 문제를 수정합니다. [#13225](https://github.com/ClickHouse/ClickHouse/pull/13225) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateTime 값을 parsing할 때 해당 시간대에서 음수 Unix timestamp가 되는 경우(예: 모스크바의 `1970-01-01 00:00:00`) 오버플로우가 발생하지 않도록 수정했습니다. 대신 0으로 고정됩니다. 이 변경으로 [#3470](https://github.com/ClickHouse/ClickHouse/issues/3470)이 수정되었습니다. 이 변경으로 [#4172](https://github.com/ClickHouse/ClickHouse/issues/4172)가 수정되었습니다. [#12443](https://github.com/ClickHouse/ClickHouse/pull/12443) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* AvroConfluent: Kafka tombstone 레코드 건너뛰기 - 손상된 레코드도 건너뛰기 지원 [#13203](https://github.com/ClickHouse/ClickHouse/pull/13203) ([Andrew Onyshchuk](https://github.com/oandrew)).
* 긴 쿼리에서 잘못된 오류가 표시되는 문제를 수정했습니다. 올바른 쿼리에서도 `Max query size exceeded` 대신 구문 오류가 발생할 수 있었습니다. [#13928](https://github.com/ClickHouse/ClickHouse/pull/13928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `lgamma` 함수의 데이터 레이스를 수정했습니다. 이 문제는 `tsan`에서만 발견되었고, 실제 부작용은 발생하지 않았습니다. [#13842](https://github.com/ClickHouse/ClickHouse/pull/13842) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ATTACH/ALTER/CREATE QUOTA SQL 문의 'Week' 인터벌 포맷 문제를 수정했습니다. [#13417](https://github.com/ClickHouse/ClickHouse/pull/13417) ([vladimir-golovchenko](https://github.com/vladimir-golovchenko)).
* 이제 compact part 처리 과정에서 손상된 파트를 발견하면 해당 파트도 보고됩니다. Compact parts는 실험적 기능입니다. [#13282](https://github.com/ClickHouse/ClickHouse/pull/13282) ([Amos Bird](https://github.com/amosbird)).
* `geohashesInBox`의 assert를 수정했습니다. 이로써 [#12554](https://github.com/ClickHouse/ClickHouse/issues/12554)가 해결됩니다. [#13229](https://github.com/ClickHouse/ClickHouse/pull/13229) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `parseDateTimeBestEffort`의 assert를 수정했습니다. 이 변경으로 [#12649](https://github.com/ClickHouse/ClickHouse/issues/12649) 문제가 해결되었습니다. [#13227](https://github.com/ClickHouse/ClickHouse/pull/13227) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Processors/PipelineExecutor의 소규모 최적화: 그렇게 하는 것이 합리적일 때 루프를 빠져나오도록 했습니다. [#13058](https://github.com/ClickHouse/ClickHouse/pull/13058) ([Mark Papadakis](https://github.com/markpapadakis)).
* TABLE 키워드 없이도 TRUNCATE를 지원합니다. [#12653](https://github.com/ClickHouse/ClickHouse/pull/12653) ([Winter Zhang](https://github.com/zhang2014)).
* 기본값으로 explain 쿼리 포맷이 덮어써지던 문제를 수정했습니다. 이로써 [#12541](https://github.com/ClickHouse/ClickHouse/issues/12432)을 해결합니다. [#12541](https://github.com/ClickHouse/ClickHouse/pull/12541) ([BohuTANG](https://github.com/BohuTANG)).
* 보다 표준적인 방식으로 JOIN kind와 유형을 지정할 수 있습니다. 즉, `SEMI LEFT JOIN` 대신 `LEFT SEMI JOIN`을 사용할 수 있습니다. 현재는 두 방식 모두 올바릅니다. [#12520](https://github.com/ClickHouse/ClickHouse/pull/12520) ([Artem Zuikov](https://github.com/4ertus2)).
* `multiple_joins_rewriter_version`의 기본값이 2로 변경되었습니다. 이에 따라 컬럼 이름을 인식하는 새로운 다중 조인 재작성기가 활성화됩니다. [#12469](https://github.com/ClickHouse/ClickHouse/pull/12469) ([Artem Zuikov](https://github.com/4ertus2)).
* S3 스토리지 요청에 대한 메트릭 여러 개를 추가했습니다. [#12464](https://github.com/ClickHouse/ClickHouse/pull/12464) ([ianton-ru](https://github.com/ianton-ru)).
* clickhouse-benchmark에서 `--secure` 인수를 사용할 때 올바른 기본 보안 포트를 사용하도록 했습니다. 이 변경으로 [#11044](https://github.com/ClickHouse/ClickHouse/issues/11044)가 수정되었습니다. [#12440](https://github.com/ClickHouse/ClickHouse/pull/12440) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Log`, `TinyLog`, `StripeLog` 엔진에서 삽입 오류 발생 시 롤백을 수행합니다. 이전 버전에서는 삽입 오류가 발생하면 테이블 상태가 일관되지 않게 될 수 있었습니다(이는 문서화된 동작이며, 이러한 테이블 엔진에서는 정상입니다). 이 변경으로 [#12402](https://github.com/ClickHouse/ClickHouse/issues/12402)가 수정되었습니다. [#12426](https://github.com/ClickHouse/ClickHouse/pull/12426) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Atomic` 데이터베이스 엔진에 `RENAME DATABASE` 및 `RENAME DICTIONARY`를 구현했습니다 - `ReplicatedMergeTree`의 ZooKeeper 경로에서 사용할 수 있는 암묵적 `{uuid}` 매크로를 추가했습니다. 이는 `CREATE ... ON CLUSTER ...` 쿼리에서 작동합니다. 이를 사용하려면 `show_table_uuid_in_table_create_query_if_not_nil`을 `true`로 설정하십시오. - `ReplicatedMergeTree` 엔진 인수를 선택 사항으로 변경했으며, 기본적으로 `/clickhouse/tables/{uuid}/{shard}/` 및 `{replica}`를 사용합니다. [#12135](https://github.com/ClickHouse/ClickHouse/issues/12135)를 해결했습니다. - 사소한 수정. - 이러한 변경 사항은 `Atomic` 데이터베이스 엔진의 하위 호환성을 깨뜨립니다. 이전에 생성된 `Atomic` 데이터베이스는 새 포맷으로 수동 변환해야 합니다. Atomic 데이터베이스는 실험적 기능입니다. [#12343](https://github.com/ClickHouse/ClickHouse/pull/12343) ([tavplubix](https://github.com/tavplubix)).
* `AWSAuthV4Signer`를 별도의 로거로 분리하고, 로그 메시지에서 불필요하게 반복되던 `AWSClient: AWSClient`를 제거했습니다. [#12320](https://github.com/ClickHouse/ClickHouse/pull/12320) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 디스크 액세스 스토리지에서의 예외 메시지가 개선되었습니다. [#12625](https://github.com/ClickHouse/ClickHouse/pull/12625) ([alesapin](https://github.com/alesapin)).
* 인수 개수가 잘못된 함수 `in`에 대해 더 나은 예외 메시지를 제공합니다. [#12529](https://github.com/ClickHouse/ClickHouse/pull/12529) ([Anton Popov](https://github.com/CurtizJ)).
* 적응형 세분화 수준 관련 오류 메시지를 수정했습니다. [#12624](https://github.com/ClickHouse/ClickHouse/pull/12624) ([alesapin](https://github.com/alesapin)).
* FORMAT 이후 SETTINGS 파싱을 수정했습니다. [#12480](https://github.com/ClickHouse/ClickHouse/pull/12480) ([Azat Khuzhin](https://github.com/azat)).
* MergeTree 테이블에 ORDER BY 또는 PARTITION BY가 없을 경우, 모든 컬럼을 CLEAR하는 ALTER를 요청할 수 있었고 이로 인해 ALTER가 멈추는 문제가 있었습니다. [#7941](https://github.com/ClickHouse/ClickHouse/issues/7941)에서 수정되었습니다. [#12382](https://github.com/ClickHouse/ClickHouse/pull/12382) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 각 쿼리 후 이력 파일에서 자동 완성을 다시 불러오지 않도록 했습니다(다른 클라이언트 session의 이력과 겹치는 것을 방지하기 위해). [#13086](https://github.com/ClickHouse/ClickHouse/pull/13086) ([Azat Khuzhin](https://github.com/azat)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 일부 작업의 메모리 사용량을 최대 2배까지 줄였습니다. [#12424](https://github.com/ClickHouse/ClickHouse/pull/12424) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 정확한 PK 범위와 일치하는 쿼리에 대한 프라이머리 키(PK) lookup을 최적화했습니다. [#12277](https://github.com/ClickHouse/ClickHouse/pull/12277) ([Ivan Babrou](https://github.com/bobrik)).
* `LowCardinality`를 사용하는 매우 짧은 쿼리를 약간 최적화했습니다. [#14129](https://github.com/ClickHouse/ClickHouse/pull/14129) ([Anton Popov](https://github.com/CurtizJ)).
* UInt8/UInt16 키에 대한 집계 성능을 약간 개선했습니다. [#13091](https://github.com/ClickHouse/ClickHouse/pull/13091) and [#13055](https://github.com/ClickHouse/ClickHouse/pull/13055) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 쿼리 계획 내에서 `LIMIT` 단계를 푸시다운합니다(서브쿼리 내부). [#13016](https://github.com/ClickHouse/ClickHouse/pull/13016) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* [#11564](https://github.com/ClickHouse/ClickHouse/issues/11564)에 설명된 대로, 파트에서 프라이머리 키 lookup과 스키핑 인덱스 단계를 병렬로 수행합니다. [#12589](https://github.com/ClickHouse/ClickHouse/pull/12589) ([Ivan Babrou](https://github.com/bobrik)).
* `set optimize_if_transform_strings_to_enum = 1`인 경우 함수 "if"와 "transform"의 String 유형 인수를 enum으로 변환합니다. [#12515](https://github.com/ClickHouse/ClickHouse/pull/12515) ([Artem Zuikov](https://github.com/4ertus2)).
* `set optimize_monotonous_functions_in_order_by=1`인 경우 `ORDER BY`에서 단조 함수를 해당 인수로 대체합니다. [#12467](https://github.com/ClickHouse/ClickHouse/pull/12467) ([Artem Zuikov](https://github.com/4ertus2)).
* `set optimize_redundant_functions_in_order_by = 1`인 경우 `ORDER BY x, f(x)`를 `ORDER BY x`로 재작성하는 ORDER BY 최적화를 추가했습니다. [#12404](https://github.com/ClickHouse/ClickHouse/pull/12404) ([Artem Zuikov](https://github.com/4ertus2)).
* 서브쿼리에 `WITH` 절이 포함된 경우 프레디케이트 푸시다운을 허용합니다. 이 변경으로 [#12293](https://github.com/ClickHouse/ClickHouse/issues/12293)가 수정됩니다. [#12663](https://github.com/ClickHouse/ClickHouse/pull/12663) ([Winter Zhang](https://github.com/zhang2014)).
* 컴팩트 파트에서 읽기 성능을 개선했습니다. 컴팩트 파트는 실험적 기능입니다. [#12492](https://github.com/ClickHouse/ClickHouse/pull/12492) ([Anton Popov](https://github.com/CurtizJ)).
* `DiskS3`에 스트리밍 최적화를 구현하려고 시도했습니다. DiskS3는 실험적 기능입니다. [#12434](https://github.com/ClickHouse/ClickHouse/pull/12434) ([Vladimir Chebotarev](https://github.com/excitoon)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* sh 테스트 린팅에는 `shellcheck`를 사용합니다. [#13200](https://github.com/ClickHouse/ClickHouse/pull/13200) [#13207](https://github.com/ClickHouse/ClickHouse/pull/13207) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* GitHub 훅에서 pull request에 레이블을 설정하는 스크립트를 추가했습니다. [#13183](https://github.com/ClickHouse/ClickHouse/pull/13183) ([alesapin](https://github.com/alesapin)).
* 재귀적 서브모듈 일부를 제거했습니다. [#13378](https://github.com/ClickHouse/ClickHouse/issues/13378)을 참조하십시오. [#13379](https://github.com/ClickHouse/ClickHouse/pull/13379) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 모든 서브모듈이 올바른 URL을 사용하도록 합니다. [#13379](https://github.com/ClickHouse/ClickHouse/issues/13379)의 후속 작업입니다. 이 변경으로 [#13378](https://github.com/ClickHouse/ClickHouse/issues/13378)이 수정됩니다. [#13397](https://github.com/ClickHouse/ClickHouse/pull/13397) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 사용자 선언 설정 지원이 추가되었으며, 이러한 설정은 쿼리 내부에서 사용할 수 있습니다. 이는 ClickHouse engine을 다른 시스템의 구성 요소로 사용할 때 필요합니다. [#13013](https://github.com/ClickHouse/ClickHouse/pull/13013) ([Vitaly Baranov](https://github.com/vitlibar)).
* TestFlows에서 INSERT 권한의 RBAC 기능에 대한 테스트를 추가했습니다. SELECT 테스트 대상 테이블을 확대했습니다. 새로운 테이블 엔진 테스트에 맞게 Requirements를 추가했습니다. [#13340](https://github.com/ClickHouse/ClickHouse/pull/13340) ([MyroTk](https://github.com/MyroTk)).
* 스트레스 테스트 중 서버 재시작 시 발생하는 타임아웃 오류를 수정했습니다. [#13321](https://github.com/ClickHouse/ClickHouse/pull/13321) ([alesapin](https://github.com/alesapin)).
* 이제 빠른 테스트는 재시도하면서 서버를 기다립니다. [#13284](https://github.com/ClickHouse/ClickHouse/pull/13284) ([alesapin](https://github.com/alesapin)).
* Function `materialize()`(ClickHouse 테스트용 함수)는 예상대로 NULL에 대해서도 동작하며, 이를 비상수 컬럼으로 변환합니다. [#13212](https://github.com/ClickHouse/ClickHouse/pull/13212) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* AArch64에서 libunwind build 문제를 수정했습니다. 이 수정으로 [#13204](https://github.com/ClickHouse/ClickHouse/issues/13204)가 해결됩니다. [#13208](https://github.com/ClickHouse/ClickHouse/pull/13208) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테스트 불안정성을 방지하기 위해 zkutil gtest의 재시도 횟수를 더 늘렸습니다. [#13165](https://github.com/ClickHouse/ClickHouse/pull/13165) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* RBAC TestFlows의 소규모 수정입니다. [#13152](https://github.com/ClickHouse/ClickHouse/pull/13152) ([vzakaznikov](https://github.com/vzakaznikov)).
* `00960_live_view_watch_events_live.py` 테스트를 수정했습니다. [#13108](https://github.com/ClickHouse/ClickHouse/pull/13108) ([vzakaznikov](https://github.com/vzakaznikov)).
* 문서 배포 스크립트의 캐시 삭제 기능을 개선했습니다. [#13107](https://github.com/ClickHouse/ClickHouse/pull/13107) ([alesapin](https://github.com/alesapin)).
* 일부 독립 테스트를 gtest로 다시 작성했습니다. 테스트에서 불필요한 include를 제거했습니다. [#13073](https://github.com/ClickHouse/ClickHouse/pull/13073) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* TestFlows에서 `SELECT` 권한에 대한 RBAC 기능 테스트를 추가했습니다. [#13061](https://github.com/ClickHouse/ClickHouse/pull/13061) ([Ritaank Tiwari](https://github.com/ritaank)).
* 빠른 테스트 체크에서 일부 테스트를 다시 실행합니다. [#12992](https://github.com/ClickHouse/ClickHouse/pull/12992) ([alesapin](https://github.com/alesapin)).
* "rdkafka" 라이브러리의 MSan 오류를 수정했습니다. 이로써 [#12990](https://github.com/ClickHouse/ClickHouse/issues/12990) 문제가 해결되었습니다. `rdkafka`를 버전 1.5(master)로 업데이트했습니다. [#12991](https://github.com/ClickHouse/ClickHouse/pull/12991) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테스트가 AVX-512를 지원하는 서버에서 실행된 경우 `base64`의 UBSan 보고서를 수정했습니다. 이 변경으로 [#12318](https://github.com/ClickHouse/ClickHouse/issues/12318)이 해결됩니다. 작성자: @qoega. [#12441](https://github.com/ClickHouse/ClickHouse/pull/12441) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* HDFS 라이브러리의 UBSan 리포트 문제를 수정했습니다. 이로써 [#12330](https://github.com/ClickHouse/ClickHouse/issues/12330)이 해결됩니다. [#12453](https://github.com/ClickHouse/ClickHouse/pull/12453) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이전 버전의 백업을 새 버전에서 복원할 수 있는지 확인합니다. 이로써 [#8979](https://github.com/ClickHouse/ClickHouse/issues/8979)가 해결되었습니다. [#12959](https://github.com/ClickHouse/ClickHouse/pull/12959) ([alesapin](https://github.com/alesapin)).
* 통합 테스트에서는 helper\_container 이미지를 빌드하지 않습니다. Docker 컨테이너는 CI에서 빌드하고, 통합 테스트에서는 사전 구축된 helper\_container를 사용합니다. [#12953](https://github.com/ClickHouse/ClickHouse/pull/12953) ([Ilya Yatsishin](https://github.com/qoega)).
* 프라이머리 키 컬럼에 대한 `ALTER TABLE CLEAR COLUMN` 쿼리의 테스트를 추가했습니다. [#12951](https://github.com/ClickHouse/ClickHouse/pull/12951) ([alesapin](https://github.com/alesapin)).
* testflows 테스트의 timeout 시간을 늘렸습니다. [#12949](https://github.com/ClickHouse/ClickHouse/pull/12949) ([vzakaznikov](https://github.com/vzakaznikov)).
* Mac OS X에서 테스트 build를 수정했습니다. 이로써 [#12767](https://github.com/ClickHouse/ClickHouse/issues/12767)를 해결했습니다. [#12772](https://github.com/ClickHouse/ClickHouse/pull/12772) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Connector-ODBC가 mysql-connector-odbc-8.0.21로 갱신되었습니다. [#12739](https://github.com/ClickHouse/ClickHouse/pull/12739) ([Ilya Yatsishin](https://github.com/qoega)).
* TestFlows에 RBAC 구문 테스트를 추가했습니다. [#12642](https://github.com/ClickHouse/ClickHouse/pull/12642) ([vzakaznikov](https://github.com/vzakaznikov)).
* TestKeeper의 성능을 개선했습니다. 이에 따라 복제된 테이블(Replicated tables)을 많이 사용하는 테스트가 더 빨라집니다. [#12505](https://github.com/ClickHouse/ClickHouse/pull/12505) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 스트레스 테스트 실행 후에도 server가 시작되는지 확인합니다. 이를 통해 [#12473](https://github.com/ClickHouse/ClickHouse/issues/12473)를 수정했습니다. [#12496](https://github.com/ClickHouse/ClickHouse/pull/12496) ([alesapin](https://github.com/alesapin)).
* fmtlib를 master 브랜치(7.0.1)로 업데이트했습니다. [#12446](https://github.com/ClickHouse/ClickHouse/pull/12446) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 빠른 테스트용 Docker image를 추가했습니다. [#12294](https://github.com/ClickHouse/ClickHouse/pull/12294) ([alesapin](https://github.com/alesapin)).
* 통합 테스트용 구성 경로를 재정비했습니다. [#12285](https://github.com/ClickHouse/ClickHouse/pull/12285) ([Ilya Yatsishin](https://github.com/qoega)).
* 스택 프레임이 지나치게 커지지 않도록 제어하는 컴파일러 옵션을 추가했습니다. 이를 통해 스택 크기가 작은 파이버에서도 코드를 실행할 수 있습니다. [#11524](https://github.com/ClickHouse/ClickHouse/pull/11524) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* gitignore 파일을 업데이트했습니다. [#13447](https://github.com/ClickHouse/ClickHouse/pull/13447) ([vladimir-golovchenko](https://github.com/vladimir-golovchenko)).

<div id="clickhouse-release-206">
  ## ClickHouse 릴리스 20.6
</div>

<div id="clickhouse-release-v206328-stable">
  ### ClickHouse 릴리스 v20.6.3.28-안정
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 20.5보다 이전 버전에서 업그레이드할 때 롤링 업데이트를 수행하는 경우, 클러스터에 20.5 이상 버전과 20.5 미만 버전이 함께 존재하고 이전 버전의 ClickHouse 노드를 재시작한 뒤 더 최신 버전이 있는 상태에서 이전 버전이 시작되면 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 클러스터의 모든 노드에 새 clickhouse-server 패키지를 설치한 다음 재시작하십시오(즉, clickhouse-server를 재시작할 때 새 버전으로 시작되도록 하십시오).

<div id="new-feature-2">
  #### 새 기능
</div>

* `EXPLAIN` 쿼리의 초기 구현이 추가되었습니다. 구문: `EXPLAIN SELECT ...`. 이로써 [#1118](https://github.com/ClickHouse/ClickHouse/issues/1118) 문제가 수정되었습니다. [#11873](https://github.com/ClickHouse/ClickHouse/pull/11873) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `RabbitMQ` 스토리지가 추가되었습니다. [#11069](https://github.com/ClickHouse/ClickHouse/pull/11069) ([Kseniia Sumarokova](https://github.com/kssenii)).
* PostgreSQL과 유사한 `ILIKE` 연산자가 구현되었습니다. [#11710](https://github.com/ClickHouse/ClickHouse/issues/11710). [#12125](https://github.com/ClickHouse/ClickHouse/pull/12125) ([Mike](https://github.com/myrrc)).
* `SET join_algorithm = 'partial_merge'`에서 RIGHT 및 FULL JOIN을 지원합니다. ALL 엄격성만 허용되며, ANY, SEMI, ANTI, ASOF는 허용되지 않습니다. [#12118](https://github.com/ClickHouse/ClickHouse/pull/12118) ([Artem Zuikov](https://github.com/4ertus2)).
* 단일 값을 기반으로 집계를 초기화하는 함수 `initializeAggregation`이 추가되었습니다. [#12109](https://github.com/ClickHouse/ClickHouse/pull/12109) ([Guillaume Tassery](https://github.com/YiuRULE)).
* `ALTER TABLE ... [ADD|MODIFY] COLUMN ... FIRST`를 지원합니다. [#4006](https://github.com/ClickHouse/ClickHouse/issues/4006). [#12073](https://github.com/ClickHouse/ClickHouse/pull/12073) ([Winter Zhang](https://github.com/zhang2014)).
* 함수 `parseDateTimeBestEffortUS`가 추가되었습니다. [#12028](https://github.com/ClickHouse/ClickHouse/pull/12028) ([flynn](https://github.com/ucasFL)).
* 출력용 `ORC` 포맷도 지원합니다(이전에는 입력만 지원됨). [#11662](https://github.com/ClickHouse/ClickHouse/pull/11662) ([Kruglov Pavel](https://github.com/Avogar)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `SET optimize_move_functions_out_of_any = 1` 설정 및 `any()` 내부의 별칭과 관련해 발생하던 `aggregate function any(x) is found inside another aggregate function in query` 오류를 수정했습니다. [#13419](https://github.com/ClickHouse/ClickHouse/pull/13419) ([Artem Zuikov](https://github.com/4ertus2)).
* clickhouse-local의 `PrettyCompactMonoBlock`를 수정했습니다. `PrettyCompactMonoBlock`의 extremes/합계 관련 문제를 수정했습니다. 이 변경으로 [#7746](https://github.com/ClickHouse/ClickHouse/issues/7746)가 해결됩니다. [#13394](https://github.com/ClickHouse/ClickHouse/pull/13394) ([Azat Khuzhin](https://github.com/azat)).
* 지연된 레플리카에서 들어온 쿼리에서 발생할 수 있던 오류 `Totals having transform was already added to pipeline`를 수정했습니다. [#13290](https://github.com/ClickHouse/ClickHouse/pull/13290) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `h3ToChildren` 함수에 악의적으로 조작된 인수가 전달되면 server가 충돌할 수 있습니다. 이 변경으로 [#13275](https://github.com/ClickHouse/ClickHouse/issues/13275)가 수정되었습니다. [#13277](https://github.com/ClickHouse/ClickHouse/pull/13277) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* NaN 값이 포함된 Float 타입에 대해 호출된 `uniqExact`, `topK`, `sumDistinct` 및 유사한 집계 함수에서 발생할 수 있던 성능 저하와 다소 부정확한 결과 문제를 수정했습니다. 또한 디버그 빌드에서 assert가 트리거되던 문제도 수정했습니다. 이 수정은 [#12491](https://github.com/ClickHouse/ClickHouse/issues/12491)을 해결합니다. [#13254](https://github.com/ClickHouse/ClickHouse/pull/13254) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* cond로 리터럴 NULL이 아닌 널 허용 constexpr를 사용하는 if 함수 문제를 수정했습니다. [#12463](https://github.com/ClickHouse/ClickHouse/issues/12463)를 해결합니다. [#13226](https://github.com/ClickHouse/ClickHouse/pull/13226) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 배열 요소와 배열 첨자가 모두 널 허용인 경우 `arrayElement` 함수의 assert를 수정했습니다. 이로써 [#12172](https://github.com/ClickHouse/ClickHouse/issues/12172)가 해결됩니다. [#13224](https://github.com/ClickHouse/ClickHouse/pull/13224) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 상수 인수를 받는 `DateTime64` 변환 함수를 수정했습니다. [#13205](https://github.com/ClickHouse/ClickHouse/pull/13205) ([Azat Khuzhin](https://github.com/azat)).
* 함수 사용 시 잘못되던 인덱스 분석을 수정했습니다. 이 문제로 `MergeTree` 테이블에서 읽는 동안 잘못된 파트가 프루닝될 수 있었습니다. [#13060](https://github.com/ClickHouse/ClickHouse/issues/13060)을 수정합니다. [#12406](https://github.com/ClickHouse/ClickHouse/issues/12406)을 수정합니다. [#13081](https://github.com/ClickHouse/ClickHouse/pull/13081) ([Anton Popov](https://github.com/CurtizJ)).
* 쿼리 범위 내에서는 결정적이지만 쿼리 간에는 그렇지 않은 `now()`, `now64()`, `randConstant()` 같은 함수를 쿼리 범위에서 사용하는 원격 쿼리에서 발생하던 `Cannot convert column because it is constant but values of constants are different in source and result` 오류를 수정했습니다. [#11327](https://github.com/ClickHouse/ClickHouse/issues/11327)을 해결했습니다. [#13075](https://github.com/ClickHouse/ClickHouse/pull/13075) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 로컬 레플리카에서 수행되는 SELECT의 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. [#12840](https://github.com/ClickHouse/ClickHouse/pull/12840) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `ALTER DELETE`와 `ALTER MODIFY COLUMN` 쿼리가 단일 mutation으로 동시에 실행될 때 드물게 발생하던 버그를 수정했습니다. 이 버그로 인해 `count.txt`의 행 수가 잘못 기록되고, 그 결과 part 내 데이터도 잘못될 수 있었습니다. 또한 `ALTER RENAME COLUMN`과 `ALTER ADD COLUMN`이 동시에 실행될 때 발생하는 사소한 버그도 수정했습니다. [#12760](https://github.com/ClickHouse/ClickHouse/pull/12760) ([alesapin](https://github.com/alesapin)).
* `CAST(Nullable(String), Enum())` 문제를 수정했습니다. [#12745](https://github.com/ClickHouse/ClickHouse/pull/12745) ([Azat Khuzhin](https://github.com/azat)).
* `IN` 절에서 함수로 해석되는 큰 튜플로 인해 발생하던 성능 문제를 수정했습니다. 이는 드문 경우이지만, 사용자가 어떤 이유로 `WHERE x IN (1, 2, ...)` 대신 `WHERE x IN tuple(1, 2, ...)`를 작성할 때 발생합니다. [#12700](https://github.com/ClickHouse/ClickHouse/pull/12700) ([Anton Popov](https://github.com/CurtizJ)).
* `input_format_parallel_parsing`의 메모리 추적을 수정했습니다(스레드를 그룹에 연결하는 방식으로). [#12672](https://github.com/ClickHouse/ClickHouse/pull/12672) ([Azat Khuzhin](https://github.com/azat)).
* const 표현식이 포함된 블룸 필터 인덱스를 수정했습니다. 이로써 [#10572](https://github.com/ClickHouse/ClickHouse/issues/10572) 문제가 해결되었습니다. [#12659](https://github.com/ClickHouse/ClickHouse/pull/12659) ([Winter Zhang](https://github.com/zhang2014)).
* 브로커를 사용할 수 없을 때를 포함해 여러 경우에 `StorageKafka`에서 발생하던 `SIGSEGV`를 수정했습니다. [#12658](https://github.com/ClickHouse/ClickHouse/pull/12658) ([Azat Khuzhin](https://github.com/azat)).
* 함수 `if`에서 `Array(UUID)` 인수를 지원하도록 했습니다. 이로써 [#11066](https://github.com/ClickHouse/ClickHouse/issues/11066) 문제가 수정되었습니다. [#12648](https://github.com/ClickHouse/ClickHouse/pull/12648) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `CREATE USER IF NOT EXISTS`는 사용자가 이미 존재해도 이제 Exception을 발생시키지 않습니다. [#12507](https://github.com/ClickHouse/ClickHouse/issues/12507) 문제가 수정되었습니다. [#12646](https://github.com/ClickHouse/ClickHouse/pull/12646) ([Vitaly Baranov](https://github.com/vitlibar)).
* 디스크 액세스 스토리지의 예외 메시지를 개선했습니다. [#12625](https://github.com/ClickHouse/ClickHouse/pull/12625) ([alesapin](https://github.com/alesapin)).
* 함수 `groupArrayMoving*`는 분산 쿼리에서 작동하지 않았습니다. 결과가 잘못된 데이터 타입으로 계산되었으며(가장 큰 타입으로 승격되지 않음), 함수 `groupArrayMovingAvg`는 `avg` 함수와 일치하지 않는 정수를 반환했습니다. 이 변경으로 [#12568](https://github.com/ClickHouse/ClickHouse/issues/12568)가 수정되었습니다. [#12622](https://github.com/ClickHouse/ClickHouse/pull/12622) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 `any`의 별칭 누락 문제를 수정했습니다. [#12593](https://github.com/ClickHouse/ClickHouse/pull/12593) ([Anton Popov](https://github.com/CurtizJ)).
* 서버 충돌을 일으킬 수 있는 cache 레이아웃을 사용하는 외부 딕셔너리의 race condition을 수정했습니다. [#12566](https://github.com/ClickHouse/ClickHouse/pull/12566) ([alesapin](https://github.com/alesapin)).
* DROP TABLE 시 분산 테이블의 데이터(async INSERT로 생성된 블록)를 삭제합니다. [#12556](https://github.com/ClickHouse/ClickHouse/pull/12556) ([Azat Khuzhin](https://github.com/azat)).
* `enable_mixed_granularity_parts=1`일 때 `ALTER DELETE` 쿼리 후 기존 파트가 손상되던 버그를 수정했습니다. [#12536](https://github.com/ClickHouse/ClickHouse/issues/12536)을 해결했습니다. [#12543](https://github.com/ClickHouse/ClickHouse/pull/12543) ([alesapin](https://github.com/alesapin)).
* 인수 개수가 잘못된 함수 `in`에 대한 예외 메시지를 개선했습니다. [#12529](https://github.com/ClickHouse/ClickHouse/pull/12529) ([Anton Popov](https://github.com/CurtizJ)).
* 데이터 중복을 일으킬 수 있던 라이브 view 테이블에서의 race condition을 수정했습니다. [#12519](https://github.com/ClickHouse/ClickHouse/pull/12519) ([vzakaznikov](https://github.com/vzakaznikov)).
* compact 파트를 읽을 때 발생하던 성능 문제를 수정했습니다. [#12492](https://github.com/ClickHouse/ClickHouse/pull/12492) ([Anton Popov](https://github.com/CurtizJ)).
* `AggregateFunction(avg, ...)` 값의 바이너리 형식에서 이전 버전과의 호환성 문제를 수정했습니다. 이로써 [#12342](https://github.com/ClickHouse/ClickHouse/issues/12342)가 해결됩니다. [#12486](https://github.com/ClickHouse/ClickHouse/pull/12486) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* FORMAT 뒤의 SETTINGS 파싱 문제를 수정했습니다. [#12480](https://github.com/ClickHouse/ClickHouse/pull/12480) ([Azat Khuzhin](https://github.com/azat)).
* `text_log`이 활성화되어 있을 때 발생하던 교착 상태를 수정했습니다. [#12452](https://github.com/ClickHouse/ClickHouse/pull/12452) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 큰 `LIMIT` 또는 `OFFSET`을 지정했을 때 발생하는 오버플로우를 수정했습니다. 이 수정으로 [#10470](https://github.com/ClickHouse/ClickHouse/issues/10470) 문제가 해결되었습니다. 이 수정으로 [#11372](https://github.com/ClickHouse/ClickHouse/issues/11372) 문제가 해결되었습니다. [#12427](https://github.com/ClickHouse/ClickHouse/pull/12427) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `StorageMerge`에서 발생할 수 있는 segfault를 수정했습니다. 이로써 [#12054](https://github.com/ClickHouse/ClickHouse/issues/12054)가 해결되었습니다. [#12401](https://github.com/ClickHouse/ClickHouse/pull/12401) ([tavplubix](https://github.com/tavplubix)).
* [#12098](https://github.com/ClickHouse/ClickHouse/issues/12098)을 해결하기 위해 [#11079](https://github.com/ClickHouse/ClickHouse/issues/11079)에서 도입된 변경 사항을 되돌렸습니다. [#12397](https://github.com/ClickHouse/ClickHouse/pull/12397) ([Mike](https://github.com/myrrc)).
* 블룸 필터 인덱스 인수에 대한 추가 검증입니다. 이로써 [#11408](https://github.com/ClickHouse/ClickHouse/issues/11408)이 해결되었습니다. [#12388](https://github.com/ClickHouse/ClickHouse/pull/12388) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 인덱스가 설정된 테이블의 WHERE 조건에서 음수 또는 부동소수점 상수를 사용할 때 발생하던 예외를 방지했습니다. 이 수정은 [#11905](https://github.com/ClickHouse/ClickHouse/issues/11905)를 해결합니다. [#12384](https://github.com/ClickHouse/ClickHouse/pull/12384) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 해당 컬럼에 의존하는 `DEFAULT` 표현식이 있더라도 컬럼을 `CLEAR`할 수 있도록 했습니다. 이 변경으로 [#12333](https://github.com/ClickHouse/ClickHouse/issues/12333) 문제가 수정되었습니다. [#12378](https://github.com/ClickHouse/ClickHouse/pull/12378) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 인수가 `-State` 및 `Nullable`인 집계 함수에서 `TOTALS/ROLLUP/CUBE` 관련 문제를 수정했습니다. 이 수정으로 [#12163](https://github.com/ClickHouse/ClickHouse/issues/12163)가 해결되었습니다. [#12376](https://github.com/ClickHouse/ClickHouse/pull/12376) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `RENAME`이 허용되지 않는 경우 `ALTER RENAME COLUMN` 쿼리의 오류 메시지와 종료 코드를 수정했습니다. [#12301](https://github.com/ClickHouse/ClickHouse/issues/12301) 및 [#12303](https://github.com/ClickHouse/ClickHouse/issues/12303)을 수정했습니다. [#12335](https://github.com/ClickHouse/ClickHouse/pull/12335) ([alesapin](https://github.com/alesapin)).
* `ReplicatedMergeTreeQueue`에서 아주 드물게 발생하던 경쟁 상태를 수정했습니다. [#12315](https://github.com/ClickHouse/ClickHouse/pull/12315) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 고정 폭이 아닌 타입에 코덱 `Delta` 또는 `DoubleDelta`를 사용할 경우, 코드 `BAD_ARGUMENTS`의 예외 대신 코드 `LOGICAL_ERROR`의 예외가 반환되었습니다(코드가 logical error인 예외는 절대 발생하지 않도록 보장합니다). 이로써 [#12110](https://github.com/ClickHouse/ClickHouse/issues/12110)이 수정되었습니다. [#12308](https://github.com/ClickHouse/ClickHouse/pull/12308) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `WITH FILL` 수정자에서 컬럼 순서를 바로잡았습니다. 이전에는 `ORDER BY` 구문의 컬럼 순서가 반영되지 않았습니다. [#12306](https://github.com/ClickHouse/ClickHouse/pull/12306) ([Anton Popov](https://github.com/CurtizJ)).
* 가상 컬럼(`Merge` 테이블의 `_table` 등)이나 시스템 테이블에서 "index" 컬럼으로 데이터를 필터링하는 표현식(예: `system.tables`를 쿼리할 때 데이터베이스 이름으로 필터링하는 경우)이 `Nullable` 타입을 반환할 때 "bad cast" 예외가 발생하지 않도록 수정했습니다. 이로써 [#12166](https://github.com/ClickHouse/ClickHouse/issues/12166)이 수정되었습니다. [#12305](https://github.com/ClickHouse/ClickHouse/pull/12305) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `TTL` 표현식이 의존하는 컬럼의 이름을 변경한 후 `TTL`이 수정되었습니다. [#12304](https://github.com/ClickHouse/ClickHouse/pull/12304) ([Anton Popov](https://github.com/CurtizJ)).
* `Kafka` 엔진에서 배치 중간에 오류가 있는 메시지가 포함된 경우 발생하던 SIGSEGV를 수정했습니다. [#12302](https://github.com/ClickHouse/ClickHouse/pull/12302) ([Azat Khuzhin](https://github.com/azat)).
* `DNS` cache 업데이트 중 일부 스레드가 간헐적으로 몇 초간 멈추던 문제를 수정했습니다. [#12296](https://github.com/ClickHouse/ClickHouse/pull/12296) ([tavplubix](https://github.com/tavplubix)).
* 설정 이름의 오타를 바로잡았습니다. [#12292](https://github.com/ClickHouse/ClickHouse/pull/12292) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `TrieDictionary` 로드 실패 후 오류를 표시합니다. [#12290](https://github.com/ClickHouse/ClickHouse/pull/12290) ([Vitaly Baranov](https://github.com/vitlibar)).
* 함수 `arrayFill`이 빈 배열에서 잘못 동작해 크래시를 일으킬 수 있던 문제를 수정했습니다. 이 수정은 [#12263](https://github.com/ClickHouse/ClickHouse/issues/12263)를 해결합니다. [#12279](https://github.com/ClickHouse/ClickHouse/pull/12279) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCardinality` 타입에 대해 공통 타입으로 변환하도록 구현했습니다. 이제 LowCardinality 컬럼과 다른 컬럼이 있는 테이블에서도 UNION ALL을 실행할 수 있습니다. 이로써 [#8212](https://github.com/ClickHouse/ClickHouse/issues/8212)가 수정되었습니다. 이로써 [#4342](https://github.com/ClickHouse/ClickHouse/issues/4342)가 수정되었습니다. [#12275](https://github.com/ClickHouse/ClickHouse/pull/12275) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `S3` 스토리지 요청이 리디렉션 한도에 도달했을 때의 동작을 수정했습니다. [#12256](https://github.com/ClickHouse/ClickHouse/pull/12256) ([ianton-ru](https://github.com/ianton-ru)).
* `StorageFile`에서 여러 차례 연속으로 삽입하는 동안 일부 특수 타입의 헤더가 두 번 이상 기록되던 문제를 수정했습니다. 이로써 [#6155](https://github.com/ClickHouse/ClickHouse/issues/6155)가 해결되었습니다. [#12197](https://github.com/ClickHouse/ClickHouse/pull/12197) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 0 또는 1이 아닌 UInt8 값에서 논리 함수가 올바르게 동작하도록 수정했습니다. [#12196](https://github.com/ClickHouse/ClickHouse/pull/12196) ([Alexander Kazakov](https://github.com/Akazz)).
* max\_memory\_usage\*의 상한을 프로세스 상주 메모리로 제한합니다. [#12182](https://github.com/ClickHouse/ClickHouse/pull/12182) ([Azat Khuzhin](https://github.com/azat)).
* `GROUP BY`에서 단사 함수 제거 시 `dictGet` 인수 검사 문제를 수정했습니다. [#12179](https://github.com/ClickHouse/ClickHouse/pull/12179) ([Azat Khuzhin](https://github.com/azat)).
* `SummingMergeTree` 엔진이 파티션 키 컬럼을 합산할 때의 동작을 수정했습니다. 합산할 컬럼을 명시적으로 정의한 경우, 해당 컬럼이 파티션 키 컬럼과 겹치면 예외를 추가했습니다. 이 수정으로 [#7867](https://github.com/ClickHouse/ClickHouse/issues/7867)이 해결되었습니다. [#12173](https://github.com/ClickHouse/ClickHouse/pull/12173) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* ODBC 연결에서 스키마를 지원하지 않으면 딕셔너리 소스의 테이블 이름을 스키마와 테이블 이름으로 나누지 않습니다. [#12165](https://github.com/ClickHouse/ClickHouse/pull/12165) ([Vitaly Baranov](https://github.com/vitlibar)).
* 조건이 NULL로 평가될 때 레코드가 삭제되는 문제를 일으키던 `ALTER DELETE`의 잘못된 로직을 수정했습니다. 이 수정으로 [#9088](https://github.com/ClickHouse/ClickHouse/issues/9088)이 해결되었습니다. 이로써 [#12106](https://github.com/ClickHouse/ClickHouse/issues/12106)이 종료되었습니다. [#12153](https://github.com/ClickHouse/ClickHouse/pull/12153) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭이 있을 때 외부 DBMS(예: MySQL, ODBC)로 전송할 쿼리 변환이 올바르게 처리되도록 수정했습니다. 이로써 [#12032](https://github.com/ClickHouse/ClickHouse/issues/12032) 문제가 해결됩니다. [#12151](https://github.com/ClickHouse/ClickHouse/pull/12151) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 중복된 ORDER BY 최적화에서 잘못된 코드를 수정했습니다. 이 버그는 [#10067](https://github.com/ClickHouse/ClickHouse/issues/10067)에서 처음 도입되었습니다. [#12148](https://github.com/ClickHouse/ClickHouse/pull/12148) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 정수 나눗셈에서 발생할 수 있는 잠재적인 오버플로우를 수정했습니다. 이로써 [#12119](https://github.com/ClickHouse/ClickHouse/issues/12119) 문제가 해결되었습니다. [#12140](https://github.com/ClickHouse/ClickHouse/pull/12140) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `greatCircleDistance`, `geoDistance`에서 발생할 수 있는 무한 루프 문제를 수정했습니다. 이 수정으로 [#12117](https://github.com/ClickHouse/ClickHouse/issues/12117) 문제가 해결됩니다. [#12137](https://github.com/ClickHouse/ClickHouse/pull/12137) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* "pid" 파일 처리를 정상화했습니다. 이전 버전에서는 server가 정상적으로 종료되지 않은 상태에서 강제 종료되었고, 이전에 실행되었던 server와 동일한 pid를 가진 다른 프로세스가 있으면 server 시작이 거부될 수 있었습니다. 또한 server 시작에 실패한 경우에도 다른 server가 실행 중이면 pid 파일이 제거될 수 있었습니다. 이 변경으로 [#3501](https://github.com/ClickHouse/ClickHouse/issues/3501)이 수정되었습니다. [#12133](https://github.com/ClickHouse/ClickHouse/pull/12133) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* ZooKeepeer에서 ReplicatedVersionedCollapsingMergeTree 테이블의 메타데이터가 잘못 기록되는 버그를 수정했습니다. [#12093](https://github.com/ClickHouse/ClickHouse/issues/12093)를 해결합니다. [#12121](https://github.com/ClickHouse/ClickHouse/pull/12121) ([alesapin](https://github.com/alesapin)).
* 시스템 로그(system.query\_log, metric\_log 등) 또는 engine=Buffer 기반 테이블에 연결된, 조인 또는 서브쿼리가 있는 materialized view에서 "There is no query" 예외가 발생하지 않도록 했습니다. [#12120](https://github.com/ClickHouse/ClickHouse/pull/12120) ([filimonov](https://github.com/filimonov)).
* ENGINE=Dictionary인 테이블의 딕셔너리 종속성 처리 방식을 수정했습니다. 이 변경으로 [#10994](https://github.com/ClickHouse/ClickHouse/issues/10994)와 [#10397](https://github.com/ClickHouse/ClickHouse/issues/10397) 문제가 해결되었습니다. [#12116](https://github.com/ClickHouse/ClickHouse/pull/12116) ([Vitaly Baranov](https://github.com/vitlibar)).
* `Parquet` 포맷이 이제 `LowCardinality` 및 `LowCardinality(Nullable)` 타입에서 정상적으로 작동합니다. [#12086](https://github.com/ClickHouse/ClickHouse/issues/12086), [#8406](https://github.com/ClickHouse/ClickHouse/issues/8406)을 수정합니다. [#12108](https://github.com/ClickHouse/ClickHouse/pull/12108) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 전체 스레드 수 제한이 잘못 설정되어 `UNION`이 포함된 SELECT 쿼리의 성능이 저하되던 문제를 수정했습니다. [#12030](https://github.com/ClickHouse/ClickHouse/issues/12030)을 해결합니다. [#12103](https://github.com/ClickHouse/ClickHouse/pull/12103) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `-StateResample` combinator에서 발생하던 세그폴트를 수정했습니다. [#12092](https://github.com/ClickHouse/ClickHouse/pull/12092) ([Anton Popov](https://github.com/CurtizJ)).
* SELECT 쿼리에서 `system.quey_log`의 비어 있던 `result_rows` 및 `result_bytes` 메트릭 문제를 수정했습니다. [#11595](https://github.com/ClickHouse/ClickHouse/issues/11595)를 해결합니다. [#12089](https://github.com/ClickHouse/ClickHouse/pull/12089) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `VIEW`에서 SELECT를 수행할 때 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. [#11937](https://github.com/ClickHouse/ClickHouse/issues/11937). [#12085](https://github.com/ClickHouse/ClickHouse/pull/12085) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* DROP TABLE 시 StorageKafka에서 발생하던 SIGSEGV를 수정했습니다. [#12075](https://github.com/ClickHouse/ClickHouse/pull/12075) ([Azat Khuzhin](https://github.com/azat)).
* `PREWHERE`에 잘못된 유형을 사용했을 때 발생할 수 있는 크래시를 수정했습니다. [#12053](https://github.com/ClickHouse/ClickHouse/issues/12053), [#12060](https://github.com/ClickHouse/ClickHouse/issues/12060)을 수정합니다. [#12060](https://github.com/ClickHouse/ClickHouse/pull/12060) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Tuple(LowCardinality)` 인수가 있는 고차 함수에서 `Cannot capture column` 오류를 수정했습니다. [#9766](https://github.com/ClickHouse/ClickHouse/issues/9766)를 해결합니다. [#12055](https://github.com/ClickHouse/ClickHouse/pull/12055) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 제약 조건이 상수 표현식인지 확인하는 검사를 수정했습니다. 이로써 [#11360](https://github.com/ClickHouse/ClickHouse/issues/11360)이 해결되었습니다. [#12042](https://github.com/ClickHouse/ClickHouse/pull/12042) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 크기가 서로 다른 `FixedString` 유형의 인수로 함수 `if`를 호출할 때 잘못된 결과가 반환되거나 잠재적으로 충돌이 발생하던 문제를 수정했습니다. 이 수정으로 [#11362](https://github.com/ClickHouse/ClickHouse/issues/11362)가 해결됩니다. [#12021](https://github.com/ClickHouse/ClickHouse/pull/12021) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="improvement-6">
  #### 개선
</div>

* `JOIN` kind와 유형을 더 표준적인 방식으로 지정할 수 있게 했습니다. 이제 `SEMI LEFT JOIN` 대신 `LEFT SEMI JOIN`을 사용할 수 있습니다. 현재는 두 방식 모두 올바릅니다. [#12520](https://github.com/ClickHouse/ClickHouse/pull/12520) ([Artem Zuikov](https://github.com/4ertus2)).
* Buffer engine에 `lifetime_rows`/`lifetime_bytes`를 추가했습니다. [#12421](https://github.com/ClickHouse/ClickHouse/pull/12421) ([Azat Khuzhin](https://github.com/azat)).
* 'MySQL server has gone away' 대신 자세한 Exception 메시지를 클라이언트에 기록하도록 했습니다. [#12383](https://github.com/ClickHouse/ClickHouse/pull/12383) ([BohuTANG](https://github.com/BohuTANG)).
* 그리드 경계를 출력할 때 사용하는 문자 집합을 변경할 수 있게 했습니다. 사용할 수 있는 문자 집합은 UTF-8, ASCII입니다. `output_format_pretty_grid_charset` 설정으로 이 기능을 활성화할 수 있습니다. [#12372](https://github.com/ClickHouse/ClickHouse/pull/12372) ([Sabyanin Maxim](https://github.com/s-mx)).
* MySQL `SELECT DATABASE()`를 지원합니다. [#9336](https://github.com/ClickHouse/ClickHouse/issues/9336) 2. MySQL 대체 쿼리 통합 테스트를 추가했습니다. [#12314](https://github.com/ClickHouse/ClickHouse/pull/12314) ([BohuTANG](https://github.com/BohuTANG)).
* MySQL 클라이언트/driver에서 장시간 실행되는 쿼리를 취소할 수 있도록 `KILL QUERY [connection_id]`를 추가했습니다. 관련 이슈: [#12038](https://github.com/ClickHouse/ClickHouse/issues/12038). [#12152](https://github.com/ClickHouse/ClickHouse/pull/12152) ([BohuTANG](https://github.com/BohuTANG)).
* `formatDateTime` 함수에 `%g`(2자리 ISO 연도) 및 `%G`(4자리 ISO 연도) substitutions 지원을 추가했습니다. [#12136](https://github.com/ClickHouse/ClickHouse/pull/12136) ([vivarum](https://github.com/vivarum)).
* system.disks에 'type' 컬럼을 추가했습니다. [#12115](https://github.com/ClickHouse/ClickHouse/pull/12115) ([ianton-ru](https://github.com/ianton-ru)).
* `REVOKE` 명령을 개선했습니다. 이제 취소할 접근 권한에 대해서만 grant/admin 옵션이 필요합니다. 예를 들어, 이제 `REVOKE ALL ON *.* FROM user1`을 실행할 때 grant 옵션으로 부여된 전체 접근 권한이 없어도 됩니다. `REVOKE ALL FROM user1` 명령도 추가했습니다. 이 명령은 `user1`에 부여된 모든 역할을 취소합니다. [#12083](https://github.com/ClickHouse/ClickHouse/pull/12083) ([Vitaly Baranov](https://github.com/vitlibar)).
* load\_balancing에 레플리카 우선순위를 추가했습니다(로드 밸런싱 우선순위를 수동으로 지정하기 위함). [#11995](https://github.com/ClickHouse/ClickHouse/pull/11995) ([Azat Khuzhin](https://github.com/azat)).
* S3 메타데이터의 경로를 상대 경로로 변경하여 S3 blob을 더 쉽게 처리할 수 있게 했습니다. [#11892](https://github.com/ClickHouse/ClickHouse/pull/11892) ([Vladimir Chebotarev](https://github.com/excitoon)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 정렬 키의 접두사를 사용하는 'ORDER BY' 및 'GROUP BY'의 성능을 개선했습니다(`optimize_aggregation_in_order` 설정으로 활성화되며, 기본값은 비활성화입니다). [#11696](https://github.com/ClickHouse/ClickHouse/pull/11696) ([Anton Popov](https://github.com/CurtizJ)).
* `set optimize_injective_functions_inside_uniq=1` 설정 시 `uniq*()` 내부의 단사 함수를 제거합니다. [#12337](https://github.com/ClickHouse/ClickHouse/pull/12337) ([Ruslan Kamalov](https://github.com/kamalov-ruslan)).
* 리터럴을 사용하는 IN 연산자에서 인덱스가 사용되지 않아 발생하던, v19.3 무렵 도입된 성능 회귀를 수정했습니다. 이로써 [#10574](https://github.com/ClickHouse/ClickHouse/issues/10574)가 해결됩니다. [#12062](https://github.com/ClickHouse/ClickHouse/pull/12062) ([nvartolomei](https://github.com/nvartolomei)).
* DiskS3에 대한 단일 파트 업로드를 구현했습니다(실험적 기능). [#12026](https://github.com/ClickHouse/ClickHouse/pull/12026) ([Vladimir Chebotarev](https://github.com/excitoon)).

<div id="experimental-feature">
  #### 실험적 기능
</div>

* `MergeTree` 계열 테이블에 메모리에 데이터를 저장하는 새로운 인메모리 파트 포맷이 추가되었습니다. 파트는 첫 번째 머지 시점에 디스크에 기록됩니다. 파트의 행 수 또는 바이트 크기가 임계값 `min_rows_for_compact_part` 및 `min_bytes_for_compact_part`보다 작으면 인메모리 포맷으로 생성됩니다. 또한 Write-Ahead-Log에 대한 선택적 지원도 제공되며, 이는 기본적으로 활성화되어 있고 `in_memory_parts_enable_wal` 설정으로 제어됩니다. [#10697](https://github.com/ClickHouse/ClickHouse/pull/10697) ([Anton Popov](https://github.com/CurtizJ)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* `clickhouse-client`용 AST 기반 쿼리 퍼징 모드를 구현했습니다. 퍼징으로 최근 발견한 이슈 목록은 [이 레이블](https://github.com/ClickHouse/ClickHouse/issues?q=label%3Afuzz+is%3Aissue)을 참조하십시오. 대부분은 이 도구로 발견되었고, 일부는 SQLancer와 `00746_sql_fuzzy.pl`로 발견되었습니다. [#12111](https://github.com/ClickHouse/ClickHouse/pull/12111) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* Testflows 프레임워크를 기반으로 하는 새로운 유형의 테스트를 추가했습니다. [#12090](https://github.com/ClickHouse/ClickHouse/pull/12090) ([vzakaznikov](https://github.com/vzakaznikov)).
* S3 HTTPS 통합 테스트를 추가했습니다. [#12412](https://github.com/ClickHouse/ClickHouse/pull/12412) ([Pavel Kovalenko](https://github.com/Jokser)).
* 별도 스레드에서 새니타이저 트랩 메시지를 기록합니다. 이를 통해 Thread sanitizer에서 발생할 수 있는 데드락을 방지할 수 있습니다. [#12313](https://github.com/ClickHouse/ClickHouse/pull/12313) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 기능 테스트와 스트레스 테스트를 이전 버전의 `clickhouse-test` 스크립트로 실행할 수 있습니다. [#12287](https://github.com/ClickHouse/ClickHouse/pull/12287) ([alesapin](https://github.com/alesapin)).
* `orc` 빌드 중 생성되던 이상한 파일을 제거했습니다. [#12258](https://github.com/ClickHouse/ClickHouse/pull/12258) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 공통 docker compose 파일을 통합 docker 컨테이너에 배치했습니다. [#12168](https://github.com/ClickHouse/ClickHouse/pull/12168) ([Ilya Yatsishin](https://github.com/qoega)).
* CodeQL 경고를 수정했습니다. `CodeQL`은 이미 사용 중인 `clang-tidy`, `PVS-Studio`와 함께 사용할 또 다른 정적 분석기입니다. [#12138](https://github.com/ClickHouse/ClickHouse/pull/12138) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* UNBUNDLED 빌드를 위한 사소한 CMake 수정을 적용했습니다. [#12131](https://github.com/ClickHouse/ClickHouse/pull/12131) ([Matwey V. Kornilov](https://github.com/matwey)).
* Linux 배포판을 전혀 사용하지 않는 최소 Docker 이미지 예제를 추가했습니다. [#12126](https://github.com/ClickHouse/ClickHouse/pull/12126) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `clickhouse-server` Docker 이미지의 시스템 패키지를 업그레이드했습니다. [#12124](https://github.com/ClickHouse/ClickHouse/pull/12124) ([Ivan Blinkov](https://github.com/blinkov)).
* `system.build_options` 테이블에 `UNBUNDLED` 플래그를 추가했습니다. `clickhouse-test`의 skip list를 clickhouse 저장소로 옮겼습니다. [#12107](https://github.com/ClickHouse/ClickHouse/pull/12107) ([alesapin](https://github.com/alesapin)).
* `clickhouse-server` Docker 이미지에서 [CVE](https://cve.mitre.org/)를 탐지하는 [Anchore Container Analysis](https://docs.anchore.com) 보안 분석 도구의 정기 check를 추가했습니다. 또한 `Dockerfile`이 빌드 가능한지도 확인합니다. `master`와 `Dockerfile`에 대한 pull request에서 매일 실행됩니다. [#12102](https://github.com/ClickHouse/ClickHouse/pull/12102) ([Ivan Blinkov](https://github.com/blinkov)).
* [CWE](https://cwe.mitre.org/)를 탐지하는 [GitHub CodeQL](https://securitylab.github.com/tools/codeql) 보안 분석 도구의 일일 check를 추가했습니다. [#12101](https://github.com/ClickHouse/ClickHouse/pull/12101) ([Ivan Blinkov](https://github.com/blinkov)).
* Dockerfile에서 첫 번째 `apt-get update`를 실행하기 전에 `ca-certificates`를 설치하도록 했습니다. [#12095](https://github.com/ClickHouse/ClickHouse/pull/12095) ([Ivan Blinkov](https://github.com/blinkov)).

<div id="clickhouse-release-205">
  ## ClickHouse 20.5 릴리스
</div>

<div id="clickhouse-release-v205440-stable-2020-08-10">
  ### ClickHouse 릴리스 v20.5.4.40-안정 2020-08-10
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 함수 사용 시 잘못되었던 인덱스 분석을 수정했습니다. 이 문제로 인해 `MergeTree` 테이블을 읽는 동안 잘못된 파트가 프루닝될 수 있었습니다. [#13060](https://github.com/ClickHouse/ClickHouse/issues/13060)을 수정했습니다. [#12406](https://github.com/ClickHouse/ClickHouse/issues/12406)을 수정했습니다. [#13081](https://github.com/ClickHouse/ClickHouse/pull/13081) ([Anton Popov](https://github.com/CurtizJ)).
* 로컬 레플리카에서 SELECT를 수행할 때 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. [#12840](https://github.com/ClickHouse/ClickHouse/pull/12840) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `IN` 절에서 함수로 해석되는 큰 튜플의 성능을 개선했습니다. 이는 어떤 이유에서인지 사용자가 `WHERE x IN (1, 2, ...)` 대신 `WHERE x IN tuple(1, 2, ...)`를 작성하는 경우입니다. [#12700](https://github.com/ClickHouse/ClickHouse/pull/12700) ([Anton Popov](https://github.com/CurtizJ)).
* 스레드를 그룹에 연결하여 input\_format\_parallel\_parsing의 메모리 추적 문제를 수정했습니다. [#12672](https://github.com/ClickHouse/ClickHouse/pull/12672) ([Azat Khuzhin](https://github.com/azat)).
* const 표현식이 포함된 블룸 필터 인덱스를 수정했습니다. 이로써 [#10572](https://github.com/ClickHouse/ClickHouse/issues/10572)가 해결되었습니다. [#12659](https://github.com/ClickHouse/ClickHouse/pull/12659) ([Winter Zhang](https://github.com/zhang2014)).
* 브로커를 사용할 수 없는 경우를 포함해, 그 밖의 상황에서도 `StorageKafka`에서 발생하던 `SIGSEGV`를 수정했습니다. [#12658](https://github.com/ClickHouse/ClickHouse/pull/12658) ([Azat Khuzhin](https://github.com/azat)).
* `Array(UUID)` 인수를 받는 함수 `if` 지원이 추가되었습니다. 이로써 [#11066](https://github.com/ClickHouse/ClickHouse/issues/11066) 문제가 수정되었습니다. [#12648](https://github.com/ClickHouse/ClickHouse/pull/12648) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 `any`에 별칭이 없던 문제를 해결했습니다. [#12593](https://github.com/ClickHouse/ClickHouse/pull/12593) ([Anton Popov](https://github.com/CurtizJ)).
* 서버 충돌로 이어질 수 있는 `cache` 레이아웃의 외부 딕셔너리 경쟁 상태 문제를 수정했습니다. [#12566](https://github.com/ClickHouse/ClickHouse/pull/12566) ([alesapin](https://github.com/alesapin)).
* DROP TABLE 시 분산 테이블용 데이터(async INSERT의 블록)를 삭제합니다. [#12556](https://github.com/ClickHouse/ClickHouse/pull/12556) ([Azat Khuzhin](https://github.com/azat)).
* `enable_mixed_granularity_parts=1`일 때 `ALTER DELETE` 쿼리 이후 기존 파트가 손상되는 버그를 수정했습니다. [#12536](https://github.com/ClickHouse/ClickHouse/issues/12536)을 해결합니다. [#12543](https://github.com/ClickHouse/ClickHouse/pull/12543) ([alesapin](https://github.com/alesapin)).
* 인수 개수가 잘못된 함수 `in`에 대해 더 나은 예외 메시지를 제공합니다. [#12529](https://github.com/ClickHouse/ClickHouse/pull/12529) ([Anton Popov](https://github.com/CurtizJ)).
* 데이터 중복을 일으킬 수 있던 라이브 view 테이블의 race condition을 수정했습니다. [#12519](https://github.com/ClickHouse/ClickHouse/pull/12519) ([vzakaznikov](https://github.com/vzakaznikov)).
* compact 파트를 읽을 때 발생하던 성능 문제를 수정했습니다. [#12492](https://github.com/ClickHouse/ClickHouse/pull/12492) ([Anton Popov](https://github.com/CurtizJ)).
* `AggregateFunction(avg, ...)` 값의 바이너리 형식에서 이전 버전과의 호환성 문제가 수정되었습니다. 이로써 [#12342](https://github.com/ClickHouse/ClickHouse/issues/12342)가 해결되었습니다. [#12486](https://github.com/ClickHouse/ClickHouse/pull/12486) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `text_log`가 활성화된 경우 발생하던 교착 상태를 해결했습니다. [#12452](https://github.com/ClickHouse/ClickHouse/pull/12452) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 매우 큰 LIMIT 또는 OFFSET을 지정했을 때 발생하는 오버플로우를 수정했습니다. 이에 따라 [#10470](https://github.com/ClickHouse/ClickHouse/issues/10470)이 해결되었습니다. 이에 따라 [#11372](https://github.com/ClickHouse/ClickHouse/issues/11372)이 해결되었습니다. [#12427](https://github.com/ClickHouse/ClickHouse/pull/12427) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* StorageMerge에서 발생할 수 있던 세그폴트 문제를 수정했습니다. [#12054](https://github.com/ClickHouse/ClickHouse/issues/12054)를 해결합니다. [#12401](https://github.com/ClickHouse/ClickHouse/pull/12401) ([tavplubix](https://github.com/tavplubix)).
* [#12098](https://github.com/ClickHouse/ClickHouse/issues/12098)를 해결하기 위해 [#11079](https://github.com/ClickHouse/ClickHouse/issues/11079)에서 도입된 변경 사항을 되돌립니다. [#12397](https://github.com/ClickHouse/ClickHouse/pull/12397) ([Mike](https://github.com/myrrc)).
* 인덱스가 있는 테이블의 WHERE 조건에서 음수 또는 부동소수점 상수를 사용할 때 예외가 발생하는 문제를 방지했습니다. 이로써 [#11905](https://github.com/ClickHouse/ClickHouse/issues/11905)가 수정되었습니다. [#12384](https://github.com/ClickHouse/ClickHouse/pull/12384) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 종속된 DEFAULT 표현식이 있더라도 컬럼을 CLEAR할 수 있도록 합니다. 이로써 [#12333](https://github.com/ClickHouse/ClickHouse/issues/12333) 문제가 수정되었습니다. [#12378](https://github.com/ClickHouse/ClickHouse/pull/12378) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `-State` 및 `Nullable` 인수가 있는 집계 함수에서 TOTALS/ROLLUP/CUBE 관련 문제를 수정했습니다. 이 수정으로 [#12163](https://github.com/ClickHouse/ClickHouse/issues/12163) 문제가 해결되었습니다. [#12376](https://github.com/ClickHouse/ClickHouse/pull/12376) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Kafka` Engine에서 배치 중간에 오류가 포함된 메시지가 있을 때 발생하던 SIGSEGV를 수정했습니다. [#12302](https://github.com/ClickHouse/ClickHouse/pull/12302) ([Azat Khuzhin](https://github.com/azat)).
* `SummingMergeTree` engine가 파티션 키 컬럼을 합산할 때의 동작을 수정했습니다. 합산할 컬럼을 명시적으로 정의한 경우, 해당 컬럼이 파티션 키 컬럼과 겹치면 Exception이 발생하도록 추가했습니다. 이 수정으로 [#7867](https://github.com/ClickHouse/ClickHouse/issues/7867)이 해결되었습니다. [#12173](https://github.com/ClickHouse/ClickHouse/pull/12173) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 별칭이 있을 때 외부 DBMS(예: MySQL, ODBC)로 전송하는 쿼리 변환을 수정했습니다. 이 수정으로 [#12032](https://github.com/ClickHouse/ClickHouse/issues/12032)가 해결되었습니다. [#12151](https://github.com/ClickHouse/ClickHouse/pull/12151) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* ReplicatedVersionedCollapsingMergeTree 테이블에서 ZooKeeper에 잘못된 테이블 메타데이터가 기록되던 버그를 수정했습니다. 이 수정으로 [#12093](https://github.com/ClickHouse/ClickHouse/issues/12093)가 해결되었습니다. [#12121](https://github.com/ClickHouse/ClickHouse/pull/12121) ([alesapin](https://github.com/alesapin)).
* `VIEW`에서 select를 수행할 때 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. 이로써 [#11937](https://github.com/ClickHouse/ClickHouse/issues/11937)가 해결되었습니다. [#12085](https://github.com/ClickHouse/ClickHouse/pull/12085) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `join_algorithm=partial_merge`를 사용할 때 LowCardinality 유형의 JOIN에서 발생하던 충돌을 수정했습니다. [#12035](https://github.com/ClickHouse/ClickHouse/pull/12035) ([Artem Zuikov](https://github.com/4ertus2)).
* 조건에 NULL이 있을 때 `if()`가 잘못된 결과를 반환하는 문제를 수정했습니다. [#11807](https://github.com/ClickHouse/ClickHouse/pull/11807) ([Artem Zuikov](https://github.com/4ertus2)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 리터럴이 포함된 IN 연산자에서 인덱스가 사용되지 않아, v19.3 전후에 도입된 성능 회귀를 수정했습니다. 이 변경으로 [#10574](https://github.com/ClickHouse/ClickHouse/issues/10574)가 해결되었습니다. [#12062](https://github.com/ClickHouse/ClickHouse/pull/12062) ([nvartolomei](https://github.com/nvartolomei)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* Dockerfile에서 첫 번째 `apt-get update`를 실행하기 전에 `ca-certificates`를 설치하도록 개선했습니다. [#12095](https://github.com/ClickHouse/ClickHouse/pull/12095) ([Ivan Blinkov](https://github.com/blinkov)).

<div id="clickhouse-release-v20527-stable-2020-07-02">
  ### ClickHouse 릴리스 v20.5.2.7-안정 2020-07-02
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* COUNT(DISTINCT) 및 `uniq` 집계 함수 계열은 이제 `널 허용`이 아닌 결과를 반환합니다. 전달된 값이 모두 NULL이면 대신 0을 반환합니다. 이로써 SQL 호환성이 향상됩니다. [#11661](https://github.com/ClickHouse/ClickHouse/pull/11661) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 사용자 수준 설정이 잘못된 위치에 지정된 경우를 검사하는 기능이 추가되었습니다. 사용자 수준 설정은 특정 사용자 프로필의 `<profile>` 섹션 안에 있는 `users.xml`에 지정해야 하며(기본 설정은 `<default>`에 지정), 그렇지 않으면 서버가 로그에 예외 메시지를 남기고 시작되지 않습니다. 이는 [#9051](https://github.com/ClickHouse/ClickHouse/issues/9051)을 수정합니다. 이 검사를 건너뛰려면 설정을 올바른 위치로 옮기거나 `config.xml`에 `<skip_check_for_incorrect_settings>1</skip_check_for_incorrect_settings>`를 추가할 수 있습니다. [#11449](https://github.com/ClickHouse/ClickHouse/pull/11449) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `input_format_with_names_use_header` 설정이 기본적으로 활성화됩니다. 이에 따라 입력 형식 `-WithNames` 및 `-WithNamesAndTypes`의 파싱에 영향을 줍니다. [#10937](https://github.com/ClickHouse/ClickHouse/pull/10937) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `experimental_use_processors` 설정이 제거되었습니다. 이제 기본적으로 활성화됩니다. [#10924](https://github.com/ClickHouse/ClickHouse/pull/10924) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `zstd`가 1.4.4로 업데이트되었습니다. 성능과 압축률이 소폭 개선되었습니다. 서로 다른 버전의 ClickHouse에서 레플리카를 실행하는 경우 `Data after merge is not byte-identical to data on another replicas.`라는 오류 메시지와 함께 설명이 표시될 수 있습니다. 이러한 메시지는 정상 동작이므로 걱정하지 않으셔도 됩니다. 이 변경은 하위 호환되지만, 이러한 메시지가 왜 나타나는지 궁금할 수 있으므로 changelog에 여기에 함께 기재합니다. [#10663](https://github.com/ClickHouse/ClickHouse/pull/10663) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 의미 없는 코덱을 검사하는 기능과, 이 검사를 제어하는 `allow_suspicious_codecs` 설정이 추가되었습니다. 이로써 [#4966](https://github.com/ClickHouse/ClickHouse/issues/4966)이 해결되었습니다. [#10645](https://github.com/ClickHouse/ClickHouse/pull/10645) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 여러 Kafka 설정의 기본값이 변경되었습니다. [#11388](https://github.com/ClickHouse/ClickHouse/pull/11388)을 참조하십시오.
* 20.5보다 오래된 버전에서 업그레이드할 때 롤링 업데이트를 수행하고, cluster에 20.5 이상 버전과 20.5 미만 버전이 함께 포함되어 있는 상태에서 이전 버전의 ClickHouse 노드를 재시작하면, 새 버전 노드가 존재하는 상황에서 이전 버전 노드가 시작되면서 `Part ... intersects previous part` 오류가 발생할 수 있습니다. 이 오류를 방지하려면 먼저 모든 cluster 노드에 새 `clickhouse-server` 패키지를 설치한 다음 재시작하십시오(즉, `clickhouse-server`가 재시작될 때 새 버전으로 시작되도록 하십시오).

<div id="new-feature">
  #### 새로운 기능
</div>

* 테이블에서 데이터 세분성을 자동으로 낮추고 롤업하기 위한 `TTL DELETE WHERE` 및 `TTL GROUP BY`. [#10537](https://github.com/ClickHouse/ClickHouse/pull/10537) ([expl0si0nn](https://github.com/expl0si0nn)).
* PostgreSQL wire 프로토콜을 구현했습니다. [#10242](https://github.com/ClickHouse/ClickHouse/pull/10242) ([Movses](https://github.com/MovElb)).
* 사용자, 역할, 권한 부여, 설정 프로필, 쿼터, 행 정책용 시스템 테이블이 추가되었으며, SHOW USER, SHOW \[CURRENT|ENABLED] ROLES, SHOW SETTINGS PROFILES 명령도 추가되었습니다. [#10387](https://github.com/ClickHouse/ClickHouse/pull/10387) ([Vitaly Baranov](https://github.com/vitlibar)).
* ODBC 테이블 함수에 대한 쓰기를 지원합니다 [#10554](https://github.com/ClickHouse/ClickHouse/pull/10554) ([ageraab](https://github.com/ageraab)). [#10901](https://github.com/ClickHouse/ClickHouse/pull/10901) ([tavplubix](https://github.com/tavplubix)).
* Linux `perf_events` 기반의 쿼리 성능 메트릭을 추가했습니다(이 메트릭은 하드웨어 CPU 카운터와 OS 카운터를 사용해 계산됩니다). 이 기능은 선택 사항이며, clickhouse 바이너리에 `CAP_SYS_ADMIN`이 설정되어 있어야 합니다. [#9545](https://github.com/ClickHouse/ClickHouse/pull/9545) [Andrey Skobtsov](https://github.com/And42). [#11226](https://github.com/ClickHouse/ClickHouse/pull/11226) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 이제 `CREATE` 쿼리에서 데이터 타입에 `NULL` 및 `NOT NULL` 수정자를 사용할 수 있습니다. [#11057](https://github.com/ClickHouse/ClickHouse/pull/11057) ([Павел Потемкин](https://github.com/Potya)).
* `ArrowStream` 입력 포맷과 출력 포맷이 추가되었습니다. [#11088](https://github.com/ClickHouse/ClickHouse/pull/11088) ([hcz](https://github.com/hczhcz)).
* Cassandra를 외부 딕셔너리 소스로 사용할 수 있도록 지원합니다. [#4978](https://github.com/ClickHouse/ClickHouse/pull/4978) ([favstovol](https://github.com/favstovol)).
* 데이터를 저장하거나 캐싱하지 않고, 각 쿼리마다 소스에서 모든 데이터를 직접 로드하는 새 레이아웃 `direct`가 추가되었습니다. [#10622](https://github.com/ClickHouse/ClickHouse/pull/10622) ([Artem Streltsov](https://github.com/kekekekule)).
* 쿼리 실행 중에는 로컬에 아무것도 저장하지 않는 새로운 `complex_key_direct` layout이 딕셔너리에 추가되었습니다. [#10850](https://github.com/ClickHouse/ClickHouse/pull/10850) ([Artem Streltsov](https://github.com/kekekekule)).
* MySQL 스타일의 전역 변수 구문(stub) 지원이 추가되었습니다. 이는 MySQL 프로토콜과의 호환성을 위해 필요합니다. [#11832](https://github.com/ClickHouse/ClickHouse/pull/11832) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `replxx`를 사용하여 `clickhouse-client`에 구문 강조 기능을 추가했습니다. [#11422](https://github.com/ClickHouse/ClickHouse/pull/11422) ([Tagir Kuskarov](https://github.com/kuskarov)).
* `minMap` 및 `maxMap` 함수가 추가되었습니다. [#11603](https://github.com/ClickHouse/ClickHouse/pull/11603) ([Ildus Kurbangaliev](https://github.com/ildus)).
* `system.asynchronous_metrics`의 과거 메트릭을 기록하는 `system.asynchronous_metric_log` 테이블을 추가했습니다. [#11588](https://github.com/ClickHouse/ClickHouse/pull/11588) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* `extractAllGroupsHorizontal(haystack, re)` 및 `extractAllGroupsVertical(haystack, re)` 함수를 추가했습니다. [#11554](https://github.com/ClickHouse/ClickHouse/pull/11554) ([Vasily Nemkov](https://github.com/Enmk)).
* SHOW CLUSTER(S) 쿼리 지원을 추가했습니다. [#11467](https://github.com/ClickHouse/ClickHouse/pull/11467) ([hexiaoting](https://github.com/hexiaoting)).
* 네트워크 위치를 추출하는 `netloc` 함수를 추가했습니다. Python의 `urlparse(url)`에 있는 `netloc`와 유사합니다. [#11356](https://github.com/ClickHouse/ClickHouse/pull/11356) ([Guillaume Tassery](https://github.com/YiuRULE)).
* 메시지 헤더에 접근할 수 있도록 engine=Kafka에 가상 컬럼 2개를 추가로 추가했습니다. [#11283](https://github.com/ClickHouse/ClickHouse/pull/11283) ([filimonov](https://github.com/filimonov)).
* Kafka engine에 `_timestamp_ms` 가상 컬럼이 추가되었습니다(유형은 `Nullable(DateTime64(3))`). [#11260](https://github.com/ClickHouse/ClickHouse/pull/11260) ([filimonov](https://github.com/filimonov)).
* 함수 `randomFixedString`이 추가되었습니다. [#10866](https://github.com/ClickHouse/ClickHouse/pull/10866) ([Andrei Nekrashevich](https://github.com/xolm)).
* 주어진 확률로 문자열 내 비트를 무작위로 뒤집는 함수 `fuzzBits`를 추가했습니다. [#11237](https://github.com/ClickHouse/ClickHouse/pull/11237) ([Andrei Nekrashevich](https://github.com/xolm)).
* 비교 연산자, IN 및 VALUES 절에서 숫자와 상수 문자열을 비교할 수 있습니다. [#11647](https://github.com/ClickHouse/ClickHouse/pull/11647) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `round_robin` load\_balancing 모드를 추가하였습니다. [#11645](https://github.com/ClickHouse/ClickHouse/pull/11645) ([Azat Khuzhin](https://github.com/azat)).
* `cast_keep_nullable` 설정을 추가했습니다. 이 설정을 활성화하면 `CAST(something_nullable AS Type)`이 `Nullable(Type)`을 반환합니다. [#11733](https://github.com/ClickHouse/ClickHouse/pull/11733) ([Artem Zuikov](https://github.com/4ertus2)).
* `system.columns` 테이블에 `position` 컬럼이, `system.parts_columns` 테이블에 `column_position` 컬럼이 추가되었습니다. 이 컬럼에는 테이블 내 컬럼의 순서 위치가 1부터 시작하는 값으로 저장됩니다. 이로써 [#7744](https://github.com/ClickHouse/ClickHouse/issues/7744)가 해결되었습니다. [#11655](https://github.com/ClickHouse/ClickHouse/pull/11655) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SYSTEM `{FLUSH DISTRIBUTED,STOP/START DISTRIBUTED SEND}`의 ON CLUSTER 지원. [#11415](https://github.com/ClickHouse/ClickHouse/pull/11415) ([Azat Khuzhin](https://github.com/azat)).
* system.distribution\_queue 테이블이 추가되었습니다. [#11394](https://github.com/ClickHouse/ClickHouse/pull/11394) ([Azat Khuzhin](https://github.com/azat)).
* Kafka에서 모든 포맷 설정을 지원하고, 일부 설정은 테이블 수준에서 노출하며, 더 나은 성능을 위해 기본값을 조정했습니다. [#11388](https://github.com/ClickHouse/ClickHouse/pull/11388) ([filimonov](https://github.com/filimonov)).
* `port` 함수를 추가했습니다(URL에서 포트를 추출). [#11120](https://github.com/ClickHouse/ClickHouse/pull/11120) ([Azat Khuzhin](https://github.com/azat)).
* 이제 `dictGet*` 함수에서 테이블 이름도 사용할 수 있습니다. [#11050](https://github.com/ClickHouse/ClickHouse/pull/11050) ([Vitaly Baranov](https://github.com/vitlibar)).
* `-n` 인수를 사용하면 이제 `clickhouse-format` 도구에서 여러 쿼리를 포맷할 수 있습니다. [#10852](https://github.com/ClickHouse/ClickHouse/pull/10852) ([Darío](https://github.com/dgrr)).
* DiskS3용 프록시 리졸버를 구성할 수 있게 되었습니다. [#10744](https://github.com/ClickHouse/ClickHouse/pull/10744) ([Pavel Kovalenko](https://github.com/Jokser)).
* `pointInPolygon`이 상수가 아닌 다각형에서도 작동하도록 개선했습니다. 이제 PointInPolygon은 두 번째 인수로 다각형과 홀의 배열인 Array(Array(Tuple(..., ...)))을 받을 수 있습니다. [#10623](https://github.com/ClickHouse/ClickHouse/pull/10623) ([Alexey Ilyukhov](https://github.com/livace)) [#11421](https://github.com/ClickHouse/ClickHouse/pull/11421) ([Alexey Ilyukhov](https://github.com/livace)).
* `system.parts`에 `move_ttl_info`를 추가하여 move TTL 기능에 대한 내부 검사를 제공합니다. [#10591](https://github.com/ClickHouse/ClickHouse/pull/10591) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 프록시를 통해 S3를 사용할 수 있게 되었습니다. [#10576](https://github.com/ClickHouse/ClickHouse/pull/10576) ([Pavel Kovalenko](https://github.com/Jokser)).
* 데이터 타입의 `NCHAR` 및 `NVARCHAR` 동의어를 추가했습니다. [#11025](https://github.com/ClickHouse/ClickHouse/pull/11025) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* [#7224](https://github.com/ClickHouse/ClickHouse/issues/7224)를 해결했습니다. `system.events` 테이블에 `FailedQuery`, `FailedSelectQuery`, `FailedInsertQuery` 메트릭을 추가했습니다. [#11151](https://github.com/ClickHouse/ClickHouse/pull/11151) ([Nikita Orlov](https://github.com/naorlov)).
* 더 많은 `jemalloc` 통계를 `system.asynchronous_metrics`에 추가하고, 해당 통계에 최신 값이 반영되도록 했습니다. [#11748](https://github.com/ClickHouse/ClickHouse/pull/11748) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 기본 S3 자격 증명과 사용자 지정 인증 헤더를 지정할 수 있도록 지원합니다. [#11134](https://github.com/ClickHouse/ClickHouse/pull/11134) ([Grigory Pervakov](https://github.com/GrigoryPervakov)).
* 다양한 정밀도에서 DateTime64를 Int64로, 또는 그 반대로 변환하는 새 함수 `to-/fromUnixTimestamp64Milli/-Micro/-Nano`가 추가되었습니다. [#10923](https://github.com/ClickHouse/ClickHouse/pull/10923) ([Vasily Nemkov](https://github.com/Enmk)).
* MongoDB 딕셔너리에서 `mongodb://` URI를 지정할 수 있도록 했습니다. [#10915](https://github.com/ClickHouse/ClickHouse/pull/10915) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 이제 OFFSET 키워드는 LIMIT 절 없이도 사용할 수 있습니다. [#10802](https://github.com/ClickHouse/ClickHouse/pull/10802) ([Guillaume Tassery](https://github.com/YiuRULE)).
* `system.licenses` 테이블이 추가되었습니다. 이 테이블에는 `contrib` 디렉터리에 있는 서드파티 라이브러리의 라이선스가 포함되어 있습니다. 이로써 [#2890](https://github.com/ClickHouse/ClickHouse/issues/2890)가 해결되었습니다. [#10795](https://github.com/ClickHouse/ClickHouse/pull/10795) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateTime64 값의 초 미만 부분을 0으로 만드는 새 함수 `toStartOfSecond(DateTime64) -> DateTime64`를 추가했습니다. [#10722](https://github.com/ClickHouse/ClickHouse/pull/10722) ([Vasily Nemkov](https://github.com/Enmk)).
* 줄바꿈, 공백 및/또는 쉼표로 구분된 JSON 객체 시퀀스를 허용하는 새 입력 형식 `JSONAsString`이 추가되었습니다. [#10607](https://github.com/ClickHouse/ClickHouse/pull/10607) ([Kruglov Pavel](https://github.com/Avogar)).
* 4 MiB보다 더 작은 간격으로 메모리를 더 세밀하게 프로파일링할 수 있게 되었습니다. 임의의 메모리 할당/해제를 포착하는 샘플링 메모리 프로파일러를 추가했습니다. [#10598](https://github.com/ClickHouse/ClickHouse/pull/10598) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `SimpleAggregateFunction`이 이제 `sumMap`도 지원합니다. [#10000](https://github.com/ClickHouse/ClickHouse/pull/10000) ([Ildus Kurbangaliev](https://github.com/ildus)).
* 분산 테이블 엔진에서 `ALTER RENAME COLUMN`을 지원하도록 했습니다. [#10727](https://github.com/ClickHouse/ClickHouse/issues/10727)의 후속 작업입니다. [#10747](https://github.com/ClickHouse/ClickHouse/issues/10747)를 수정합니다. [#10887](https://github.com/ClickHouse/ClickHouse/pull/10887) ([alesapin](https://github.com/alesapin)).

<div id="bug-fix">
  #### 버그 수정
</div>

* Decimal parse에서 발생한 UBSan 보고를 수정했습니다. 이 변경으로 [#7540](https://github.com/ClickHouse/ClickHouse/issues/7540) 문제가 해결되었습니다. [#10512](https://github.com/ClickHouse/ClickHouse/pull/10512) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateTime64를 파싱하는 과정에서 발생할 수 있는 부동소수점 예외 가능성을 수정했습니다. 이로써 [#11374](https://github.com/ClickHouse/ClickHouse/issues/11374)가 해결됩니다. [#11875](https://github.com/ClickHouse/ClickHouse/pull/11875) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Nullable` 컬럼을 prewhere 조건에서 사용할 때 드물게 발생하던 크래시를 수정했습니다. [#11895](https://github.com/ClickHouse/ClickHouse/pull/11895) [#11608](https://github.com/ClickHouse/ClickHouse/issues/11608) [#11869](https://github.com/ClickHouse/ClickHouse/pull/11869) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 고차 함수 내부에서는 arrayJoin을 허용하지 않습니다. 이 문제로 인해 프로토콜 동기화가 깨졌습니다. 이는 [#3933](https://github.com/ClickHouse/ClickHouse/issues/3933)을 해결합니다. [#11846](https://github.com/ClickHouse/ClickHouse/pull/11846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 상수 String과 FixedString을 비교할 때 잘못된 결과가 반환되던 문제를 수정했습니다. 이 수정으로 [#11393](https://github.com/ClickHouse/ClickHouse/issues/11393)가 해결됩니다. 이 버그는 20.4 버전에서 발생했습니다. [#11828](https://github.com/ClickHouse/ClickHouse/pull/11828) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 조건식에 NULL이 있는 `if`에서 잘못된 결과가 반환되던 문제를 수정했습니다. [#11807](https://github.com/ClickHouse/ClickHouse/pull/11807) ([Artem Zuikov](https://github.com/4ertus2)).
* 쿼리에서 스레드를 너무 많이 사용하던 문제를 수정했습니다. [#11788](https://github.com/ClickHouse/ClickHouse/pull/11788) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `SELECT ... FROM merge_tree_table ...`에서 `WITH <scalar subquery> ...`를 사용할 때 발생하던 `Scalar does not exist` Exception을 해결했습니다 [#11621](https://github.com/ClickHouse/ClickHouse/issues/11621). [#11767](https://github.com/ClickHouse/ClickHouse/pull/11767) ([Amos Bird](https://github.com/amosbird)).
* `SELECT *, xyz.*`와 같은 쿼리에서 오류가 발생해야 하는데도 성공하던 예기치 않은 동작을 수정했습니다. [#11753](https://github.com/ClickHouse/ClickHouse/pull/11753) ([hexiaoting](https://github.com/hexiaoting)).
* 이제 메타데이터 alter 중에는 레플리카 fetch 작업이 취소됩니다. [#11744](https://github.com/ClickHouse/ClickHouse/pull/11744) ([alesapin](https://github.com/alesapin)).
* 동등성을 확인하기 전에 zookeeper에 저장된 메타데이터를 먼저 파싱합니다. [#11739](https://github.com/ClickHouse/ClickHouse/pull/11739) ([Azat Khuzhin](https://github.com/azat)).
* Values 입력 형식에서 복합 리터럴의 유형이 잘못 추론되어 발생하던 LOGICAL\_ERROR를 수정했습니다. [#11732](https://github.com/ClickHouse/ClickHouse/pull/11732) ([tavplubix](https://github.com/tavplubix)).
* const 컬럼에서의 `ORDER BY ... WITH FILL` 문제를 수정했습니다. [#11697](https://github.com/ClickHouse/ClickHouse/pull/11697) ([Anton Popov](https://github.com/CurtizJ)).
* `SYSTEM SYNC REPLICA`에서 매우 드물게 발생하는 경쟁 상태(race condition)를 수정했습니다. 복제된 테이블(Replicated Table)이 생성되는 시점에, 별도 connection에서 다른 클라이언트가 동시에 해당 테이블에 대해 `SYSTEM SYNC REPLICA` 명령을 실행하면(다른 클라이언트가 테이블 생성 사실을 알고 있어야 하므로 이런 상황은 드뭅니다), nullptr 역참조가 발생할 수 있었습니다. [#11691](https://github.com/ClickHouse/ClickHouse/pull/11691) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* XDBC bridge와 통신할 때 적절한 timeout이 전달되도록 수정했습니다. 최근에는 bridge의 활성 상태를 확인하고 메타 정보를 받아올 때 timeout이 제대로 적용되지 않았습니다. [#11690](https://github.com/ClickHouse/ClickHouse/pull/11690) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭이 포함된 `ORDER BY` 구문과 함께 `LIMIT n WITH TIES`를 사용할 때 발생하던 문제를 수정했습니다. [#11689](https://github.com/ClickHouse/ClickHouse/pull/11689) ([Anton Popov](https://github.com/CurtizJ)).
* 병렬 `FINAL`을 사용하는 select 쿼리에서 발생할 수 있는 `Pipeline stuck` 문제를 수정했습니다. [#11636](https://github.com/ClickHouse/ClickHouse/issues/11636)을 해결했습니다. [#11682](https://github.com/ClickHouse/ClickHouse/pull/11682) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `system.mutations`가 잘못된 상태로 표시되는 오류를 수정했습니다. 전체 뮤테이션이 이미 완료된 것처럼 보일 수 있지만, 서버에는 여전히 복제 큐에 `MUTATE_PART` 작업이 남아 있어 이를 계속 실행하려고 시도할 수 있습니다. 이 수정은 [#11611](https://github.com/ClickHouse/ClickHouse/issues/11611)을 해결합니다. [#11681](https://github.com/ClickHouse/ClickHouse/pull/11681) ([alesapin](https://github.com/alesapin)).
* CREATE USER 쿼리의 구문 강조를 수정했습니다. [#11664](https://github.com/ClickHouse/ClickHouse/pull/11664) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 대소문자를 구분하지 않는 플래그를 사용하는 정규식 지원을 추가했습니다. 이로써 [#11101](https://github.com/ClickHouse/ClickHouse/issues/11101) 및 [#11506](https://github.com/ClickHouse/ClickHouse/issues/11506) 문제가 수정되었습니다. [#11649](https://github.com/ClickHouse/ClickHouse/pull/11649) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 행 수준 보안이 설정된 경우 단순 `count` 쿼리 최적화를 제거했습니다. 이전 버전에서는 필터링된 결과가 아니라 테이블의 전체 레코드 수가 사용자에게 반환되었습니다. 이 변경으로 [#11352](https://github.com/ClickHouse/ClickHouse/issues/11352)가 수정되었습니다. [#11644](https://github.com/ClickHouse/ClickHouse/pull/11644) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* String용 블룸 필터(데이터 스키핑 인덱스)를 수정했습니다. [#11638](https://github.com/ClickHouse/ClickHouse/pull/11638) ([Azat Khuzhin](https://github.com/azat)).
* `-q` 옵션이 없으면 시작할 때 데이터베이스가 생성되지 않습니다. [#11604](https://github.com/ClickHouse/ClickHouse/pull/11604) ([giordyb](https://github.com/giordyb)).
* 샘플링을 사용해 `Buffer` 테이블을 읽는 쿼리에서 발생하던 `Block structure mismatch` 오류를 수정했습니다. [#11602](https://github.com/ClickHouse/ClickHouse/pull/11602) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `exception.code() % 256 == 0`인 경우 `clickhouse-client`의 종료 코드가 잘못되던 문제를 수정했습니다. [#11601](https://github.com/ClickHouse/ClickHouse/pull/11601) ([filimonov](https://github.com/filimonov)).
* ReplicatedMergeTree의 서로 다른 레플리카에서 CREATE/DROP 수행 시 발생하는 경쟁 상태(race condition)를 수정했습니다. 테이블이 ZooKeeper에서 완전히 제거되지 않았거나 생성이 성공적으로 완료되지 않은 경우에도 계속 작동합니다. 이 변경으로 [#11432](https://github.com/ClickHouse/ClickHouse/issues/11432)가 해결되었습니다. [#11592](https://github.com/ClickHouse/ClickHouse/pull/11592) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 서버 시작 시 "마크 캐시 크기가 줄어들었습니다"라는 로그 메시지의 사소한 오류를 수정했습니다. 이로써 [#11399](https://github.com/ClickHouse/ClickHouse/issues/11399)가 해결되었습니다. [#11589](https://github.com/ClickHouse/ClickHouse/pull/11589) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `PREWHERE column in (subquery)` 및 `ARRAY JOIN`이 있는 쿼리에서 발생하는 `Size of offsets does not match size of column` 오류를 수정했습니다. [#11580](https://github.com/ClickHouse/ClickHouse/pull/11580) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `SHOW CREATE TABLE`에서 드물게 발생하던 세그멘테이션 오류를 수정했습니다. [#11490](https://github.com/ClickHouse/ClickHouse/issues/11490)을 해결합니다. [#11579](https://github.com/ClickHouse/ClickHouse/pull/11579) ([tavplubix](https://github.com/tavplubix)).
* HTTP 세션의 모든 쿼리가 동일한 query\_id를 가지던 문제가 수정되었습니다. [#11578](https://github.com/ClickHouse/ClickHouse/pull/11578) ([tavplubix](https://github.com/tavplubix)).
* 이제 clickhouse-server Docker 컨테이너는 server가 살아 있는지 확인할 때 IPv6를 우선 사용합니다. [#11550](https://github.com/ClickHouse/ClickHouse/pull/11550) ([Ivan Starkov](https://github.com/istarkov)).
* `min_bytes_to_use_direct_io`가 활성화되어 있고 PREWHERE가 적용된 상태에서 SAMPLE을 사용하거나 스레드 수가 많을 때 발생할 수 있는 `Data compressed with different methods` 오류를 수정했습니다. 이 수정으로 [#11539](https://github.com/ClickHouse/ClickHouse/issues/11539)이 해결됩니다. [#11540](https://github.com/ClickHouse/ClickHouse/pull/11540) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `<node>`의 shard\_num/replica\_num을 수정했습니다(use\_compact\_format\_in\_distributed\_parts\_names가 깨지는 문제). [#11528](https://github.com/ClickHouse/ClickHouse/pull/11528) ([Azat Khuzhin](https://github.com/azat)).
* prefer\_localhost\_replica=0이고 internal\_replication이 없는 경우 분산 테이블에 대한 async INSERT를 수정했습니다. [#11527](https://github.com/ClickHouse/ClickHouse/pull/11527) ([Azat Khuzhin](https://github.com/azat)).
* `-State` 함수로 집계하는 중간에 예외가 발생할 때 생기던 메모리 누수를 수정했습니다. 이로써 [#8995](https://github.com/ClickHouse/ClickHouse/issues/8995)가 해결됩니다. [#11496](https://github.com/ClickHouse/ClickHouse/pull/11496) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `SELECT`(`max_threads`>1)에는 여러 스트림이 있지만 `INSERT`에는 하나만 있는(`max_insert_threads`==0) 경우, 발생하던 `INSERT SELECT FINAL`의 `Pipeline stuck` 예외를 수정했습니다. [#11455](https://github.com/ClickHouse/ClickHouse/pull/11455) ([Azat Khuzhin](https://github.com/azat)).
* `select count() from t, u`와 같은 쿼리에서 잘못된 결과가 반환되던 문제를 수정했습니다. [#11454](https://github.com/ClickHouse/ClickHouse/pull/11454) ([Artem Zuikov](https://github.com/4ertus2)).
* 코덱의 압축된 크기 반환 문제를 수정했습니다. [#11448](https://github.com/ClickHouse/ClickHouse/pull/11448) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 컬럼에 리터럴이 아닌 인수가 있는 압축 코덱이 설정된 경우 발생하던 server 충돌 문제를 수정했습니다. [#11365](https://github.com/ClickHouse/ClickHouse/issues/11365)를 수정합니다. [#11431](https://github.com/ClickHouse/ClickHouse/pull/11431) ([alesapin](https://github.com/alesapin)).
* 테이블이 성공적으로 생성되지 않았을 때 MergeTree 종료 시 발생할 수 있는 초기화되지 않은 메모리 읽기 문제를 수정했습니다. [#11420](https://github.com/ClickHouse/ClickHouse/pull/11420) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCarinality(T)` 및 `Nullable(T)`에 대한 JOIN 중 발생하던 크래시를 수정했습니다. [#11380](https://github.com/ClickHouse/ClickHouse/issues/11380). [#11414](https://github.com/ClickHouse/ClickHouse/pull/11414) ([Artem Zuikov](https://github.com/4ertus2)).
* `USING` 키가 잘못된 경우의 오류 코드를 수정했습니다. [#11373](https://github.com/ClickHouse/ClickHouse/issues/11373). [#11404](https://github.com/ClickHouse/ClickHouse/pull/11404) ([Artem Zuikov](https://github.com/4ertus2)).
* 위도/경도 범위를 벗어난 인수에서 발생하던 `geohashesInBox` 문제를 수정했습니다. [#11403](https://github.com/ClickHouse/ClickHouse/pull/11403) ([Vasily Nemkov](https://github.com/Enmk)).
* `joinGet()` 함수의 오류 메시지가 개선되었습니다. [#11389](https://github.com/ClickHouse/ClickHouse/pull/11389) ([Artem Zuikov](https://github.com/4ertus2)).
* 외부 정렬과 limit가 포함된 쿼리에서 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#11359](https://github.com/ClickHouse/ClickHouse/issues/11359)를 해결합니다. [#11366](https://github.com/ClickHouse/ClickHouse/pull/11366) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ReplicatedMergeTree에서 파트 전송 중 발생하는 불필요한 잠금을 제거했습니다. [#11354](https://github.com/ClickHouse/ClickHouse/pull/11354) ([alesapin](https://github.com/alesapin)).
* 멀티라인 모드의 clickhouse-client에서 `\G`(세로 출력) 지원 문제를 수정했습니다. 이 변경으로 [#9933](https://github.com/ClickHouse/ClickHouse/issues/9933)가 해결되었습니다. [#11350](https://github.com/ClickHouse/ClickHouse/pull/11350) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Lazy` 데이터베이스 사용 시 발생할 수 있는 segfault 문제를 수정했습니다. [#11348](https://github.com/ClickHouse/ClickHouse/pull/11348) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Join` 테이블 엔진을 JOIN 없이 직접 조회할 때 발생하던 충돌과 잘못된 NULL 허용 속성 문제를 수정했습니다. [#11340](https://github.com/ClickHouse/ClickHouse/pull/11340) ([Artem Zuikov](https://github.com/4ertus2)).
* `quantilesExactWeightedArray`에서 발생하던 충돌을 수정했습니다. [#11337](https://github.com/ClickHouse/ClickHouse/pull/11337) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 이제 `ALTER` 쿼리에서 메타데이터를 변경하기 전에 머지 작업이 중지됩니다. [#11335](https://github.com/ClickHouse/ClickHouse/pull/11335) ([alesapin](https://github.com/alesapin)).
* 설정 `parallel_view_processing = 1`에서 `MATERIALIZED VIEW`에 대한 쓰기가 다시 병렬로 수행되도록 했습니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#11330](https://github.com/ClickHouse/ClickHouse/pull/11330) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 추출된 JSON에 짝이 맞지 않는 \{ 또는 \[가 포함된 문자열이 있는 경우 `visitParamExtractRaw` 문제를 수정했습니다. [#11318](https://github.com/ClickHouse/ClickHouse/pull/11318) ([Ewout](https://github.com/devwout)).
* 매우 드물게 발생하던 ThreadPool의 race condition을 수정했습니다. [#11314](https://github.com/ClickHouse/ClickHouse/pull/11314) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `clickhouse-copier`의 사소한 data race를 수정했습니다. 통합 테스트에서 발견되었습니다. [#11313](https://github.com/ClickHouse/ClickHouse/pull/11313) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 변환 과정에서 초기화되지 않은 메모리가 사용될 가능성이 있는 문제를 수정했습니다. 예시: `SELECT toIntervalSecond(now64())`. [#11311](https://github.com/ClickHouse/ClickHouse/pull/11311) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블의 프라이머리 키(primary key)에 배열(Array) 컬럼이 있고, 쿼리에서 `empty` 또는 `notEmpty` 함수로 이 컬럼을 필터링할 때 인덱스 분석이 작동하지 않는 문제를 수정했습니다. 이 수정은 [#11286](https://github.com/ClickHouse/ClickHouse/issues/11286)을 해결합니다. [#11303](https://github.com/ClickHouse/ClickHouse/pull/11303) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 쿼리 속도 추정이 부정확해질 수 있고, 쿼리가 `max_network_bandwidth`, `max_execution_speed` 또는 `priority` 설정으로 인해 속도 제한(throttling)되면 `min_execution_speed` 제한이 적용되지 않거나 잘못 적용될 수 있는 버그를 수정했습니다. 또한 `timeout_before_checking_execution_speed`의 기본값을 0이 아닌 값으로 변경했습니다. 그렇지 않으면 `min_execution_speed` 및 `max_execution_speed` 설정이 아무런 효과를 내지 못하기 때문입니다. 이 수정은 [#11297](https://github.com/ClickHouse/ClickHouse/issues/11297)을 해결합니다. 이 수정은 [#5732](https://github.com/ClickHouse/ClickHouse/issues/5732)를 해결합니다. 이 수정은 [#6228](https://github.com/ClickHouse/ClickHouse/issues/6228)를 해결합니다. 사용성 개선: `clickhouse-client`에서 예외 메시지가 진행률 표시줄과 이어서 붙지 않도록 했습니다. [#11296](https://github.com/ClickHouse/ClickHouse/pull/11296) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `SET DEFAULT ROLE`이 잘못된 인수로 호출될 때 발생하는 충돌을 수정했습니다. 이 변경으로 [#10586](https://github.com/ClickHouse/ClickHouse/issues/10586)가 해결됩니다. [#11278](https://github.com/ClickHouse/ClickHouse/pull/11278) ([Vitaly Baranov](https://github.com/vitlibar)).
* `Protobuf` 포맷의 잘못된 데이터를 읽는 중 발생하던 충돌을 수정했습니다. 이로써 [#5957](https://github.com/ClickHouse/ClickHouse/issues/5957), [#11203](https://github.com/ClickHouse/ClickHouse/issues/11203) 문제가 해결되었습니다. [#11258](https://github.com/ClickHouse/ClickHouse/pull/11258) ([Vitaly Baranov](https://github.com/vitlibar)).
* `cache` 딕셔너리가 기본값이 아닌 정상 값을 반환해야 하는 상황에서 기본값을 반환할 수 있던 버그를 수정했습니다(만료된 키만 있는 경우). 이 문제는 문자열 필드에만 영향을 줍니다. [#11233](https://github.com/ClickHouse/ClickHouse/pull/11233) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 내부 쿼리에 상수가 포함된 `VIEW`를 읽을 때 발생하던 `Block structure mismatch in QueryPipeline` 오류를 수정했습니다. [#11181](https://github.com/ClickHouse/ClickHouse/issues/11181). [#11205](https://github.com/ClickHouse/ClickHouse/pull/11205) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 발생 가능한 예외 `Invalid status for associated output`를 수정했습니다. [#11200](https://github.com/ClickHouse/ClickHouse/pull/11200) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 이제 `CREATE` 쿼리에 `primary.idx`가 정의되어 있으면 이를 확인합니다. [#11199](https://github.com/ClickHouse/ClickHouse/pull/11199) ([alesapin](https://github.com/alesapin)).
* `Array(Array(LowCardinality))`가 캡처된 인수로 사용된 고차 함수에서 발생할 수 있는 `Cannot capture column` 오류를 수정했습니다. [#11185](https://github.com/ClickHouse/ClickHouse/pull/11185) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 키가 1000개를 초과하는 경우 및 일부 백엔드에서 실패할 수 있었던 `S3` 글로빙을 수정했습니다. [#11179](https://github.com/ClickHouse/ClickHouse/pull/11179) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 데이터 스키핑 인덱스가 백그라운드 머지 중에 수정되는 컬럼에 의존하는 경우(SummingMergeTree, AggregatingMergeTree, 그리고 TTL GROUP BY), 잘못 계산되는 문제가 있었습니다. 이 문제는 인덱스 계산을 머지 이후로 옮겨, 머지된 데이터 기준으로 인덱스를 계산하도록 수정했습니다. [#11162](https://github.com/ClickHouse/ClickHouse/pull/11162) ([Azat Khuzhin](https://github.com/azat)).
* 테이블 엔진이 Kafka인 테이블을 DROP하는 중(또는 서버 재시작 중)에 가끔 발생하던 멈춤 현상을 수정했습니다. [#11145](https://github.com/ClickHouse/ClickHouse/pull/11145) ([filimonov](https://github.com/filimonov)).
* 단순한 쿼리에 스레드가 과도하게 예약되던 문제를 수정했습니다(스레드 수를 줄이기 위한 최적화가 있었지만, 파이프라인 변경 이후 일부가 제대로 작동하지 않았습니다). [#11114](https://github.com/ClickHouse/ClickHouse/pull/11114) ([Azat Khuzhin](https://github.com/azat)).
* 아무것도 최종화되지 않은 경우 mutation 최종화 작업의 로깅을 제거했습니다. [#11109](https://github.com/ClickHouse/ClickHouse/pull/11109) ([alesapin](https://github.com/alesapin)).
* system 로그 테이블 구조가 변경된 업데이트 이후 서버 시작 중 발생하던 교착 상태를 수정했습니다. [#11106](https://github.com/ClickHouse/ClickHouse/pull/11106) ([alesapin](https://github.com/alesapin)).
* registerDiskS3의 메모리 누수를 수정했습니다. [#11074](https://github.com/ClickHouse/ClickHouse/pull/11074) ([Pavel Kovalenko](https://github.com/Jokser)).
* JOIN이 PREWHERE와 함께 사용되거나 `optimize_move_to_prewhere`가 WHERE를 PREWHERE로 변환할 때 발생하는 `No such name in Block::erase()` 오류를 수정했습니다. [#11051](https://github.com/ClickHouse/ClickHouse/pull/11051) ([Artem Zuikov](https://github.com/4ertus2)).
* Kafka engine 테이블이 종료되는 동안 발생할 수 있는 데이터 누락 문제를 수정했습니다. [#11048](https://github.com/ClickHouse/ClickHouse/pull/11048) ([filimonov](https://github.com/filimonov)).
* parseDateTime64BestEffort의 인수 해석 관련 버그를 수정했습니다. [#10925](https://github.com/ClickHouse/ClickHouse/issues/10925). [#11038](https://github.com/ClickHouse/ClickHouse/pull/11038) ([Vasily Nemkov](https://github.com/Enmk)).
* 이제 단일 `ALTER` 쿼리에서 같은 컬럼에 대해 `ADD/DROP` 및 `RENAME`를 함께 수행할 수 있습니다. `MODIFY`와 `RENAME`를 동시에 수행할 때의 예외 메시지도 더 명확해졌습니다. [#10669](https://github.com/ClickHouse/ClickHouse/issues/10669)를 부분적으로 해결합니다. [#11037](https://github.com/ClickHouse/ClickHouse/pull/11037) ([alesapin](https://github.com/alesapin)).
* S3 URL 파싱 문제를 수정했습니다. [#11036](https://github.com/ClickHouse/ClickHouse/pull/11036) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `LIMIT`가 있을 때 2단계 `GROUP BY`에서 메모리 추적을 수정했습니다. [#11022](https://github.com/ClickHouse/ClickHouse/pull/11022) ([Azat Khuzhin](https://github.com/azat)).
* 테이블(table)이 성공적으로 생성되지 않은 경우 MergeTree에서 매우 드물게 발생할 수 있는 잠재적 use-after-free 오류를 수정했습니다. [#10986](https://github.com/ClickHouse/ClickHouse/pull/10986) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Atomic 데이터베이스의 메타데이터(rename 시 상대 경로) 및 데이터(symlink용 상대 경로) 처리 문제를 수정했습니다. [#10980](https://github.com/ClickHouse/ClickHouse/pull/10980) ([Azat Khuzhin](https://github.com/azat)).
* `Atomic` 데이터베이스 엔진에서 동시에 실행되는 `ALTER` 및 `DROP DATABASE` 쿼리로 인해 발생하던 서버 충돌을 수정했습니다. [#10968](https://github.com/ClickHouse/ClickHouse/pull/10968) ([tavplubix](https://github.com/tavplubix)).
* 메서드 `getRawData()`의 원시 데이터 크기가 잘못 계산되던 문제를 수정했습니다. [#10964](https://github.com/ClickHouse/ClickHouse/pull/10964) ([Igr](https://github.com/ObjatieGroba)).
* 20.1 이하 버전과의 2단계 집계 비호환성을 수정했습니다. 이 비호환성은 initiator 노드와 원격 노드에서 서로 다른 버전의 ClickHouse를 사용하고, GROUP BY 결과 크기가 크며, 단일 String 필드에 대해 집계가 수행될 때 발생합니다. 이로 인해 결과에서 단일 키에 대해 머지되지 않은 여러 행이 생깁니다. [#10952](https://github.com/ClickHouse/ClickHouse/pull/10952) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DistributedBlockOutputStream에서 부분적으로만 작성된 파일이 전송되지 않도록 했습니다. [#10940](https://github.com/ClickHouse/ClickHouse/pull/10940) ([Azat Khuzhin](https://github.com/azat)).
* `SELECT count(notNullIn(NULL, []))`에서 발생하던 충돌을 수정했습니다. [#10920](https://github.com/ClickHouse/ClickHouse/pull/10920) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 테이블 엔진이 `Kafka`인 테이블을 삭제(DROP)할 때(또는 서버 재시작 중) 가끔 발생하던 멈춤 현상을 수정했습니다. [#10910](https://github.com/ClickHouse/ClickHouse/pull/10910) ([filimonov](https://github.com/filimonov)).
* 이제 `a TO b, c TO a`와 같이 여러 `ALTER RENAME`을 실행할 수 있습니다. [#10895](https://github.com/ClickHouse/ClickHouse/pull/10895) ([alesapin](https://github.com/alesapin)).
* 동일한 컬럼에 대해 여러 thread에서 집계 함수 state의 결과를 가져올 때 발생할 수 있는 race condition을 수정했습니다. 제가 확인한 바로는, 이 문제는 `quanite*` 함수의 `AggregateFunction` state를 저장하는 `Memory` engine 테이블을 읽는 동안 `finalizeAggregation` 함수를 사용할 때에만 발생할 수 있습니다. [#10890](https://github.com/ClickHouse/ClickHouse/pull/10890) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 분산 테이블에서 튜플의 이전 버전과의 호환성 문제를 수정했습니다. [#10889](https://github.com/ClickHouse/ClickHouse/pull/10889) ([Anton Popov](https://github.com/CurtizJ)).
* StringHashTable에서 SIGSEGV를 수정했습니다(해당 키가 없을 때). [#10870](https://github.com/ClickHouse/ClickHouse/pull/10870) ([Azat Khuzhin](https://github.com/azat)).
* `Atomic` 엔진을 사용하는 데이터베이스에서 `LiveView` 테이블을 삭제한 뒤 `WATCH`가 멈추는 문제를 수정했습니다. [#10859](https://github.com/ClickHouse/ClickHouse/pull/10859) ([tavplubix](https://github.com/tavplubix)).
* 레플리카가 비활성 상태가 된 후 해당 레플리카를 기다리느라 일부 `ALTER` 또는 `OPTIMIZE` 쿼리가 멈출 수 있던 `ReplicatedMergeTree` 버그를 수정했습니다. [#10849](https://github.com/ClickHouse/ClickHouse/pull/10849) ([tavplubix](https://github.com/tavplubix)).
* 이제 `CONSTRAINT` 표현식에 포함된 컬럼의 이름이 변경되면 제약 조건도 업데이트됩니다. [#10844](https://github.com/ClickHouse/ClickHouse/issues/10844)를 수정했습니다. [#10847](https://github.com/ClickHouse/ClickHouse/pull/10847) ([alesapin](https://github.com/alesapin)).
* 캐시 딕셔너리에서 초기화되지 않은 메모리를 읽을 수 있는 잠재적 문제를 수정했습니다. [#10834](https://github.com/ClickHouse/ClickHouse/pull/10834) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Block::sortColumns() 이후 컬럼 순서를 바로잡았습니다(또한 이것이 실제 사용 사례인 Buffer 엔진에 영향을 미친다는 점을 보여주는 테스트도 추가했습니다). [#10826](https://github.com/ClickHouse/ClickHouse/pull/10826) ([Azat Khuzhin](https://github.com/azat)).
* 식별자에 따옴표를 사용하지 않도록 요청한 경우 ODBC bridge에서 발생하던 문제를 수정했습니다. 이 수정으로 [#7984](https://github.com/ClickHouse/ClickHouse/issues/7984)가 해결됩니다. [#10821](https://github.com/ClickHouse/ClickHouse/pull/10821) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateLUT에서 UBSan 및 MSan이 보고한 문제를 수정했습니다. [#10798](https://github.com/ClickHouse/ClickHouse/pull/10798) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 키 조건에서 올바른 형 변환을 위해 `src_type`을 사용합니다. [#6287](https://github.com/ClickHouse/ClickHouse/issues/6287)을 수정했습니다. [#10791](https://github.com/ClickHouse/ClickHouse/pull/10791) ([Andrew Onyshchuk](https://github.com/oandrew)).
* 오래된 libunwind 패치를 제거했습니다. [https://github.com/ClickHouse-Extras/libunwind/commit/500aa227911bd185a94bfc071d68f4d3b03cb3b1#r39048012](https://github.com/ClickHouse-Extras/libunwind/commit/500aa227911bd185a94bfc071d68f4d3b03cb3b1#r39048012) 이로써 `clang` build에서 `-fno-omit-frame-pointer`를 비활성화할 수 있게 되어 평균적으로 최소 1%의 성능 향상이 이루어집니다. [#10761](https://github.com/ClickHouse/ClickHouse/pull/10761) ([Amos Bird](https://github.com/amosbird)).
* 여러 세그먼트에 걸쳐 부동소수점 가중치를 사용할 때 발생하던 `avgWeighted` 문제를 수정했습니다. [#10758](https://github.com/ClickHouse/ClickHouse/pull/10758) ([Baudouin Giard](https://github.com/bgiard)).
* `parallel_view_processing` 동작을 수정했습니다. 이제 예외가 발생하더라도 `MATERIALIZED VIEW`에 대한 모든 삽입이 예외 없이 완료됩니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#10757](https://github.com/ClickHouse/ClickHouse/pull/10757) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* -State와 함께 사용할 때 combinator -OrNull 및 -OrDefault의 문제를 수정했습니다. [#10741](https://github.com/ClickHouse/ClickHouse/pull/10741) ([hcz](https://github.com/hczhcz)).
* 중첩 타입이 있는 `generateRandom`에서 발생하던 충돌을 수정했습니다. [#10583](https://github.com/ClickHouse/ClickHouse/issues/10583). [#10734](https://github.com/ClickHouse/ClickHouse/pull/10734) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 머지 후 발생할 수 있었던 `SummingMergeTree`의 `LowCardinality(FixedString)` 키 컬럼 데이터 손상을 수정했습니다. [#10489](https://github.com/ClickHouse/ClickHouse/issues/10489)을 해결합니다. [#10721](https://github.com/ClickHouse/ClickHouse/pull/10721) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 함수로 감싼 기본 키(primary key)를 사용할 때 'FINAL' 수정자와 'ORDER BY' 최적화 관련 문제를 수정했습니다. [#10715](https://github.com/ClickHouse/ClickHouse/pull/10715) ([Anton Popov](https://github.com/CurtizJ)).
* 함수 `h3EdgeAngle`에서 발생할 수 있는 버퍼 오버플로우를 수정했습니다. [#10711](https://github.com/ClickHouse/ClickHouse/pull/10711) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 사라지던 합계 문제를 수정했습니다. 쿼리에 외부 WHERE 조건이 있는 join 또는 서브쿼리가 포함된 경우 합계가 필터링될 수 있었습니다. [#10674](https://github.com/ClickHouse/ClickHouse/issues/10674) 문제를 수정했습니다. [#10698](https://github.com/ClickHouse/ClickHouse/pull/10698) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* HTTP 삽입의 원자성 문제를 수정했습니다. 이 수정으로 [#9666](https://github.com/ClickHouse/ClickHouse/issues/9666)가 해결됩니다. [#10687](https://github.com/ClickHouse/ClickHouse/pull/10687) ([Andrew Onyshchuk](https://github.com/oandrew)).
* 하나의 쿼리에서 동일한 집합에 `IN` 연산자를 여러 번 사용하는 경우를 수정했습니다. [#10686](https://github.com/ClickHouse/ClickHouse/pull/10686) ([Anton Popov](https://github.com/CurtizJ)).
* `readonly=2`이고 `cancel_http_readonly_queries_on_client_close=1`일 때 클라이언트가 종료되면 HTTP 요청이 멈춘 상태로 남는 버그를 수정했습니다. [#7939](https://github.com/ClickHouse/ClickHouse/issues/7939), [#7019](https://github.com/ClickHouse/ClickHouse/issues/7019), [#7736](https://github.com/ClickHouse/ClickHouse/issues/7736), [#7091](https://github.com/ClickHouse/ClickHouse/issues/7091)을 해결합니다. [#10684](https://github.com/ClickHouse/ClickHouse/pull/10684) ([tavplubix](https://github.com/tavplubix)).
* AggregateTransform 생성자에서 매개변수 순서를 수정했습니다. [#10667](https://github.com/ClickHouse/ClickHouse/pull/10667) ([palasonic1](https://github.com/palasonic1)).
* `distributed_aggregation_memory_efficient`가 활성화된 상태에서 원격 쿼리가 병렬로 실행되지 않던 문제를 수정했습니다. [#10655](https://github.com/ClickHouse/ClickHouse/issues/10655)를 해결했습니다. [#10664](https://github.com/ClickHouse/ClickHouse/pull/10664) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LIMIT`가 있는 쿼리에서 행 수가 잘못 계산될 수 있는 문제를 수정했습니다. [#10566](https://github.com/ClickHouse/ClickHouse/issues/10566), [#10709](https://github.com/ClickHouse/ClickHouse/issues/10709)을 해결했습니다. [#10660](https://github.com/ClickHouse/ClickHouse/pull/10660) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 테이블에 파트가 많은 경우 동시 ALTER 작업이 잠기는 버그를 수정했습니다. [#10659](https://github.com/ClickHouse/ClickHouse/pull/10659) ([alesapin](https://github.com/alesapin)).
* 테이블 시작 전에 서버가 종료된 경우 StorageBuffer에서 nullptr를 역참조하던 문제를 수정했습니다. [#10641](https://github.com/ClickHouse/ClickHouse/pull/10641) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 분산 쿼리에 대한 프레디케이트 최적화(`enable_optimize_predicate_expression=1`)에서 `HAVING` 절이 있는 쿼리(즉, 서버 시작 노드에서 필터링이 필요한 경우)의 문제를 수정했습니다. 표현식의 순서를 유지하도록 했으며(이것만으로도 수정에 충분함), 집계기가 인덱스 대신 컬럼 이름을 사용하도록 강제했습니다. 수정: [#10613](https://github.com/ClickHouse/ClickHouse/issues/10613), [#11413](https://github.com/ClickHouse/ClickHouse/issues/11413). [#10621](https://github.com/ClickHouse/ClickHouse/pull/10621) ([Azat Khuzhin](https://github.com/azat)).
* LowCardinality에서 optimize\_skip\_unused\_shards 관련 문제를 수정했습니다. [#10611](https://github.com/ClickHouse/ClickHouse/pull/10611) ([Azat Khuzhin](https://github.com/azat)).
* 서버 시작 시 예외가 발생할 때 StorageBuffer에서 발생하는 segfault를 수정했습니다. [#10550](https://github.com/ClickHouse/ClickHouse/issues/10550)을 해결합니다. [#10609](https://github.com/ClickHouse/ClickHouse/pull/10609) ([tavplubix](https://github.com/tavplubix)).
* `SYSTEM DROP DNS CACHE` 쿼리를 실행하면, 특정 IP 주소에서 사용자의 연결이 허용되는지 확인하는 데 사용되는 캐시도 함께 삭제됩니다. [#10608](https://github.com/ClickHouse/ClickHouse/pull/10608) ([tavplubix](https://github.com/tavplubix)).
* `MATERIALIZED VIEW`의 내부 쿼리에 의존 테이블이 포함된 경우 발생하던 잘못된 스칼라 결과를 수정했습니다. [#10603](https://github.com/ClickHouse/ClickHouse/pull/10603) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 동기식 뮤테이션의 조건 변수 처리 방식이 수정되었습니다. 일부 경우 해당 조건 변수에 대한 신호가 유실될 수 있었습니다. [#10588](https://github.com/ClickHouse/ClickHouse/pull/10588) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `loadStoredObject()`가 완료되기 전에 `createDictionary()`가 호출될 경우 발생할 수 있는 크래시를 수정했습니다. [#10587](https://github.com/ClickHouse/ClickHouse/pull/10587) ([Vitaly Baranov](https://github.com/vitlibar)).
* `the BloomFilter false positive must be a double number between 0 and 1` 오류를 수정했습니다 [#10551](https://github.com/ClickHouse/ClickHouse/issues/10551). [#10569](https://github.com/ClickHouse/ClickHouse/pull/10569) ([Winter Zhang](https://github.com/zhang2014)).
* 기본 표현식의 유형이 컬럼 유형과 다른 컬럼 ALIAS에 대한 SELECT를 수정했습니다. [#10563](https://github.com/ClickHouse/ClickHouse/pull/10563) ([Azat Khuzhin](https://github.com/azat)).
* DateTime와 동일하게 DateTime64와 String 값 사이의 비교를 구현했습니다. [#10560](https://github.com/ClickHouse/ClickHouse/pull/10560) ([Vasily Nemkov](https://github.com/Enmk)).
* compact parts를 다른 compact part로 머지할 때 일부 경우에 발생하던 인덱스 손상을 수정했습니다. [#10531](https://github.com/ClickHouse/ClickHouse/pull/10531) ([Anton Popov](https://github.com/CurtizJ)).
* 기본적으로 GROUP BY 세그먼트 분할\_키 최적화를 비활성화하고(`optimize_distributed_group_by_sharding_key`는 세그먼트 분할\_키 분석이 까다로운 경우가 있어 도입 당시부터 기본적으로 비활성화되어 있었으며, 간단한 예로 세그먼트 분할 키의 `if`가 있습니다), WITH ROLLUP/CUBE/TOTALS에서도 올바르게 동작하도록 수정했습니다. [#10516](https://github.com/ClickHouse/ClickHouse/pull/10516) ([Azat Khuzhin](https://github.com/azat)).
* 수정: [#10263](https://github.com/ClickHouse/ClickHouse/issues/10263) (해당 PR 이후 INSERT를 통한 dist 전송이 INSERT가 실행될 때마다 지연되고 있었습니다) 수정: [#8756](https://github.com/ClickHouse/ClickHouse/issues/8756) (해당 PR은 다음 조건이 모두 충족되면 분산 전송에 문제를 일으킵니다(현재로서는 가능성이 낮은 구성으로 보입니다): `internal_replication == false`, 여러 로컬 세그먼트(하드링킹 코드를 활성화함), 그리고 `distributed_storage_policy` (`link(2)`가 `EXDEV`에서 실패하게 만듦)). [#10486](https://github.com/ClickHouse/ClickHouse/pull/10486) ([Azat Khuzhin](https://github.com/azat)).
* "max\_rows\_to\_sort" 제한과 관련된 오류를 수정했습니다. [#10268](https://github.com/ClickHouse/ClickHouse/pull/10268) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 외부 딕셔너리를 읽는 함수를 호출할 때마다 딕셔너리를 가져오고 접근 권한을 확인하는 작업이 호출당 한 번만 수행되도록 했습니다. [#10928](https://github.com/ClickHouse/ClickHouse/pull/10928) ([Vitaly Baranov](https://github.com/vitlibar)).

<div id="improvement">
  #### 개선 사항
</div>

* 이전 데이터에는 `ALTER MODIFY TTL` 쿼리 후 `TTL`이 적용됩니다. 이 동작은 기본적으로 활성화되어 있는 `materialize_ttl_after_modify` 설정으로 제어됩니다. [#11042](https://github.com/ClickHouse/ClickHouse/pull/11042) ([Anton Popov](https://github.com/CurtizJ)).
* 문자열 리터럴, VALUES 및 다양한 텍스트 형식에서 C 스타일 백슬래시 이스케이프를 파싱할 때(이는 ClickHouse와 MySQL에서 널리 사용되는 SQL 표준의 확장입니다), 알 수 없는 이스케이프 시퀀스가 발견되면(예: `\%` 또는 `\w`) 백슬래시를 유지하도록 하여 `LIKE` 및 `match` 정규식 사용이 더 편리해지고(이제 `name LIKE 'used\\_cars'` 대신 `name LIKE 'used\_cars'`만 쓰면 됩니다) 동시에 호환성도 향상되었습니다. 이 변경으로 [#10922](https://github.com/ClickHouse/ClickHouse/issues/10922)가 수정되었습니다. [#11208](https://github.com/ClickHouse/ClickHouse/pull/11208) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Decimal 값을 읽을 때 소수점 이하의 불필요한 자릿수는 잘라냅니다. 이 동작은 MySQL 및 PostgreSQL과 더 잘 호환됩니다. 이로써 [#10202](https://github.com/ClickHouse/ClickHouse/issues/10202) 문제가 수정되었습니다. [#11831](https://github.com/ClickHouse/ClickHouse/pull/11831) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* ZooKeeper의 메타데이터가 이미 삭제되어 더 이상 존재하지 않는 경우에도 복제된 테이블(Replicated Table)에 대해 DROP을 허용합니다(테스트용으로 TestKeeper를 사용한 뒤 서버를 재시작한 경우도 이에 해당합니다). ZooKeeper와 통신하는 중 오류가 발생하더라도 복제된 테이블의 RENAME을 허용합니다. 이 변경으로 [#10720](https://github.com/ClickHouse/ClickHouse/issues/10720)이 수정되었습니다. [#11652](https://github.com/ClickHouse/ClickHouse/pull/11652) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 문자열에서 decimal을 읽을 때의 진단 메시지를 약간 개선했습니다. 이로써 [#10202](https://github.com/ClickHouse/ClickHouse/issues/10202)가 해결되었습니다. [#11829](https://github.com/ClickHouse/ClickHouse/pull/11829) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 시그널 핸들러의 `sleep` 호출을 수정했습니다. 예상보다 짧은 시간만 대기하던 문제를 해결했습니다. [#11825](https://github.com/ClickHouse/ClickHouse/pull/11825) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* (Linux에서만) `CAP_NET_ADMIN` capability 없이도 CPU 및 I/O 관련 OS 성능 메트릭이 작동합니다. [#10544](https://github.com/ClickHouse/ClickHouse/pull/10544) ([Alexander Kazakov](https://github.com/Akazz)).
* 함수 `hostName`에 대한 alias로 `hostname`이 추가되었습니다. 이 기능은 Yandex.Metrica의 Victor Tarnavskiy가 제안했습니다. [#11821](https://github.com/ClickHouse/ClickHouse/pull/11821) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 교차 복제 클러스터에서 분산 `DDL`(업데이트/삭제/파티션 삭제) 지원이 추가되었습니다. [#11703](https://github.com/ClickHouse/ClickHouse/pull/11703) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 시작 시 수신 주소 중 하나에서 listen할 수 없는 경우(예: Docker 내부에서 IPv6를 사용할 수 없는 경우), server 로그에 오류 대신 경고를 기록합니다. server가 나열된 모든 주소에서 listen하지 못하면 이전과 마찬가지로 시작을 거부합니다. 이 변경으로 [#4406](https://github.com/ClickHouse/ClickHouse/issues/4406) 문제가 수정되었습니다. [#11687](https://github.com/ClickHouse/ClickHouse/pull/11687) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Docker 이미지가 시작될 때 기본 사용자 및 데이터베이스를 생성합니다. [#10637](https://github.com/ClickHouse/ClickHouse/pull/10637) ([Paramtamtam](https://github.com/tarampampam)).
* 여러 줄 쿼리를 server log에 출력할 때 줄이 하나로 합쳐집니다. 여러 줄 문자열 리터럴, 식별자, 단일 행 주석의 경우에도 올바르게 동작하도록 수정했습니다. 이로써 [#3853](https://github.com/ClickHouse/ClickHouse/issues/3853)가 해결됩니다. [#11686](https://github.com/ClickHouse/ClickHouse/pull/11686) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 CREATE USER, CREATE ROLE, ALTER USER, SHOW CREATE USER, SHOW GRANTS 등의 명령에서 여러 이름을 허용합니다. [#11670](https://github.com/ClickHouse/ClickHouse/pull/11670) ([Vitaly Baranov](https://github.com/vitlibar)).
* 교차 복제 클러스터에서 분산 DDL(`UPDATE/DELETE/DROP PARTITION`)을 지원하도록 개선했습니다. [#11508](https://github.com/ClickHouse/ClickHouse/pull/11508) ([frank lee](https://github.com/etah000)).
* 사용자가 명시적 값으로 비밀번호를 지정한 경우 `clickhouse-client` 및 `clickhouse-benchmark`의 명령줄에서 해당 비밀번호를 제거합니다. 이렇게 하면 `ps` 및 유사한 도구를 통해 비밀번호가 노출되는 것을 방지할 수 있습니다. [#11665](https://github.com/ClickHouse/ClickHouse/pull/11665) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 실행 중인 바이너리와 일치하지 않으면 ELF 파일의 디버그 정보를 사용하지 않습니다. 이는 스택 트레이스에 잘못된 함수 이름과 소스 위치가 출력되는 것을 방지하기 위해 필요합니다. 이 변경으로 [#7514](https://github.com/ClickHouse/ClickHouse/issues/7514)가 수정되었습니다. [#11657](https://github.com/ClickHouse/ClickHouse/pull/11657) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* parseDateTimeBestEffortOrNull/Zero 함수에서 값을 완전히 parse하지 못한 경우 NULL/0을 반환하도록 했습니다. 이로써 [#7876](https://github.com/ClickHouse/ClickHouse/issues/7876)가 수정되었습니다. [#11653](https://github.com/ClickHouse/ClickHouse/pull/11653) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 요청된 URL의 비어 있는 매개변수는 건너뜁니다. 이는 `http://localhost:8123/?&a=b` 또는 `http://localhost:8123/?a=b&&c=d`처럼 입력할 때 나타날 수 있습니다. 이 변경으로 [#10749](https://github.com/ClickHouse/ClickHouse/issues/10749)를 해결합니다. [#11651](https://github.com/ClickHouse/ClickHouse/pull/11651) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `groupArrayArray` 및 `groupUniqArrayArray`를 `SimpleAggregateFunction`으로 사용할 수 있게 되었습니다. [#11650](https://github.com/ClickHouse/ClickHouse/pull/11650) ([Volodymyr Kuznetsov](https://github.com/ksvladimir)).
* 다른 타입의 인덱스 조건을 분석할 때 암시적 변환을 사용해 상수 문자열과 비교할 수 있도록 했습니다. 이를 통해 [#11630](https://github.com/ClickHouse/ClickHouse/issues/11630)이 해결될 수 있습니다. [#11648](https://github.com/ClickHouse/ClickHouse/pull/11648) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* [https://github.com/ClickHouse/ClickHouse/pull/7572#issuecomment-642815377](https://github.com/ClickHouse/ClickHouse/pull/7572#issuecomment-642815377) 기본 HTTPHandlers 설정을 지원합니다. [#11628](https://github.com/ClickHouse/ClickHouse/pull/11628) ([Winter Zhang](https://github.com/zhang2014)).
* Kafka engine에서 더 많은 입력 형식을 사용할 수 있도록 했습니다. 조기 플러시 문제를 수정했습니다. `kafka_num_consumers`가 토픽의 파티션 수보다 클 때 발생하는 성능 문제를 수정했습니다. [#11599](https://github.com/ClickHouse/ClickHouse/pull/11599) ([filimonov](https://github.com/filimonov)).
* `multiple_joins_rewriter_version=2` 로직을 개선했습니다. 람다 별칭에서 발생하던 알 수 없는 컬럼 오류를 수정했습니다. [#11587](https://github.com/ClickHouse/ClickHouse/pull/11587) ([Artem Zuikov](https://github.com/4ertus2)).
* 컬럼 선언 목록을 파싱할 수 없을 때 표시되는 예외 메시지가 개선되었습니다. 이로써 [#10403](https://github.com/ClickHouse/ClickHouse/issues/10403)이 해결되었습니다. [#11537](https://github.com/ClickHouse/ClickHouse/pull/11537) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* VIEW용 `enable_optimize_predicate_expression=1` 로직 개선. [#11513](https://github.com/ClickHouse/ClickHouse/pull/11513) ([Artem Zuikov](https://github.com/4ertus2)).
* 라이브 view 테이블에 PREWHERE 지원이 추가되었습니다. [#11495](https://github.com/ClickHouse/ClickHouse/pull/11495) ([vzakaznikov](https://github.com/vzakaznikov)).
* 사용자의 특정 주소 접속 허용 여부를 확인하는 데 사용되는 DNS 캐시를 자동으로 업데이트합니다. [#11487](https://github.com/ClickHouse/ClickHouse/pull/11487) ([tavplubix](https://github.com/tavplubix)).
* OPTIMIZE FINAL은 concurrent 머지가 수행 중인 경우에도 강제로 머지를 실행합니다. 이 변경으로 [#11309](https://github.com/ClickHouse/ClickHouse/issues/11309) 및 [#11322](https://github.com/ClickHouse/ClickHouse/issues/11322)가 해결되었습니다. [#11346](https://github.com/ClickHouse/ClickHouse/pull/11346) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clickhouse-client에서 취소된 쿼리의 출력이 표시되지 않도록 했습니다. 이전 버전에서는 쿼리를 취소하려고 Ctrl+C를 눌러도 결과가 터미널에 계속 출력될 수 있었습니다. 이 변경으로 [#9473](https://github.com/ClickHouse/ClickHouse/issues/9473) 문제가 해결되었습니다. [#11342](https://github.com/ClickHouse/ClickHouse/pull/11342) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 각 쿼리 후 이력 파일이 업데이트되며, 여러 클라이언트가 하나의 이력 파일을 사용해도 경쟁 상태가 발생하지 않습니다. 이 변경으로 [#9897](https://github.com/ClickHouse/ClickHouse/issues/9897)가 해결되었습니다. [#11453](https://github.com/ClickHouse/ClickHouse/pull/11453) ([Tagir Kuskarov](https://github.com/kuskarov)).
* 구성을 다시 로드하는 동안의 로그 메시지를 개선했습니다. [#11341](https://github.com/ClickHouse/ClickHouse/pull/11341) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 일부 경우 `clickhouse-client` 또는 `clickhouse-format`에서 포맷된 쿼리의 끝부분 공백을 제거합니다. [#11325](https://github.com/ClickHouse/ClickHouse/pull/11325) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 설정 "output\_format\_pretty\_max\_value\_width"을 추가했습니다. 값이 이보다 길면 터미널에 지나치게 큰 값이 출력되지 않도록 잘라냅니다. 이로써 [#11140](https://github.com/ClickHouse/ClickHouse/issues/11140)이 해결되었습니다. [#11324](https://github.com/ClickHouse/ClickHouse/pull/11324) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 메모리 매핑이 부족할 때 표시되는 예외 메시지가 개선되었습니다. 이 변경으로 [#11027](https://github.com/ClickHouse/ClickHouse/issues/11027)이 해결되었습니다. [#11316](https://github.com/ClickHouse/ClickHouse/pull/11316) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* ASOF JOIN에서 (U)Int8, (U)Int16, Date를 지원합니다. [#11301](https://github.com/ClickHouse/ClickHouse/pull/11301) ([Artem Zuikov](https://github.com/4ertus2)).
* Kafka 테이블에서 kafka\_client\_id 매개변수를 지원합니다. 또한 ClickHouse가 Kafka와 통신할 때 사용하는 기본 `client.id`를 더 구체적이고 사용하기 쉬운 값으로 변경합니다. [#11252](https://github.com/ClickHouse/ClickHouse/pull/11252) ([filimonov](https://github.com/filimonov)).
* 예외가 발생해도 `DistributedFilesToInsert` 메트릭 값이 유지되도록 했습니다. 이전 버전에서는 일부 파일을 전송하려고 할 때 값이 설정되었지만, 예외가 발생해 일부 파일이 아직 대기 중인 경우에는 값이 0이었습니다. 이제 이 값은 파일 시스템에서 대기 중인 파일 수를 나타냅니다. [#11220](https://github.com/ClickHouse/ClickHouse/pull/11220) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SQL 호환성을 높이기 위해 `DOUBLE PRECISION`, `CHAR VARYING`와 같은 여러 단어로 이루어진 데이터 타입 이름을 지원하도록 했습니다. [#11214](https://github.com/ClickHouse/ClickHouse/pull/11214) ([Павел Потемкин](https://github.com/Potya)).
* 일부 데이터 타입에 동의어를 추가했습니다. [#10856](https://github.com/ClickHouse/ClickHouse/pull/10856) ([Павел Потемкин](https://github.com/Potya)).
* 이제부터 쿼리 로그가 기본적으로 활성화됩니다. [#11184](https://github.com/ClickHouse/ClickHouse/pull/11184) ([Ivan Blinkov](https://github.com/blinkov)).
* system.users 테이블과 SHOW CREATE USER 쿼리 실행 시 인증 유형을 표시합니다. [#11080](https://github.com/ClickHouse/ClickHouse/pull/11080) ([Vitaly Baranov](https://github.com/vitlibar)).
* 명시적으로 `DROP DATABASE`를 실행할 때 `Memory` 데이터베이스 엔진의 데이터가 삭제되도록 했습니다. [#10557](https://github.com/ClickHouse/ClickHouse/issues/10557)를 수정했습니다. [#11021](https://github.com/ClickHouse/ClickHouse/pull/11021) ([tavplubix](https://github.com/tavplubix)).
* rdkafka 라이브러리의 내부 thread에 이름을 설정합니다. rdkafka의 logs를 server logs에서 사용할 수 있게 합니다. [#10983](https://github.com/ClickHouse/ClickHouse/pull/10983) ([Azat Khuzhin](https://github.com/azat)).
* 쿼리에서 유니코드 공백 문자를 지원합니다. Word나 웹 페이지에서 쿼리를 복사해 붙여넣을 때 유용합니다. 이 변경으로 [#10896](https://github.com/ClickHouse/ClickHouse/issues/10896) 문제가 수정되었습니다. [#10903](https://github.com/ClickHouse/ClickHouse/pull/10903) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 `tupleElement`에서 큰 UInt 타입도 인덱스로 사용할 수 있게 했습니다. [#10874](https://github.com/ClickHouse/ClickHouse/pull/10874) ([hcz](https://github.com/hczhcz)).
* Distributed에 INSERT할 때 prefer\_localhost\_replica/load\_balancing 설정을 준수합니다. [#10867](https://github.com/ClickHouse/ClickHouse/pull/10867) ([Azat Khuzhin](https://github.com/azat)).
* `min_insert_block_size_rows_for_materialized_views`, `min_insert_block_size_bytes_for_materialized_views` 설정을 도입했습니다. 이 설정은 `min_insert_block_size_rows` 및 `min_insert_block_size_bytes`와 유사하지만, `MATERIALIZED VIEW`에 삽입되는 블록에만 적용됩니다. 이를 통해 MV로 푸시하는 동안 블록 합치기를 제어하고 과도한 메모리 사용량을 방지할 수 있습니다. [#10858](https://github.com/ClickHouse/ClickHouse/pull/10858) ([Azat Khuzhin](https://github.com/azat)).
* server 종료 중 복제된 큐에서 발생하던 예외를 제거했습니다. [#10819](https://github.com/ClickHouse/ClickHouse/issues/10819)를 수정했습니다. [#10841](https://github.com/ClickHouse/ClickHouse/pull/10841) ([alesapin](https://github.com/alesapin)).
* 수치 오차로 인해 `varSamp`, `varPop`이 음수 값을 반환하지 않도록 하고, `stddevSamp`, `stddevPop`이 음수 분산에서 계산되지 않도록 했습니다. 이로써 [#10532](https://github.com/ClickHouse/ClickHouse/issues/10532)를 수정했습니다. [#10829](https://github.com/ClickHouse/ClickHouse/pull/10829) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 더 나은 DNS 예외 메시지입니다. 이로써 [#10813](https://github.com/ClickHouse/ClickHouse/issues/10813)이 수정되었습니다. [#10828](https://github.com/ClickHouse/ClickHouse/pull/10828) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 일부 파싱 오류의 경우 HTTP 응답 코드를 400 Bad Request로 변경했습니다. 이 수정으로 [#10636](https://github.com/ClickHouse/ClickHouse/issues/10636) 문제가 해결되었습니다. [#10640](https://github.com/ClickHouse/ClickHouse/pull/10640) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clickhouse-client가 clickhouse-server보다 최신 버전이면 메시지를 표시합니다. [#10627](https://github.com/ClickHouse/ClickHouse/pull/10627) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `INSERT INTO [db.]table WATCH` 쿼리 지원이 추가되었습니다. [#10498](https://github.com/ClickHouse/ClickHouse/pull/10498) ([vzakaznikov](https://github.com/vzakaznikov)).
* clickhouse-client에서 quota\_key를 전달할 수 있게 되었습니다. 이로써 [#10227](https://github.com/ClickHouse/ClickHouse/issues/10227)이 해결되었습니다. [#10270](https://github.com/ClickHouse/ClickHouse/pull/10270) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 여러 레플리카가 머지, 뮤테이션, 파티션 삭제, 이동 및 대체 작업을 동시에 할당할 수 있게 했습니다. 이로써 [#10367](https://github.com/ClickHouse/ClickHouse/issues/10367)이 해결되었습니다. [#11639](https://github.com/ClickHouse/ClickHouse/pull/11639) ([alexey-milovidov](https://github.com/alexey-milovidov)) [#11795](https://github.com/ClickHouse/ClickHouse/pull/11795) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블 정렬 키를 고려한 GROUP BY 최적화이며, `optimize_aggregation_in_order` 설정으로 활성화됩니다. [#9113](https://github.com/ClickHouse/ClickHouse/pull/9113) ([dimarub2000](https://github.com/dimarub2000)).
* final이 포함된 SELECT 쿼리는 병렬로 실행됩니다. 사용되는 스레드 수를 제한하는 설정 `max_final_threads`가 추가되었습니다. [#10463](https://github.com/ClickHouse/ClickHouse/pull/10463) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 작은 블록이 생성될 때(병렬 구문 분석의 일반적인 경우) `INSERT SELECT`를 통한 `INSERT` 쿼리 또는 clickhouse-client를 사용한 INSERT의 성능을 개선했습니다. 이로써 [#11275](https://github.com/ClickHouse/ClickHouse/issues/11275)가 수정되었습니다. DEFAULT 필드에 CONSTRAINT가 적용되지 않던 문제를 수정했습니다. 이로써 [#11273](https://github.com/ClickHouse/ClickHouse/issues/11273)가 수정되었습니다. TEMPORARY 테이블에서 CONSTRAINT가 무시되던 문제를 수정했습니다. 이로써 [#11274](https://github.com/ClickHouse/ClickHouse/issues/11274)가 수정되었습니다. [#11276](https://github.com/ClickHouse/ClickHouse/pull/11276) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* SELECT 섹션에서 GROUP BY 키에 대한 min/max/any 집계 함수를 제거하는 최적화로, `optimize_aggregators_of_group_by_keys` setting으로 활성화됩니다. [#11667](https://github.com/ClickHouse/ClickHouse/pull/11667) ([xPoSx](https://github.com/xPoSx)). [#11806](https://github.com/ClickHouse/ClickHouse/pull/11806) ([Azat Khuzhin](https://github.com/azat)).
* `any` 함수의 모든 연산을 함수 밖으로 이동시키는 새로운 최적화가 추가되었으며, `optimize_move_functions_out_of_any`를 통해 활성화됩니다 [#11529](https://github.com/ClickHouse/ClickHouse/pull/11529) ([Ruslan](https://github.com/kamalov-ruslan)).
* Pretty 형식을 사용할 때 `clickhouse-client`의 대화형 모드 성능을 개선했습니다. 이전 버전에서는 UTF-8 문자열의 표시 너비를 계산하는 데 많은 시간이 소요될 수 있었습니다. 이 변경으로 [#11323](https://github.com/ClickHouse/ClickHouse/issues/11323)이 해결되었습니다. [#11323](https://github.com/ClickHouse/ClickHouse/pull/11323) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `ORDER BY`와 작은 `LIMIT`(`max_block_size`보다 작은 값)을 사용하는 쿼리의 성능이 개선되었습니다. [#11171](https://github.com/ClickHouse/ClickHouse/pull/11171) ([Albert Kidrachev](https://github.com/Provet)).
* 최적의 함수 구현을 선택해 디스패치할 수 있도록 런타임 CPU 감지를 추가했습니다. 여러 대상에 대한 코드 생성 지원을 추가했습니다. 이로써 [#1017](https://github.com/ClickHouse/ClickHouse/issues/1017)이 해결됩니다. [#10058](https://github.com/ClickHouse/ClickHouse/pull/10058) ([DimasKovas](https://github.com/DimasKovas)).
* 기본적으로 ClickHouse 바이너리에 `mlock`을 활성화합니다. 이렇게 하면 높은 IO 부하 시 ClickHouse 실행 파일이 페이지 아웃되지 않도록 방지합니다. [#11139](https://github.com/ClickHouse/ClickHouse/pull/11139) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* GROUP BY 키 없이 `sum` 집계 함수를 사용하는 쿼리가 몇 배 더 빠르게 실행되도록 개선했습니다. [#10992](https://github.com/ClickHouse/ClickHouse/pull/10992) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 중복된 일부 데이터 이동을 제거해 radix sort(`ORDER BY`에서 단순 키에 사용)를 개선했습니다. [#10981](https://github.com/ClickHouse/ClickHouse/pull/10981) ([Arslan Gumerov](https://github.com/g-arslan)).
* MergeJoin에서 왼쪽 테이블의 더 큰 파트를 정렬합니다. 왼쪽 블록을 메모리에 버퍼링합니다. 왼쪽 블록 버퍼의 크기를 관리하기 위해 `partial_merge_join_left_table_buffer_bytes` 설정을 추가했습니다. [#10601](https://github.com/ClickHouse/ClickHouse/pull/10601) ([Artem Zuikov](https://github.com/4ertus2)).
* 서브쿼리에서 중복된 ORDER BY 및 DISTINCT를 제거합니다. 이 최적화는 `optimize_duplicate_order_by_and_distinct`로 활성화됩니다 [#10067](https://github.com/ClickHouse/ClickHouse/pull/10067) ([Mikhail Malafeev](https://github.com/demo-99)).
* 이 기능은 `optimize_group_by_function_keys`를 활성화하면 GROUP BY 절에서 다른 키에 적용된 함수를 제거합니다 [#10051](https://github.com/ClickHouse/ClickHouse/pull/10051) ([xPoSx](https://github.com/xPoSx)).
* 집계 함수에서 산술 연산을 분리해 내는 새로운 최적화가 추가되었으며, `optimize_arithmetic_operations_in_aggregate_functions` 설정으로 활성화할 수 있습니다 [#10047](https://github.com/ClickHouse/ClickHouse/pull/10047) ([Ruslan](https://github.com/kamalov-ruslan)).
* curl 대신 Poco 기반 S3용 HTTP 클라이언트를 사용합니다. 이로써 S3 스토리지와 테이블 함수의 성능이 향상되고 메모리 사용량이 줄어듭니다. [#11230](https://github.com/ClickHouse/ClickHouse/pull/11230) ([Pavel Kovalenko](https://github.com/Jokser)).
* 항상 적용되던 제한값 기반 재스케줄링과 관련된 Kafka 성능 문제를 수정했습니다. [#11149](https://github.com/ClickHouse/ClickHouse/pull/11149) ([filimonov](https://github.com/filimonov)).
* jemalloc에 percpu\_arena:percpu를 활성화했습니다(이렇게 하면 스레드 풀로 인한 메모리 단편화가 줄어듭니다). [#11084](https://github.com/ClickHouse/ClickHouse/pull/11084) ([Azat Khuzhin](https://github.com/azat)).
* S3 HTTP 클라이언트의 응답을 읽을 때 메모리 사용량을 최적화했습니다. [#11561](https://github.com/ClickHouse/ClickHouse/pull/11561) ([Pavel Kovalenko](https://github.com/Jokser)).
* 성능 향상을 위해 기본 Kafka 설정을 조정했습니다. [#11388](https://github.com/ClickHouse/ClickHouse/pull/11388) ([filimonov](https://github.com/filimonov)).

<div id="experimental-feature">
  #### 실험적 기능
</div>

* 데이터 타입 `Point`(Tuple(Float64, Float64)) 및 `Polygon`(Array(Array(Tuple(Float64, Float64)))을 추가했습니다. [#10678](https://github.com/ClickHouse/ClickHouse/pull/10678) ([Alexey Ilyukhov](https://github.com/livace)).
* 배열에서 부분 수열을 찾을 수 있는 `hasSubstr` 함수를 추가했습니다. 참고: 이 함수는 별도 공지 없이 이름이 변경될 수 있습니다. [#11071](https://github.com/ClickHouse/ClickHouse/pull/11071) ([Ryad Zenine](https://github.com/r-zenine)).
* OpenCL 지원과 bitonic sort 알고리즘을 추가했습니다. 이 알고리즘은 단일 컬럼의 정수 타입 데이터를 정렬하는 데 사용할 수 있습니다. `-DENABLE_OPENCL=1` 플래그를 사용해 빌드해야 합니다. 다른 알고리즘 대신 bitonic sort 알고리즘을 사용하려면 설정 옵션 `special_sort`를 `bitonic_sort`로 지정하고, OpenCL을 사용할 수 있는지 확인해야 합니다. 이 기능은 성능이나 그 밖의 요소를 개선하지 않으며, 예시 및 시연 목적으로만 제공됩니다. 이 방향으로 추가 개발이 이루어지지 않으면 가까운 시일 내에 제거될 가능성이 높습니다. [#10232](https://github.com/ClickHouse/ClickHouse/pull/10232) ([Ri](https://github.com/margaritiko)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 프로그램과 유틸리티에 clang-tidy를 활성화했습니다. [#10991](https://github.com/ClickHouse/ClickHouse/pull/10991) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `tzdata` 의존성을 제거했습니다. `/usr/share/zoneinfo` 디렉터리가 없어도 실패하지 않습니다. 시스템에 `tzdata`가 설치되어 있지 않아도 ClickHouse에서는 모든 시간대가 정상적으로 작동합니다. [#11827](https://github.com/ClickHouse/ClickHouse/pull/11827) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MSan 및 UBSan 스트레스 테스트를 추가했습니다. MSan과 UBSan은 이미 기능 테스트에 대해 사용하고 있으며, "stress" 테스트는 별도의 테스트 유형이라는 점에 유의하십시오. [#10871](https://github.com/ClickHouse/ClickHouse/pull/10871) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 충돌 메시지에 컴파일러 build id를 출력합니다. 이렇게 하면 어떤 실행 파일이 충돌했는지 조금 더 정확하게 파악할 수 있습니다. 새로운 함수 `buildId`를 추가했습니다. [#11824](https://github.com/ClickHouse/ClickHouse/pull/11824) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* FREEZE 쿼리 이후에도 뮤테이션이 계속 동작하는지 확인하는 테스트가 추가되었습니다. [#11820](https://github.com/ClickHouse/ClickHouse/pull/11820) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이름에 "fail" substring이 포함된 테스트는 허용하지 않습니다. 브라우저에서 Ctrl+F로 "fail"을 검색할 때 테스트 결과를 살펴보기가 불편해지기 때문입니다. [#11817](https://github.com/ClickHouse/ClickHouse/pull/11817) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* HTTPHandlerFactory에서 사용하지 않는 import를 제거했습니다. [#11660](https://github.com/ClickHouse/ClickHouse/pull/11660) ([Bharat Nallan](https://github.com/bharatnc)).
* copier를 실행하는 인스턴스를 무작위로 샘플링하도록 추가했습니다. 이는 `Too many simultaneous queries` 오류를 방지하기 위해 필요합니다. 또한 timeout을 늘리고 장애 발생 확률을 낮췄습니다. [#11573](https://github.com/ClickHouse/ClickHouse/pull/11573) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 빠진 include를 수정했습니다. [#11525](https://github.com/ClickHouse/ClickHouse/pull/11525) ([Matwey V. Kornilov](https://github.com/matwey)).
* 오래된 예제 프로그램을 제거해 build 속도를 높였습니다. 또한 더 이상 참조되지 않는 기능 테스트도 일부 발견했습니다. [#11486](https://github.com/ClickHouse/ClickHouse/pull/11486) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* CI 빌드용 ccache 크기를 늘렸습니다. [#11450](https://github.com/ClickHouse/ClickHouse/pull/11450) ([alesapin](https://github.com/alesapin)).
* deb 빌드에서는 unit\_tests\_dbms만 남겼습니다. [#11429](https://github.com/ClickHouse/ClickHouse/pull/11429) ([Ilya Yatsishin](https://github.com/qoega)).
* librdkafka를 [1.4.2](https://github.com/edenhill/librdkafka/releases/tag/v1.4.2) 버전으로 업데이트했습니다. [#11256](https://github.com/ClickHouse/ClickHouse/pull/11256) ([filimonov](https://github.com/filimonov)).
* CMake 빌드 파일을 리팩터링했습니다. [#11390](https://github.com/ClickHouse/ClickHouse/pull/11390) ([Ivan](https://github.com/abyss7)).
* 간헐적으로 실패하던 통합 테스트 여러 건을 수정했습니다. [#11355](https://github.com/ClickHouse/ClickHouse/pull/11355) ([alesapin](https://github.com/alesapin)).
* UBSan으로 실행하는 단위 테스트 지원을 추가했습니다. [#11345](https://github.com/ClickHouse/ClickHouse/pull/11345) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 통합 테스트 `test_insertion_sync_fails_with_timeout`에서 중복된 timeout을 제거했습니다. [#11343](https://github.com/ClickHouse/ClickHouse/pull/11343) ([alesapin](https://github.com/alesapin)).
* clickhouse-test에서 멈춘 쿼리를 더 잘 감지합니다. [#11321](https://github.com/ClickHouse/ClickHouse/pull/11321) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* server가 디버그로 빌드되었거나 새니타이저를 사용해 빌드된 경우 경고를 표시합니다. [#11304](https://github.com/ClickHouse/ClickHouse/pull/11304) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 clickhouse-test는 테스트를 실행하기 전에 서버가 정상 동작 중인지 확인합니다. [#11285](https://github.com/ClickHouse/ClickHouse/pull/11285) ([alesapin](https://github.com/alesapin)).
* 간헐적으로 불안정할 수 있는 테스트 `00731_long_merge_tree_select_opened_files.sh`를 수정했습니다. 이 테스트는 자주 실패하지는 않지만, ThreadFuzzer로 실험하던 중 이 테스트에 잠재적인 경쟁 상태(race condition)가 있음을 발견했습니다: [#9814](https://github.com/ClickHouse/ClickHouse/issues/9814) 예시는 [link](https://clickhouse-test-reports.s3.yandex.net/9814/40e3023e215df22985d275bf85f4d2290897b76b/functional_stateless_tests_\(unbundled\).html#fail1)를 참조하십시오. [#11270](https://github.com/ClickHouse/ClickHouse/pull/11270) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `curl` 호출이 시간 초과되면 CI에서 테스트를 다시 실행합니다. 이는 CI infrastructure에서 일반적으로 발생하는 10초 이상의 시스템 멈춤 현상 때문일 수 있습니다. 이 변경으로 [#11267](https://github.com/ClickHouse/ClickHouse/issues/11267)이 수정되었습니다. [#11268](https://github.com/ClickHouse/ClickHouse/pull/11268) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* @donmikel의 Join table engine용 테스트를 추가했습니다. 이로써 [#9158](https://github.com/ClickHouse/ClickHouse/issues/9158)가 해결되었습니다. [#11265](https://github.com/ClickHouse/ClickHouse/pull/11265) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 단위 테스트의 몇 가지 사소한 오류를 수정했습니다. [#11262](https://github.com/ClickHouse/ClickHouse/pull/11262) ([alesapin](https://github.com/alesapin)).
* 이제 `cctz` 라이브러리의 링커 명령 일부가 다른 라이브러리와 섞이지 않습니다. [#11213](https://github.com/ClickHouse/ClickHouse/pull/11213) ([alesapin](https://github.com/alesapin)).
* /programs/server를 실제 실행 프로그램과 라이브러리로 분리했습니다. [#11186](https://github.com/ClickHouse/ClickHouse/pull/11186) ([Ivan](https://github.com/abyss7)).
* protobuf 및 gRPC의 빌드 스크립트 개선. [#11172](https://github.com/ClickHouse/ClickHouse/pull/11172) ([Vitaly Baranov](https://github.com/vitlibar)).
* 작동하지 않던 성능 테스트를 다시 활성화했습니다. [#11158](https://github.com/ClickHouse/ClickHouse/pull/11158) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테스트용 루트 S3 버킷은 CH 인스턴스를 시작하기 전에 먼저 생성합니다. [#11142](https://github.com/ClickHouse/ClickHouse/pull/11142) ([Pavel Kovalenko](https://github.com/Jokser)).
* 상수가 아닌 Polygon에 대한 성능 테스트를 추가했습니다. [#11141](https://github.com/ClickHouse/ClickHouse/pull/11141) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `00979_live_view_watch_continuous_aggregates` 테스트를 수정했습니다. [#11024](https://github.com/ClickHouse/ClickHouse/pull/11024) ([vzakaznikov](https://github.com/vzakaznikov)).
* integration tests에서 tmpfs 상에서 Zookeeper를 실행할 수 있도록 했습니다. [#11002](https://github.com/ClickHouse/ClickHouse/pull/11002) ([alesapin](https://github.com/alesapin)).
* 지수 백오프 방식으로 odbc-bridge를 기다리도록 했습니다. 이전의 200 ms 대기 시간은 CI 환경에서는 충분하지 않았습니다. [#10990](https://github.com/ClickHouse/ClickHouse/pull/10990) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 결정적이지 않은 테스트를 수정했습니다. [#10989](https://github.com/ClickHouse/ClickHouse/pull/10989) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 비어 있는 외부 데이터에 대한 테스트를 추가했습니다. [#10926](https://github.com/ClickHouse/ClickHouse/pull/10926) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 각 테스트마다 데이터베이스를 새로 생성합니다. 이렇게 하면 테스트 간 격리가 개선됩니다. [#10902](https://github.com/ClickHouse/ClickHouse/pull/10902) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 컬럼 관련 코드에 assert를 추가했습니다. [#10833](https://github.com/ClickHouse/ClickHouse/pull/10833) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 새니타이저와의 연동이 개선되었습니다. 새니타이저 실패 메시지에 query\_id 정보를 출력합니다. [#10832](https://github.com/ClickHouse/ClickHouse/pull/10832) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* "Split build smoke test" check의 명백한 race condition을 수정했습니다. [#10820](https://github.com/ClickHouse/ClickHouse/pull/10820) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MergeTreeIndexFullText의 (잘못된) MSan 보고를 수정했습니다. 이 문제는 [#9968](https://github.com/ClickHouse/ClickHouse/issues/9968)에서 처음 발생했습니다. [#10801](https://github.com/ClickHouse/ClickHouse/pull/10801) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* MariaDB Client 라이브러리에 MSan suppression을 추가했습니다. [#10800](https://github.com/ClickHouse/ClickHouse/pull/10800) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* GRPC make에서 protobuf 파일을 찾지 못해, 올바른 링크를 추가해 make 파일을 수정했습니다. [#10794](https://github.com/ClickHouse/ClickHouse/pull/10794) ([mnkonkova](https://github.com/mnkonkova)).
* base, utils, programs에 추가 경고(`-Weverything`)를 활성화했습니다. 대부분의 코드에는 이미 적용되어 있다는 점에 유의하세요. [#10779](https://github.com/ClickHouse/ClickHouse/pull/10779) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 라이브러리 경고 억제가 [#10396](https://github.com/ClickHouse/ClickHouse/issues/10396)에서 실수로 public으로 선언되었습니다. [#10776](https://github.com/ClickHouse/ClickHouse/pull/10776) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* [#10396](https://github.com/ClickHouse/ClickHouse/issues/10396)에서 실수로 삭제된 패치를 복원했습니다. [#10774](https://github.com/ClickHouse/ClickHouse/pull/10774) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 성능 테스트 오류 수정, 2부. [#10773](https://github.com/ClickHouse/ClickHouse/pull/10773) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 성능 테스트 오류를 수정했습니다. [#10766](https://github.com/ClickHouse/ClickHouse/pull/10766) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 크로스 빌드에 clang-10 컴파일러를 사용하도록 변경했습니다. [#10724](https://github.com/ClickHouse/ClickHouse/pull/10724) ([Ivan](https://github.com/abyss7)).
* RPM 패키지 설치 지침을 업데이트했습니다. 이 변경은 Denis(TG 로그인 @ldviolet)의 제안으로 이루어졌으며, Arkady Shejn이 구현했습니다. [#10707](https://github.com/ClickHouse/ClickHouse/pull/10707) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `tests/queries/0_stateless/01246_insert_into_watch_live_view.py` 테스트 수정 시도. [#10670](https://github.com/ClickHouse/ClickHouse/pull/10670) ([vzakaznikov](https://github.com/vzakaznikov)).
* 00979\_live\_view\_watch\_continuous\_aggregates.py 테스트를 수정하고 재활성화했습니다. [#10658](https://github.com/ClickHouse/ClickHouse/pull/10658) ([vzakaznikov](https://github.com/vzakaznikov)).
* ASan 스트레스 테스트의 OOM을 수정했습니다. [#10646](https://github.com/ClickHouse/ClickHouse/pull/10646) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clang-10으로 마이그레이션한 뒤 발생한 HashTable의 UBSan 리포트(nullptr에 0을 더하는 문제)를 수정했습니다. [#10638](https://github.com/ClickHouse/ClickHouse/pull/10638) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 컴파일 시 tzdata 처리 과정에서 `ld` (bfd) 링커에 대한 외부 호출을 제거했습니다. [#10634](https://github.com/ClickHouse/ClickHouse/pull/10634) ([alesapin](https://github.com/alesapin)).
* `lld`를 사용해 blob(리소스)을 링크할 수 있게 했습니다. [#10632](https://github.com/ClickHouse/ClickHouse/pull/10632) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LZ4` 라이브러리에서 UBSan이 보고한 문제를 수정했습니다. [#10631](https://github.com/ClickHouse/ClickHouse/pull/10631) ([alexey-milovidov](https://github.com/alexey-milovidov)). 관련 항목 [https://github.com/lz4/lz4/issues/857](https://github.com/lz4/lz4/issues/857)
* LZ4를 최신 dev 브랜치로 업데이트했습니다. [#10630](https://github.com/ClickHouse/ClickHouse/pull/10630) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 안정 버전 목록이 포함된 자동 생성된 기계 판독용 파일을 추가했습니다. [#10628](https://github.com/ClickHouse/ClickHouse/pull/10628) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `capnp::UnalignedFlatArrayMessageReader`용 `capnproto` 버전 확인 로직을 수정했습니다. [#10618](https://github.com/ClickHouse/ClickHouse/pull/10618) ([Matwey V. Kornilov](https://github.com/matwey)).
* 테스트 시 메모리 사용량 감소. [#10617](https://github.com/ClickHouse/ClickHouse/pull/10617) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 새로운 라이브 view 테스트의 하드코딩된 타임아웃을 수정했습니다. [#10604](https://github.com/ClickHouse/ClickHouse/pull/10604) ([vzakaznikov](https://github.com/vzakaznikov)).
* tests/queries/0\_stateless/helpers/client.py에서 클라이언트를 열 때 타임아웃 시간을 늘렸습니다. [#10599](https://github.com/ClickHouse/ClickHouse/pull/10599) ([vzakaznikov](https://github.com/vzakaznikov)).
* clang 빌드에 ThinLTO를 활성화했습니다. [#10435](https://github.com/ClickHouse/ClickHouse/pull/10435)의 후속 작업입니다. [#10585](https://github.com/ClickHouse/ClickHouse/pull/10585) ([Amos Bird](https://github.com/amosbird)).
* 퍼저를 추가하고 oss-fuzz 통합을 준비했습니다. [#10546](https://github.com/ClickHouse/ClickHouse/pull/10546) ([kyprizel](https://github.com/kyprizel)).
* FreeBSD 빌드를 수정했습니다. [#10150](https://github.com/ClickHouse/ClickHouse/pull/10150) ([Ivan](https://github.com/abyss7)).
* pytest 프레임워크를 사용하는 쿼리 테스트용 새 빌드를 추가했습니다. [#10039](https://github.com/ClickHouse/ClickHouse/pull/10039) ([Ivan](https://github.com/abyss7)).

<div id="clickhouse-release-v204">
  ## ClickHouse 릴리스 v20.4
</div>

<div id="clickhouse-release-v204899-stable-2020-08-10">
  ### ClickHouse 릴리스 v20.4.8.99-안정 2020-08-10
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 인수로 Unix timestamp를 전달할 때 `parseDateTimeBestEffort` 함수에서 발생하던 오류를 수정했습니다. 이로써 [#13362](https://github.com/ClickHouse/ClickHouse/issues/13362)가 해결됩니다. [#13441](https://github.com/ClickHouse/ClickHouse/pull/13441) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* NaN 값이 있는 Float 타입에 대해 `uniqExact`, `topK`, `sumDistinct` 및 유사한 집계 함수를 호출할 때 발생할 수 있던 성능 저하와 다소 부정확한 결과 문제를 수정했습니다. 또한 디버그 build에서 assert가 트리거되던 문제도 수정했습니다. 이 변경으로 [#12491](https://github.com/ClickHouse/ClickHouse/issues/12491)이 해결되었습니다. [#13254](https://github.com/ClickHouse/ClickHouse/pull/13254) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 리터럴 NULL이 아닌 cond로 널 허용 constexpr를 사용할 때 발생하던 if 함수 문제가 수정되었습니다. [#12463](https://github.com/ClickHouse/ClickHouse/issues/12463)를 수정했습니다. [#13226](https://github.com/ClickHouse/ClickHouse/pull/13226) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 배열 요소가 널 허용이고 배열 첨자도 널 허용인 경우 `arrayElement` 함수에서 발생하던 assert를 수정했습니다. 이 수정으로 [#12172](https://github.com/ClickHouse/ClickHouse/issues/12172) 문제도 해결되었습니다. [#13224](https://github.com/ClickHouse/ClickHouse/pull/13224) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 함수 사용 시 잘못된 인덱스 분석이 이루어지던 문제를 수정했습니다. 이 문제로 인해 `MergeTree` 테이블을 읽는 동안 잘못된 파트가 프루닝될 수 있었습니다. [#13060](https://github.com/ClickHouse/ClickHouse/issues/13060)을 수정했습니다. [#12406](https://github.com/ClickHouse/ClickHouse/issues/12406)을 수정했습니다. [#13081](https://github.com/ClickHouse/ClickHouse/pull/13081) ([Anton Popov](https://github.com/CurtizJ)).
* 로컬 레플리카에서 SELECT를 수행할 때 스레드 수에 적용되던 불필요한 제한을 수정했습니다. [#12840](https://github.com/ClickHouse/ClickHouse/pull/12840) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `WITH TOTALS` 쿼리에서 데이터에 추가 오버플로우 행이 나타날 수 있는 문제를 수정했습니다. [#12747](https://github.com/ClickHouse/ClickHouse/pull/12747) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 큰 튜플이 `IN` 절에서 함수로 해석될 때의 성능을 개선했습니다. 즉, 어떤 이유에서인지 사용자가 `WHERE x IN (1, 2, ...)` 대신 `WHERE x IN tuple(1, 2, ...)`를 작성하는 경우입니다. [#12700](https://github.com/ClickHouse/ClickHouse/pull/12700) ([Anton Popov](https://github.com/CurtizJ)).
* `input_format_parallel_parsing`의 메모리 추적을 수정했습니다(스레드를 그룹에 연결하여 해결). [#12672](https://github.com/ClickHouse/ClickHouse/pull/12672) ([Azat Khuzhin](https://github.com/azat)).
* 하위 쿼리에 WITH 절이 포함된 경우에도 push predicate를 허용하도록 [#12293](https://github.com/ClickHouse/ClickHouse/issues/12293)를 수정했습니다. [#12663](https://github.com/ClickHouse/ClickHouse/pull/12663) ([Winter Zhang](https://github.com/zhang2014)).
* const 표현식이 포함된 블룸 필터 인덱스 수정 관련 [#10572](https://github.com/ClickHouse/ClickHouse/issues/10572) 문제를 해결했습니다. [#12659](https://github.com/ClickHouse/ClickHouse/pull/12659) ([Winter Zhang](https://github.com/zhang2014)).
* broker를 사용할 수 없을 때를 비롯한 여러 상황에서 `StorageKafka`에 발생하던 `SIGSEGV`를 수정했습니다. [#12658](https://github.com/ClickHouse/ClickHouse/pull/12658) ([Azat Khuzhin](https://github.com/azat)).
* `Array(UUID)` 인수를 사용하는 함수 `if` 지원이 추가되었습니다. 이로써 [#11066](https://github.com/ClickHouse/ClickHouse/issues/11066)가 수정되었습니다. [#12648](https://github.com/ClickHouse/ClickHouse/pull/12648) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 서버 충돌로 이어질 수 있던 cache 레이아웃을 사용하는 외부 딕셔너리의 경쟁 상태 문제를 수정했습니다. [#12566](https://github.com/ClickHouse/ClickHouse/pull/12566) ([alesapin](https://github.com/alesapin)).
* DROP TABLE 시 분산 테이블의 데이터(async INSERT의 블록)를 삭제하도록 했습니다. [#12556](https://github.com/ClickHouse/ClickHouse/pull/12556) ([Azat Khuzhin](https://github.com/azat)).
* `enable_mixed_granularity_parts=1`일 때 `ALTER DELETE` 쿼리 이후 기존 파트가 손상되는 버그를 수정했습니다. [#12536](https://github.com/ClickHouse/ClickHouse/issues/12536)을 해결했습니다. [#12543](https://github.com/ClickHouse/ClickHouse/pull/12543) ([alesapin](https://github.com/alesapin)).
* 인수 개수가 잘못된 함수 `in`에 대해 더 나은 예외를 제공합니다. [#12529](https://github.com/ClickHouse/ClickHouse/pull/12529) ([Anton Popov](https://github.com/CurtizJ)).
* compact 파트를 읽을 때 발생하던 성능 문제를 수정했습니다. [#12492](https://github.com/ClickHouse/ClickHouse/pull/12492) ([Anton Popov](https://github.com/CurtizJ)).
* 딕셔너리 키 표현식을 대상으로 조인할 때 발생하던 딕셔너리 JOIN 크래시를 수정했습니다: `t JOIN dict ON expr(dict.id) = t.id`. 이 경우에는 딕셔너리 JOIN 최적화를 비활성화했습니다. [#12458](https://github.com/ClickHouse/ClickHouse/pull/12458) ([Artem Zuikov](https://github.com/4ertus2)).
* StorageMerge에서 발생할 수 있던 segfault를 수정했습니다. [#12054](https://github.com/ClickHouse/ClickHouse/issues/12054)를 해결했습니다. [#12401](https://github.com/ClickHouse/ClickHouse/pull/12401) ([tavplubix](https://github.com/tavplubix)).
* `WITH FILL` 수정자에서 컬럼 순서를 수정했습니다. 이전에는 `ORDER BY` 절의 컬럼 순서가 반영되지 않았습니다. [#12306](https://github.com/ClickHouse/ClickHouse/pull/12306) ([Anton Popov](https://github.com/CurtizJ)).
* 가상 컬럼(예: `Merge` 테이블의 `_table`) 또는 시스템 테이블의 "index" 컬럼으로 데이터를 필터링하는 표현식(예: `system.tables`를 쿼리할 때 데이터베이스 이름으로 필터링하는 경우)이 `널 허용` 유형을 반환할 때 발생하는 "bad cast" 예외를 방지합니다. 이 변경으로 [#12166](https://github.com/ClickHouse/ClickHouse/issues/12166)가 수정되었습니다. [#12305](https://github.com/ClickHouse/ClickHouse/pull/12305) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* TrieDictionary 로드에 실패한 후 오류를 표시하도록 했습니다. [#12290](https://github.com/ClickHouse/ClickHouse/pull/12290) ([Vitaly Baranov](https://github.com/vitlibar)).
* `arrayFill` 함수가 빈 배열에서 잘못 동작해 충돌이 발생할 수 있었습니다. 이 수정으로 [#12263](https://github.com/ClickHouse/ClickHouse/issues/12263)가 해결되었습니다. [#12279](https://github.com/ClickHouse/ClickHouse/pull/12279) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCardinality` 타입에 대해 공통 타입으로 변환하는 기능을 구현했습니다. 이제 LowCardinality 컬럼과 다른 컬럼이 있는 테이블에 대해 UNION ALL을 실행할 수 있습니다. 이로써 [#8212](https://github.com/ClickHouse/ClickHouse/issues/8212) 문제가 수정되었습니다. 이로써 [#4342](https://github.com/ClickHouse/ClickHouse/issues/4342) 문제가 수정되었습니다. [#12275](https://github.com/ClickHouse/ClickHouse/pull/12275) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `StorageFile`에서 여러 차례 연속으로 `삽입`할 때 일부 특수 타입의 헤더가 여러 번 기록되던 문제를 수정했습니다. 이로써 [#6155](https://github.com/ClickHouse/ClickHouse/issues/6155)가 해결되었습니다. [#12197](https://github.com/ClickHouse/ClickHouse/pull/12197) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* UInt8 값이 0이나 1이 아닐 때의 논리 함수를 수정했습니다. [#12196](https://github.com/ClickHouse/ClickHouse/pull/12196) ([Alexander Kazakov](https://github.com/Akazz)).
* max\_memory\_usage\*의 상한을 프로세스 상주 메모리에 맞춥니다. [#12182](https://github.com/ClickHouse/ClickHouse/pull/12182) ([Azat Khuzhin](https://github.com/azat)).
* GROUP BY에서 단사 함수 제거 시 `dictGet` 인수 검사를 수정했습니다. [#12179](https://github.com/ClickHouse/ClickHouse/pull/12179) ([Azat Khuzhin](https://github.com/azat)).
* 스키마를 지원하지 않는 ODBC 연결에서는 딕셔너리 소스의 테이블 이름을 스키마와 테이블 이름으로 나누지 않습니다. [#12165](https://github.com/ClickHouse/ClickHouse/pull/12165) ([Vitaly Baranov](https://github.com/vitlibar)).
* 조건이 NULL로 평가될 때 레코드가 삭제되던 `ALTER DELETE`의 잘못된 로직을 수정했습니다. 이로써 [#9088](https://github.com/ClickHouse/ClickHouse/issues/9088)이 해결되었습니다. 이로써 [#12106](https://github.com/ClickHouse/ClickHouse/issues/12106)이 종료되었습니다. [#12153](https://github.com/ClickHouse/ClickHouse/pull/12153) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭이 있을 때 외부 DBMS(예: MySQL, ODBC)로 전송할 쿼리 변환을 수정했습니다. 이로써 [#12032](https://github.com/ClickHouse/ClickHouse/issues/12032) 문제가 해결되었습니다. [#12151](https://github.com/ClickHouse/ClickHouse/pull/12151) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 정수 나눗셈에서 발생할 수 있는 오버플로우를 해결했습니다. 이로써 [#12119](https://github.com/ClickHouse/ClickHouse/issues/12119) 문제가 수정되었습니다. [#12140](https://github.com/ClickHouse/ClickHouse/pull/12140) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `greatCircleDistance`, `geoDistance`에서 발생할 수 있는 무한 루프 문제를 수정했습니다. 이 수정으로 [#12117](https://github.com/ClickHouse/ClickHouse/issues/12117)이 해결됩니다. [#12137](https://github.com/ClickHouse/ClickHouse/pull/12137) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* "pid" 파일 처리 방식을 정리했습니다. 이전 버전에서는 server가 정상적으로 종료되지 않은 채 강제 종료되었고, 이전에 실행되던 server와 동일한 pid를 가진 다른 프로세스가 있는 경우 server가 시작을 거부할 수 있었습니다. 또한 server 시작에 실패한 경우에도 다른 server가 실행 중이면 pid 파일이 삭제될 수 있었습니다. 이 변경으로 [#3501](https://github.com/ClickHouse/ClickHouse/issues/3501)이 수정되었습니다. [#12133](https://github.com/ClickHouse/ClickHouse/pull/12133) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 딕셔너리에 대한 `ENGINE=Dictionary` 테이블의 종속성 처리 방식을 수정했습니다. 이로써 [#10994](https://github.com/ClickHouse/ClickHouse/issues/10994)가 해결되었습니다. 이로써 [#10397](https://github.com/ClickHouse/ClickHouse/issues/10397)가 해결되었습니다. [#12116](https://github.com/ClickHouse/ClickHouse/pull/12116) ([Vitaly Baranov](https://github.com/vitlibar)).
* 총 스레드 수 상한이 잘못 설정되어 발생한 `UNION`이 포함된 SELECT 쿼리의 성능 문제를 수정했습니다. [#12030](https://github.com/ClickHouse/ClickHouse/issues/12030)을 수정했습니다. [#12103](https://github.com/ClickHouse/ClickHouse/pull/12103) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `-StateResample` combinator에서 발생하던 세그폴트를 수정했습니다. [#12092](https://github.com/ClickHouse/ClickHouse/pull/12092) ([Anton Popov](https://github.com/CurtizJ)).
* SELECT 쿼리에서 `system.quey_log`의 비어 있던 `result_rows` 및 `result_bytes` 메트릭을 수정했습니다. [#11595](https://github.com/ClickHouse/ClickHouse/issues/11595)를 해결합니다. [#12089](https://github.com/ClickHouse/ClickHouse/pull/12089) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `VIEW`에서 select를 수행할 때 스레드 수를 불필요하게 제한하던 문제를 수정했습니다. [#11937](https://github.com/ClickHouse/ClickHouse/issues/11937) 문제를 수정했습니다. [#12085](https://github.com/ClickHouse/ClickHouse/pull/12085) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `PREWHERE`에 잘못된 타입을 사용할 때 발생할 수 있던 크래시를 수정했습니다. [#12053](https://github.com/ClickHouse/ClickHouse/issues/12053), [#12060](https://github.com/ClickHouse/ClickHouse/issues/12060)를 해결했습니다. [#12060](https://github.com/ClickHouse/ClickHouse/pull/12060) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LowCardinality` 유형에서 함수 `defaultValueOfArgumentType` 사용 시 발생하던 오류 `Expected single dictionary argument for function`를 수정했습니다. [#11808](https://github.com/ClickHouse/ClickHouse/issues/11808). [#12056](https://github.com/ClickHouse/ClickHouse/pull/12056) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Tuple(LowCardinality)` 인수를 사용하는 고차 함수에서 `Cannot capture column` 오류를 수정했습니다. [#9766](https://github.com/ClickHouse/ClickHouse/issues/9766)를 해결했습니다. [#12055](https://github.com/ClickHouse/ClickHouse/pull/12055) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 데이터베이스를 로드할 때 테이블 메타데이터를 병렬로 파싱합니다. 이를 통해 테이블 수가 많을 때 서버 시작이 느려지는 문제를 해결합니다. [#12045](https://github.com/ClickHouse/ClickHouse/pull/12045) ([tavplubix](https://github.com/tavplubix)).
* Enum 타입에서는 `topK` 집계 함수가 Enum을 반환하도록 수정했습니다. 이로써 [#3740](https://github.com/ClickHouse/ClickHouse/issues/3740)이 해결되었습니다. [#12043](https://github.com/ClickHouse/ClickHouse/pull/12043) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 제약 조건이 상수 표현식인지 확인하는 검사를 수정했습니다. 이 수정은 [#11360](https://github.com/ClickHouse/ClickHouse/issues/11360)을 해결합니다. [#12042](https://github.com/ClickHouse/ClickHouse/pull/12042) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Nullable` 컬럼이 포함된 튜플의 잘못된 비교를 수정했습니다. [#11985](https://github.com/ClickHouse/ClickHouse/issues/11985)를 해결했습니다. [#12039](https://github.com/ClickHouse/ClickHouse/pull/12039) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* allow\_introspection\_functions=0일 때 접근 권한 계산이 올바르게 이루어지도록 수정했습니다. [#12031](https://github.com/ClickHouse/ClickHouse/pull/12031) ([Vitaly Baranov](https://github.com/vitlibar)).
* 크기가 서로 다른 `FixedString` 유형의 인수로 함수 `if`를 호출할 때 발생할 수 있던 잘못된 결과와 잠재적 충돌을 수정했습니다. 이 수정으로 [#11362](https://github.com/ClickHouse/ClickHouse/issues/11362)가 해결됩니다. [#12021](https://github.com/ClickHouse/ClickHouse/pull/12021) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `neighbor` 함수를 유일한 반환 표현식으로 사용하는 쿼리에서, 함수가 offset `-9223372036854775808`로 호출되면 결과가 비어 있을 수 있습니다. 이 변경으로 [#11367](https://github.com/ClickHouse/ClickHouse/issues/11367)이 수정되었습니다. [#12019](https://github.com/ClickHouse/ClickHouse/pull/12019) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* allow\_ddl=0일 때 접근 권한 계산이 올바르게 이루어지도록 수정했습니다. [#12015](https://github.com/ClickHouse/ClickHouse/pull/12015) ([Vitaly Baranov](https://github.com/vitlibar)).
* 충돌을 유발할 수 있는 generateRandom의 잠재적 배열 크기 오버플로우를 수정했습니다. 이로써 [#11371](https://github.com/ClickHouse/ClickHouse/issues/11371)이 해결됩니다. [#12013](https://github.com/ClickHouse/ClickHouse/pull/12013) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 발생할 수 있는 부동소수점 예외를 수정했습니다. 이로써 [#11378](https://github.com/ClickHouse/ClickHouse/issues/11378) 문제가 해결되었습니다. [#12005](https://github.com/ClickHouse/ClickHouse/pull/12005) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 서버 시작 시 출력되는 로그 메시지의 잘못된 설정 이름을 수정했습니다. [#11997](https://github.com/ClickHouse/ClickHouse/pull/11997) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Values` 포맷에서 `Query parameter was not set` 문제가 수정되었습니다. [#11918](https://github.com/ClickHouse/ClickHouse/issues/11918)이 해결되었습니다. [#11936](https://github.com/ClickHouse/ClickHouse/pull/11936) ([tavplubix](https://github.com/tavplubix)).
* 매개변수화된 쿼리에서 치환용 별칭을 유지합니다. 이로써 [#11914](https://github.com/ClickHouse/ClickHouse/issues/11914)가 수정됩니다. [#11916](https://github.com/ClickHouse/ClickHouse/pull/11916) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 기본 스토리지 정책에서 다른 정책으로 변경할 때 이동 작업이 수행되지 않던 버그를 수정했습니다. [#11893](https://github.com/ClickHouse/ClickHouse/pull/11893) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `DateTime64`를 parsing하는 중 발생할 수 있는 잠재적 부동소수점 예외를 수정했습니다. 이 변경으로 [#11374](https://github.com/ClickHouse/ClickHouse/issues/11374)가 해결됩니다. [#11875](https://github.com/ClickHouse/ClickHouse/pull/11875) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* HTTP 인터페이스를 통한 메모리 사용량 계산을 수정했습니다(`wait_end_of_query=1` 사용 시 영향이 클 수 있습니다). [#11840](https://github.com/ClickHouse/ClickHouse/pull/11840) ([Azat Khuzhin](https://github.com/azat)).
* 동일한지 확인하기 전에 ZooKeeper에 저장된 메타데이터를 파싱합니다. [#11739](https://github.com/ClickHouse/ClickHouse/pull/11739) ([Azat Khuzhin](https://github.com/azat)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 리터럴이 포함된 `IN` 연산자에서 인덱스가 사용되지 않아 발생하던 문제로 인해, v19.3 무렵에 도입된 성능 회귀를 수정했습니다. 이 변경으로 [#10574](https://github.com/ClickHouse/ClickHouse/issues/10574)가 해결됩니다. [#12062](https://github.com/ClickHouse/ClickHouse/pull/12062) ([nvartolomei](https://github.com/nvartolomei)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* Dockerfile에서 첫 번째 `apt-get update`를 실행하기 전에 `ca-certificates`를 설치합니다. [#12095](https://github.com/ClickHouse/ClickHouse/pull/12095) ([Ivan Blinkov](https://github.com/blinkov)).

<div id="clickhouse-release-v204653-stable-2020-06-25">
  ### ClickHouse 릴리스 v20.4.6.53-안정 2020-06-25
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* prewhere 조건에서 `Nullable` 컬럼을 사용할 때 드물게 발생하던 크래시를 수정했습니다. [#11608](https://github.com/ClickHouse/ClickHouse/issues/11608)의 후속입니다. [#11869](https://github.com/ClickHouse/ClickHouse/pull/11869) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 고차 함수 내부에서는 arrayJoin을 허용하지 않습니다. 이로 인해 프로토콜 동기화가 깨지는 문제가 있었습니다. 이 변경으로 [#3933](https://github.com/ClickHouse/ClickHouse/issues/3933)을 해결합니다. [#11846](https://github.com/ClickHouse/ClickHouse/pull/11846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* FixedString과 상수 String을 비교할 때 잘못된 결과가 반환되던 문제를 수정했습니다. 이 수정으로 [#11393](https://github.com/ClickHouse/ClickHouse/issues/11393) 문제가 해결됩니다. 이 버그는 버전 20.4에서 발생했습니다. [#11828](https://github.com/ClickHouse/ClickHouse/pull/11828) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 조건에 NULL이 포함된 경우 `if()`가 잘못된 결과를 반환하던 문제를 수정했습니다. [#11807](https://github.com/ClickHouse/ClickHouse/pull/11807) ([Artem Zuikov](https://github.com/4ertus2)).
* 쿼리에 과도하게 많은 스레드를 사용하는 문제를 수정했습니다. [#11788](https://github.com/ClickHouse/ClickHouse/pull/11788) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 오류가 발생해야 했지만 성공하던 `SELECT *, xyz.*`와 같은 쿼리의 예기치 않은 동작을 수정했습니다. [#11753](https://github.com/ClickHouse/ClickHouse/pull/11753) ([hexiaoting](https://github.com/hexiaoting)).
* 이제 메타데이터를 변경하는 동안 복제 fetch 작업이 취소됩니다. [#11744](https://github.com/ClickHouse/ClickHouse/pull/11744) ([alesapin](https://github.com/alesapin)).
* Values 입력 형식에서 복합 리터럴의 타입을 잘못 추론해 발생한 LOGICAL\_ERROR를 수정했습니다. [#11732](https://github.com/ClickHouse/ClickHouse/pull/11732) ([tavplubix](https://github.com/tavplubix)).
* const 컬럼에서의 `ORDER BY ... WITH FILL` 문제를 수정했습니다. [#11697](https://github.com/ClickHouse/ClickHouse/pull/11697) ([Anton Popov](https://github.com/CurtizJ)).
* XDBC bridge와 통신할 때 적절한 timeout을 전달하도록 수정했습니다. 최근 bridge의 상태 확인과 메타 정보 수신 시 timeout이 제대로 적용되지 않았습니다. [#11690](https://github.com/ClickHouse/ClickHouse/pull/11690) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭이 포함된 `ORDER BY` 절과 함께 `LIMIT n WITH TIES`를 사용할 때 발생하던 문제를 수정했습니다. [#11689](https://github.com/ClickHouse/ClickHouse/pull/11689) ([Anton Popov](https://github.com/CurtizJ)).
* `system.mutations`가 잘못된 상태가 되는 오류를 수정했습니다. 전체 뮤테이션이 이미 완료된 것으로 표시될 수 있지만, 서버에는 여전히 복제 큐에 `MUTATE_PART` 작업이 남아 있어 이를 계속 실행하려고 시도합니다. 이 수정은 [#11611](https://github.com/ClickHouse/ClickHouse/issues/11611)을 해결합니다. [#11681](https://github.com/ClickHouse/ClickHouse/pull/11681) ([alesapin](https://github.com/alesapin)).
* 대소문자를 구분하지 않는 플래그가 적용된 정규식 지원을 추가했습니다. 이로써 [#11101](https://github.com/ClickHouse/ClickHouse/issues/11101) 및 [#11506](https://github.com/ClickHouse/ClickHouse/issues/11506) 문제가 수정되었습니다. [#11649](https://github.com/ClickHouse/ClickHouse/pull/11649) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 행 수준 보안이 설정된 경우 단순 `count` 쿼리 최적화를 제거했습니다. 이전 버전에서는 필터링된 개수 대신 테이블의 전체 레코드 수가 반환되었습니다. 이 수정은 [#11352](https://github.com/ClickHouse/ClickHouse/issues/11352)를 해결합니다. [#11644](https://github.com/ClickHouse/ClickHouse/pull/11644) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* String용 블룸 필터(데이터 스키핑 인덱스)를 수정했습니다. [#11638](https://github.com/ClickHouse/ClickHouse/pull/11638) ([Azat Khuzhin](https://github.com/azat)).
* `널 허용` 컬럼을 prewhere 조건에서 사용할 때 드물게 발생하던 크래시를 수정했습니다. (아마도 [#11572](https://github.com/ClickHouse/ClickHouse/issues/11572)와 어떤 식으로든 관련이 있는 것으로 보입니다). [#11608](https://github.com/ClickHouse/ClickHouse/pull/11608) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Buffer` 테이블에서 읽는 샘플링 쿼리에서 발생하던 `Block structure mismatch` 오류를 수정했습니다. [#11602](https://github.com/ClickHouse/ClickHouse/pull/11602) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* exception.code() % 256 = 0일 때 clickhouse-client의 종료 코드가 잘못되는 문제를 수정했습니다. [#11601](https://github.com/ClickHouse/ClickHouse/pull/11601) ([filimonov](https://github.com/filimonov)).
* 서버 시작 시 표시되는 "마크 캐시 크기가 줄어들었습니다" 로그 메시지의 사소한 오류를 수정했습니다. 이로써 [#11399](https://github.com/ClickHouse/ClickHouse/issues/11399)가 해결되었습니다. [#11589](https://github.com/ClickHouse/ClickHouse/pull/11589) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `PREWHERE column in (subquery)` 및 `ARRAY JOIN`이 포함된 쿼리에서 `Size of offsets does not match size of column` 오류를 수정했습니다. [#11580](https://github.com/ClickHouse/ClickHouse/pull/11580) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `SHOW CREATE TABLE`에서 드물게 발생하던 segfault를 수정했습니다. [#11490](https://github.com/ClickHouse/ClickHouse/issues/11490)를 해결합니다. [#11579](https://github.com/ClickHouse/ClickHouse/pull/11579) ([tavplubix](https://github.com/tavplubix)).
* HTTP session의 모든 쿼리가 동일한 query\_id를 가지던 문제가 수정되었습니다. [#11578](https://github.com/ClickHouse/ClickHouse/pull/11578) ([tavplubix](https://github.com/tavplubix)).
* 이제 clickhouse-server docker container는 서버 가동 상태를 확인할 때 IPv6를 우선 사용합니다. [#11550](https://github.com/ClickHouse/ClickHouse/pull/11550) ([Ivan Starkov](https://github.com/istarkov)).
* `<node>`의 shard\_num/replica\_num을 수정했습니다(use\_compact\_format\_in\_distributed\_parts\_names를 깨뜨리던 문제). [#11528](https://github.com/ClickHouse/ClickHouse/pull/11528) ([Azat Khuzhin](https://github.com/azat)).
* 테이블 삭제 중 예외가 발생할 수 있는 경쟁 상태를 수정했습니다. 다소 까다로운 문제이지만 전혀 위험하지는 않습니다. 설명이 필요하면 Telegram으로 알려 주십시오. [#11523](https://github.com/ClickHouse/ClickHouse/pull/11523) ([alesapin](https://github.com/alesapin)).
* -State 함수로 집계하는 중간에 예외가 발생할 때 생기던 메모리 누수를 수정했습니다. 이 변경으로 [#8995](https://github.com/ClickHouse/ClickHouse/issues/8995)가 해결되었습니다. [#11496](https://github.com/ClickHouse/ClickHouse/pull/11496) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 데이터 스키핑 인덱스가 백그라운드 머지 중 수정되는 컬럼(SummingMergeTree, AggregatingMergeTree, TTL GROUP BY)에 의존하는 경우 잘못 계산되던 문제가 있었습니다. 이 문제는 인덱스 계산을 머지 이후로 옮겨, 머지된 데이터를 기준으로 인덱스를 계산하도록 수정했습니다. [#11162](https://github.com/ClickHouse/ClickHouse/pull/11162) ([Azat Khuzhin](https://github.com/azat)).
* 오래된 libunwind 패치를 제거했습니다. [https://github.com/ClickHouse-Extras/libunwind/commit/500aa227911bd185a94bfc071d68f4d3b03cb3b1#r39048012](https://github.com/ClickHouse-Extras/libunwind/commit/500aa227911bd185a94bfc071d68f4d3b03cb3b1#r39048012) 이로써 `clang` builds에서 `-fno-omit-frame-pointer`를 비활성화할 수 있게 되어 평균적으로 성능이 최소 1% 향상됩니다. [#10761](https://github.com/ClickHouse/ClickHouse/pull/10761) ([Amos Bird](https://github.com/amosbird)).
* 함수로 감싼 기본 키(primary key)를 사용할 때 'FINAL' 수정자 및 'ORDER BY' 최적화와 관련된 문제를 수정했습니다. [#10715](https://github.com/ClickHouse/ClickHouse/pull/10715) ([Anton Popov](https://github.com/CurtizJ)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 단위 테스트의 사소한 오류 여러 건을 수정했습니다. [#11262](https://github.com/ClickHouse/ClickHouse/pull/11262) ([alesapin](https://github.com/alesapin)).
* MergeTreeIndexFullText의 MSan 오탐 보고를 수정했습니다. 이 문제는 [#9968](https://github.com/ClickHouse/ClickHouse/issues/9968)에서 처음 나타났습니다. [#10801](https://github.com/ClickHouse/ClickHouse/pull/10801) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="clickhouse-release-v204536-stable-2020-06-10">
  ### ClickHouse 릴리스 v20.4.5.36-안정 2020-06-10
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `min_bytes_to_use_direct_io`가 활성화된 상태에서 PREWHERE를 사용하고, SAMPLE 또는 많은 수의 스레드를 사용하는 경우 발생할 수 있는 `Data compressed with different methods` 오류를 수정했습니다. 이 수정으로 [#11539](https://github.com/ClickHouse/ClickHouse/issues/11539)가 해결됩니다. [#11540](https://github.com/ClickHouse/ClickHouse/pull/11540) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 코덱의 압축된 크기가 반환되도록 수정했습니다. [#11448](https://github.com/ClickHouse/ClickHouse/pull/11448) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 압축 코덱에 리터럴이 아닌 인수가 지정된 컬럼(column)에서 서버가 비정상 종료되던 문제를 수정했습니다. [#11365](https://github.com/ClickHouse/ClickHouse/issues/11365)를 해결합니다. [#11431](https://github.com/ClickHouse/ClickHouse/pull/11431) ([alesapin](https://github.com/alesapin)).
* 점이 `nan`인 경우 `pointInPolygon`을 수정했습니다. [#11375](https://github.com/ClickHouse/ClickHouse/issues/11375)를 해결합니다. [#11421](https://github.com/ClickHouse/ClickHouse/pull/11421) ([Alexey Ilyukhov](https://github.com/livace)).
* 테이블이 성공적으로 생성되지 않은 경우 MergeTree 종료 시 초기화되지 않은 메모리를 읽을 수 있는 잠재적 문제를 수정했습니다. [#11420](https://github.com/ClickHouse/ClickHouse/pull/11420) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 위도/경도 범위를 벗어나는 인수에 대해 `geohashesInBox`를 수정했습니다. [#11403](https://github.com/ClickHouse/ClickHouse/pull/11403) ([Vasily Nemkov](https://github.com/Enmk)).
* 외부 정렬과 limit가 있는 쿼리에서 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#11359](https://github.com/ClickHouse/ClickHouse/issues/11359)을 해결합니다. [#11366](https://github.com/ClickHouse/ClickHouse/pull/11366) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ReplicatedMergeTree에서 파트 전송 시 불필요한 잠금을 제거했습니다. [#11354](https://github.com/ClickHouse/ClickHouse/pull/11354) ([alesapin](https://github.com/alesapin)).
* 멀티라인 모드에서 clickhouse-client의 `\G`(세로 출력) 지원 문제를 수정했습니다. 이로써 [#9933](https://github.com/ClickHouse/ClickHouse/issues/9933) 문제가 해결되었습니다. [#11350](https://github.com/ClickHouse/ClickHouse/pull/11350) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Lazy` 데이터베이스 사용 시 발생할 수 있는 segfault 문제를 수정했습니다. [#11348](https://github.com/ClickHouse/ClickHouse/pull/11348) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `quantilesExactWeightedArray`의 크래시를 수정했습니다. [#11337](https://github.com/ClickHouse/ClickHouse/pull/11337) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 이제 `ALTER` 쿼리에서 메타데이터를 변경하기 전에 머지가 중지됩니다. [#11335](https://github.com/ClickHouse/ClickHouse/pull/11335) ([alesapin](https://github.com/alesapin)).
* `parallel_view_processing = 1` 설정 시 `MATERIALIZED VIEW`에 대한 쓰기가 다시 병렬로 수행되도록 했습니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#11330](https://github.com/ClickHouse/ClickHouse/pull/11330) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 추출된 JSON에 짝이 맞지 않는 \{ 또는 \[가 포함된 문자열이 있는 경우 `visitParamExtractRaw`를 수정했습니다. [#11318](https://github.com/ClickHouse/ClickHouse/pull/11318) ([Ewout](https://github.com/devwout)).
* ThreadPool에서 매우 드물게 발생하는 레이스 컨디션을 수정했습니다. [#11314](https://github.com/ClickHouse/ClickHouse/pull/11314) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clickhouse-copier의 사소한 데이터 레이스를 수정했습니다. 통합 테스트에서 발견되었습니다. [#11313](https://github.com/ClickHouse/ClickHouse/pull/11313) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 변환 과정에서 초기화되지 않은 메모리가 사용될 가능성을 수정했습니다. 예시: `SELECT toIntervalSecond(now64())`. [#11311](https://github.com/ClickHouse/ClickHouse/pull/11311) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블의 프라이머리 키에 배열 컬럼이 포함되어 있고, 쿼리에서 `empty` 또는 `notEmpty` 함수로 이 컬럼을 필터링할 때 인덱스 분석이 작동하지 않는 문제를 수정했습니다. 이 수정으로 [#11286](https://github.com/ClickHouse/ClickHouse/issues/11286) 문제가 해결됩니다. [#11303](https://github.com/ClickHouse/ClickHouse/pull/11303) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `max_network_bandwidth`, `max_execution_speed` 또는 `priority` 설정으로 인해 쿼리 속도가 제한되면, 쿼리 속도 추정이 부정확해지고 `min_execution_speed` 제한이 적용되지 않거나 잘못 적용될 수 있던 버그를 수정했습니다. 또한 `timeout_before_checking_execution_speed`의 기본값을 0이 아닌 값으로 변경했습니다. 그렇지 않으면 `min_execution_speed` 및 `max_execution_speed` 설정이 아무런 효과가 없기 때문입니다. 이로써 [#11297](https://github.com/ClickHouse/ClickHouse/issues/11297)이 수정되었습니다. 이로써 [#5732](https://github.com/ClickHouse/ClickHouse/issues/5732)가 수정되었습니다. 이로써 [#6228](https://github.com/ClickHouse/ClickHouse/issues/6228)가 수정되었습니다. 사용성 개선: `clickhouse-client`에서 예외 메시지가 진행률 표시줄과 이어 붙지 않도록 했습니다. [#11296](https://github.com/ClickHouse/ClickHouse/pull/11296) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 잘못된 인수로 SET DEFAULT ROLE을 호출할 때 발생하던 충돌을 수정했습니다. 이로써 [#10586](https://github.com/ClickHouse/ClickHouse/issues/10586)가 해결되었습니다. [#11278](https://github.com/ClickHouse/ClickHouse/pull/11278) ([Vitaly Baranov](https://github.com/vitlibar)).
* Protobuf 형식의 비정상 데이터를 읽는 중 발생하던 충돌을 수정했습니다. 이로써 [#5957](https://github.com/ClickHouse/ClickHouse/issues/5957) 및 [#11203](https://github.com/ClickHouse/ClickHouse/issues/11203) 문제가 해결되었습니다. [#11258](https://github.com/ClickHouse/ClickHouse/pull/11258) ([Vitaly Baranov](https://github.com/vitlibar)).
* cache 딕셔너리가 정상적인 값 대신 기본값을 반환할 수 있던 버그를 수정했습니다(만료된 키만 있는 경우). 이는 String 필드에만 영향을 미칩니다. [#11233](https://github.com/ClickHouse/ClickHouse/pull/11233) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 내부 쿼리에 상수가 포함된 `VIEW`에서 읽을 때 발생하는 `Block structure mismatch in QueryPipeline` 오류를 수정했습니다. [#11181](https://github.com/ClickHouse/ClickHouse/issues/11181)을 해결합니다. [#11205](https://github.com/ClickHouse/ClickHouse/pull/11205) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 발생할 수 있는 예외 `Invalid status for associated output`를 수정했습니다. [#11200](https://github.com/ClickHouse/ClickHouse/pull/11200) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Array(Array(LowCardinality))` 인수를 캡처할 때 고차 함수에서 발생할 수 있는 `Cannot capture column` 오류를 수정했습니다. [#11185](https://github.com/ClickHouse/ClickHouse/pull/11185) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 1000개가 넘는 객체와 일부 백엔드에서 S3 globbing이 실패할 수 있던 문제를 수정했습니다. [#11179](https://github.com/ClickHouse/ClickHouse/pull/11179) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 데이터 스키핑 인덱스가 백그라운드 머지 중 변경되는 컬럼에 의존하는 경우(SummingMergeTree, AggregatingMergeTree 및 TTL GROUP BY), 인덱스가 잘못 계산되었습니다. 이 문제는 인덱스 계산을 머지 후로 옮겨 병합된 데이터 기준으로 인덱스를 계산하도록 수정하여 해결했습니다. [#11162](https://github.com/ClickHouse/ClickHouse/pull/11162) ([Azat Khuzhin](https://github.com/azat)).
* 항상 적용되는 제한값 기반 재스케줄링과 관련된 Kafka 성능 문제를 수정했습니다. [#11149](https://github.com/ClickHouse/ClickHouse/pull/11149) ([filimonov](https://github.com/filimonov)).
* 테이블 엔진이 Kafka인 테이블을 삭제(DROP)하는 중(또는 서버 재시작 중)에 가끔 발생하던 멈춤 문제를 수정했습니다. [#11145](https://github.com/ClickHouse/ClickHouse/pull/11145) ([filimonov](https://github.com/filimonov)).
* 단순한 쿼리에서 스레드를 과도하게 예약하는 문제를 수정했습니다(스레드 수를 줄이기 위한 최적화가 파이프라인 변경 이후 부분적으로 깨진 상태였습니다). [#11114](https://github.com/ClickHouse/ClickHouse/pull/11114) ([Azat Khuzhin](https://github.com/azat)).
* 표현식의 순서를 유지하고(이것만으로도 수정하기에 충분합니다), 집계기가 인덱스 대신 컬럼 이름을 사용하도록 강제하여, `HAVING` 절이 있는 쿼리(즉, 시작 서버에서 필터링이 필요한 경우)에 대한 분산 쿼리의 프레디케이트 최적화(`enable_optimize_predicate_expression=1`)를 수정했습니다. 수정: [#10613](https://github.com/ClickHouse/ClickHouse/issues/10613), [#11413](https://github.com/ClickHouse/ClickHouse/issues/11413). [#10621](https://github.com/ClickHouse/ClickHouse/pull/10621) ([Azat Khuzhin](https://github.com/azat)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 간헐적으로 실패하던 통합 테스트 여러 건을 수정했습니다. [#11355](https://github.com/ClickHouse/ClickHouse/pull/11355) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v204418-stable-2020-05-26">
  ### ClickHouse 릴리스 v20.4.4.18-안정 2020-05-26
</div>

v20.4.3.16-안정 대비 변경 사항이 없습니다.

<div id="clickhouse-release-v204316-stable-2020-05-23">
  ### ClickHouse 릴리스 v20.4.3.16-안정 2020-05-23
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 아무것도 최종 처리되지 않았을 경우 mutation 최종화 작업의 로깅을 제거했습니다. [#11109](https://github.com/ClickHouse/ClickHouse/pull/11109) ([alesapin](https://github.com/alesapin)).
* registerDiskS3에서 발생하던 메모리 누수를 수정했습니다. [#11074](https://github.com/ClickHouse/ClickHouse/pull/11074) ([Pavel Kovalenko](https://github.com/Jokser)).
* Kafka engine 테이블 종료 시 발생할 수 있는 데이터 누락 가능성을 해결했습니다. [#11048](https://github.com/ClickHouse/ClickHouse/pull/11048) ([filimonov](https://github.com/filimonov)).
* `parseDateTime64BestEffort` 인수 해석 관련 버그를 수정했습니다. [#11038](https://github.com/ClickHouse/ClickHouse/pull/11038) ([Vasily Nemkov](https://github.com/Enmk)).
* `MergeTree`에서 테이블이 성공적으로 생성되지 않은 경우 매우 드물게 발생할 수 있는 잠재적인 use-after-free 오류를 수정했습니다. [#10986](https://github.com/ClickHouse/ClickHouse/pull/10986), [#10970](https://github.com/ClickHouse/ClickHouse/pull/10970) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Atomic 데이터베이스의 메타데이터(rename용 상대 경로) 및 데이터(symlink용 상대 경로) 처리를 수정했습니다. [#10980](https://github.com/ClickHouse/ClickHouse/pull/10980) ([Azat Khuzhin](https://github.com/azat)).
* `Atomic` 데이터베이스 엔진에서 `ALTER` 및 `DROP DATABASE` 쿼리가 동시에 실행될 때 발생하던 서버 충돌을 수정했습니다. [#10968](https://github.com/ClickHouse/ClickHouse/pull/10968) ([tavplubix](https://github.com/tavplubix)).
* `getRawData()` 메서드에서 원시 데이터 크기가 잘못 표시되던 문제를 수정했습니다. [#10964](https://github.com/ClickHouse/ClickHouse/pull/10964) ([Igr](https://github.com/ObjatieGroba)).
* 20.1 및 그 이전 버전 간 2단계 집계 비호환성을 수정했습니다. 이 비호환성은 initiator 노드와 원격 노드에서 서로 다른 버전의 ClickHouse를 사용하고, GROUP BY 결과 크기가 크며, 단일 String 필드에 대해 집계가 수행될 때 발생합니다. 이로 인해 결과에서 단일 키에 대해 병합되지 않은 여러 행이 나타납니다. [#10952](https://github.com/ClickHouse/ClickHouse/pull/10952) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `DistributedBlockOutputStream`에서 부분만 기록된 파일이 전송되는 문제를 수정했습니다. [#10940](https://github.com/ClickHouse/ClickHouse/pull/10940) ([Azat Khuzhin](https://github.com/azat)).
* `SELECT count(notNullIn(NULL, []))` 실행 시 발생하던 충돌을 수정했습니다. [#10920](https://github.com/ClickHouse/ClickHouse/pull/10920) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Kafka` 테이블 엔진 삭제 중(또는 서버 재시작 중) 가끔 발생하던 멈춤 현상을 수정했습니다. [#10910](https://github.com/ClickHouse/ClickHouse/pull/10910) ([filimonov](https://github.com/filimonov)).
* `a TO b, c TO a`와 같은 여러 `ALTER RENAME`을 실행할 수 없었던 문제를 수정했습니다. [#10895](https://github.com/ClickHouse/ClickHouse/pull/10895) ([alesapin](https://github.com/alesapin)).
* 동일한 컬럼의 집계 함수 상태 결과를 여러 스레드에서 가져올 때 발생할 수 있는 경쟁 상태를 수정했습니다. 이 문제는 `quantile*` 함수의 `AggregateFunction` 상태를 저장하는 `Memory` 엔진을 사용하는 테이블(table)에서 읽는 중 `finalizeAggregation` 함수를 사용할 때만 발생할 수 있습니다. [#10890](https://github.com/ClickHouse/ClickHouse/pull/10890) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 분산 테이블에서 튜플의 하위 호환성 문제를 수정했습니다. [#10889](https://github.com/ClickHouse/ClickHouse/pull/10889) ([Anton Popov](https://github.com/CurtizJ)).
* 해당 키가 존재하지 않을 때 `StringHashTable`에서 발생하던 `SIGSEGV`를 수정했습니다. [#10870](https://github.com/ClickHouse/ClickHouse/pull/10870) ([Azat Khuzhin](https://github.com/azat)).
* `Atomic` engine을 사용하는 데이터베이스에서 `LiveView` 테이블이 삭제된 후 `WATCH`가 멈추는 현상을 수정했습니다. [#10859](https://github.com/ClickHouse/ClickHouse/pull/10859) ([tavplubix](https://github.com/tavplubix)).
* 비활성화된 레플리카를 기다리다가 일부 `ALTER` 또는 `OPTIMIZE` 쿼리가 멈출 수 있던 `ReplicatedMergeTree`의 버그를 수정했습니다. [#10849](https://github.com/ClickHouse/ClickHouse/pull/10849) ([tavplubix](https://github.com/tavplubix)).
* 이제 `CONSTRAINT` 표현식에 사용된 컬럼의 이름이 변경되면 제약 조건도 함께 업데이트됩니다. [#10844](https://github.com/ClickHouse/ClickHouse/issues/10844)를 수정했습니다. [#10847](https://github.com/ClickHouse/ClickHouse/pull/10847) ([alesapin](https://github.com/alesapin)).
* cache 딕셔너리에서 초기화되지 않은 메모리를 읽을 수 있는 잠재적 문제를 수정했습니다. [#10834](https://github.com/ClickHouse/ClickHouse/pull/10834) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Block::sortColumns()` 후 컬럼 순서를 수정했습니다. [#10826](https://github.com/ClickHouse/ClickHouse/pull/10826) ([Azat Khuzhin](https://github.com/azat)).
* 식별자에 따옴표를 사용하지 않도록 지정한 경우 `ODBC` 브리지에서 발생하던 문제를 수정했습니다. [#7984](https://github.com/ClickHouse/ClickHouse/issues/7984)를 해결합니다. [#10821](https://github.com/ClickHouse/ClickHouse/pull/10821) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `DateLUT`에서 발생한 `UBSan` 및 `MSan` 보고를 수정했습니다. [#10798](https://github.com/ClickHouse/ClickHouse/pull/10798) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 키 조건에서 잘못된 유형 변환을 수정했습니다. [#6287](https://github.com/ClickHouse/ClickHouse/issues/6287)을 수정했습니다. [#10791](https://github.com/ClickHouse/ClickHouse/pull/10791) ([Andrew Onyshchuk](https://github.com/oandrew)).
* `parallel_view_processing` 동작을 수정했습니다. 이제 예외가 발생한 경우에도 `MATERIALIZED VIEW`로의 모든 삽입이 빠짐없이 완료됩니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#10757](https://github.com/ClickHouse/ClickHouse/pull/10757) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `-State`와 함께 사용할 때 `-OrNull` 및 `-OrDefault` combinator가 올바르게 동작하도록 수정했습니다. [#10741](https://github.com/ClickHouse/ClickHouse/pull/10741) ([hcz](https://github.com/hczhcz)).
* 함수 `h3EdgeAngle`에서 발생할 수 있는 버퍼 오버플로우 문제를 수정했습니다. [#10711](https://github.com/ClickHouse/ClickHouse/pull/10711) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블에 파트가 많을 때 동시 ALTER 작업이 잠기는 버그를 수정했습니다. [#10659](https://github.com/ClickHouse/ClickHouse/pull/10659) ([alesapin](https://github.com/alesapin)).
* `StorageBuffer`에서 서버가 테이블 시작 전에 종료된 경우 발생하던 `nullptr` 역참조 문제를 수정했습니다. [#10641](https://github.com/ClickHouse/ClickHouse/pull/10641) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCardinality` 사용 시 `optimize_skip_unused_shards`가 수정되었습니다. [#10611](https://github.com/ClickHouse/ClickHouse/pull/10611) ([Azat Khuzhin](https://github.com/azat)).
* 동기식 뮤테이션의 조건 변수 처리 방식을 수정했습니다. 일부 경우 해당 조건 변수에 대한 신호가 유실될 수 있었습니다. [#10588](https://github.com/ClickHouse/ClickHouse/pull/10588) ([Vladimir Chebotarev](https://github.com/excitoon)).
* `loadStoredObject()`가 완료되기 전에 `createDictionary()`가 호출될 경우 발생할 수 있는 충돌을 수정했습니다. [#10587](https://github.com/ClickHouse/ClickHouse/pull/10587) ([Vitaly Baranov](https://github.com/vitlibar)).
* 기본 표현식 유형이 컬럼 유형과 다른 `ALIAS` 컬럼에 대한 `SELECT`를 수정했습니다. [#10563](https://github.com/ClickHouse/ClickHouse/pull/10563) ([Azat Khuzhin](https://github.com/azat)).
* DateTime64와 String 값 간 비교를 구현했습니다. [#10560](https://github.com/ClickHouse/ClickHouse/pull/10560) ([Vasily Nemkov](https://github.com/Enmk)).
* 기본적으로 `GROUP BY` sharding\_key 최적화를 비활성화하고(`optimize_distributed_group_by_sharding_key`는 이전에 도입되었지만, sharding\_key 분석의 복잡성 때문에 기본적으로 비활성화되어 있었습니다. 간단한 예로 sharding key에 `if`가 있는 경우가 있습니다), `WITH ROLLUP/CUBE/TOTALS`에 대해서도 이를 수정했습니다. [#10516](https://github.com/ClickHouse/ClickHouse/pull/10516) ([Azat Khuzhin](https://github.com/azat)).
* [#10263](https://github.com/ClickHouse/ClickHouse/issues/10263)를 해결했습니다. [#10486](https://github.com/ClickHouse/ClickHouse/pull/10486) ([Azat Khuzhin](https://github.com/azat)).
* `max_rows_to_sort` 설정 관련 테스트를 추가했습니다. [#10268](https://github.com/ClickHouse/ClickHouse/pull/10268) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 블룸 필터 인덱스 생성에 대한 하위 호환성이 추가되었습니다. [#10551](https://github.com/ClickHouse/ClickHouse/issues/10551). [#10569](https://github.com/ClickHouse/ClickHouse/pull/10569) ([Winter Zhang](https://github.com/zhang2014)).

<div id="clickhouse-release-v20429-2020-05-12">
  ### ClickHouse 릴리스 v20.4.2.9, 2020-05-12
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 시스템 테이블(예: system.query\_log, system.trace\_log, system.metric\_log)은 크기가 10 MiB보다 작은 파트에 compact 데이터 파트 포맷을 사용합니다. compact 데이터 파트 포맷은 버전 20.3부터 지원됩니다. 20.3 미만 버전으로 다운그레이드할 경우 `/var/lib/clickhouse/data/system/`에서 시스템 로그용 테이블 데이터를 수동으로 삭제해야 합니다.
* 문자열 비교에 FixedString이 포함되고 비교 대상 인수의 크기가 서로 다르면, 더 짧은 문자열이 더 긴 문자열의 길이에 맞게 패딩된 것처럼 비교합니다. 이는 FixedString 데이터 타입이 SQL CHAR에 해당한다고 가정할 때 SQL 호환성을 위한 것입니다. 이 변경으로 [#9272](https://github.com/ClickHouse/ClickHouse/issues/9272)가 해결되었습니다. [#10363](https://github.com/ClickHouse/ClickHouse/pull/10363) ([alexey-milovidov](https://github.com/alexey-milovidov))
* SHOW CREATE TABLE이 여러 줄로 표시되도록 변경했습니다. 이제 가독성이 더 좋아졌고 MySQL과도 더 비슷해졌습니다. [#10049](https://github.com/ClickHouse/ClickHouse/pull/10049) ([Azat Khuzhin](https://github.com/azat))
* `pointInPolygon` 함수에서 사용되며 기본적으로 활성화되는 `validate_polygons` 설정을 추가했습니다. [#9857](https://github.com/ClickHouse/ClickHouse/pull/9857) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="new-feature">
  #### 새로운 기능
</div>

* ClickHouse에서 ZooKeeper로의 보안 연결 지원 추가 [#10184](https://github.com/ClickHouse/ClickHouse/pull/10184) ([Konstantin Lebedev](https://github.com/xzkostyan))
* 사용자 지정 HTTP 핸들러를 지원합니다. 자세한 내용은 [#5436](https://github.com/ClickHouse/ClickHouse/issues/5436)을 참조하십시오. [#7572](https://github.com/ClickHouse/ClickHouse/pull/7572) ([Winter Zhang](https://github.com/zhang2014))
* MessagePack 입력/출력 포맷이 추가되었습니다. [#9889](https://github.com/ClickHouse/ClickHouse/pull/9889) ([Kruglov Pavel](https://github.com/Avogar))
* Regexp 입력 형식을 추가했습니다. [#9196](https://github.com/ClickHouse/ClickHouse/pull/9196) ([Kruglov Pavel](https://github.com/Avogar))
* 마크다운 문서에 표를 삽입할 수 있는 출력 형식 `Markdown`이 추가되었습니다. [#10317](https://github.com/ClickHouse/ClickHouse/pull/10317) ([Kruglov Pavel](https://github.com/Avogar))
* 딕셔너리에 사용자 지정 설정 섹션 지원을 추가했습니다. 또한 [#2829](https://github.com/ClickHouse/ClickHouse/issues/2829) 문제를 수정했습니다. [#10137](https://github.com/ClickHouse/ClickHouse/pull/10137) ([Artem Streltsov](https://github.com/kekekekule))
* DDL 쿼리에서 `CREATE DICTIONARY`의 사용자 지정 설정 지원이 추가되었습니다 [#10465](https://github.com/ClickHouse/ClickHouse/pull/10465) ([Artem Streltsov](https://github.com/kekekekule))
* 서버 메모리 사용량이 다음 할당 임계값을 초과할 때 할당 컨텍스트를 수집하는 간단한 서버 전역 메모리 프로파일러를 추가했습니다. [#10444](https://github.com/ClickHouse/ClickHouse/pull/10444) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 레플리카가 파트를 자체적으로 머지하는 것을 제한하고, 항상 다른 레플리카에서 다운로드하는 방식을 우선하도록 하는 `always_fetch_merged_part` 설정을 추가했습니다. [#10379](https://github.com/ClickHouse/ClickHouse/pull/10379) ([alesapin](https://github.com/alesapin))
* JSON 객체의 원시 데이터를 추출하는 함수 `JSONExtractKeysAndValuesRaw`를 추가했습니다 [#10378](https://github.com/ClickHouse/ClickHouse/pull/10378) ([hcz](https://github.com/hczhcz))
* OS 메모리 사용량을 `system.asynchronous_metrics`에 추가했습니다. [#10361](https://github.com/ClickHouse/ClickHouse/pull/10361) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 함수 `least` 및 `greatest`에 제네릭 버전이 추가되었습니다. 이제 임의의 타입 인수를 개수에 관계없이 처리할 수 있습니다. 이 변경으로 [#4767](https://github.com/ClickHouse/ClickHouse/issues/4767)이 수정되었습니다 [#10318](https://github.com/ClickHouse/ClickHouse/pull/10318) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 ClickHouse가 딕셔너리 소스의 타임아웃을 ClickHouse 측에서 제어합니다. cache 딕셔너리 구성에 두 개의 새로운 설정이 추가되었습니다: `strict_max_lifetime_seconds`의 기본값은 `max_lifetime`이고, `query_wait_timeout_milliseconds`의 기본값은 1분입니다. 첫 번째 설정은 `allow_read_expired_keys` 설정과 함께 사용할 때도 유용합니다(오래전에 만료된 키의 읽기를 금지하는 데 사용). [#10337](https://github.com/ClickHouse/ClickHouse/pull/10337) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* query\_log에 기록할 항목을 필터링하는 log\_queries\_min\_type 추가 [#10053](https://github.com/ClickHouse/ClickHouse/pull/10053) ([Azat Khuzhin](https://github.com/azat))
* 함수 `isConstant`이 추가되었습니다. 이 함수는 인수가 상수 표현식인지 확인하여 1 또는 0을 반환합니다. 개발, 디버깅 및 데모 목적으로 사용됩니다. [#10198](https://github.com/ClickHouse/ClickHouse/pull/10198) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 키가 없을 때 기본값 대신 NULL을 반환하는 joinGetOrNull을 추가했습니다. [#10094](https://github.com/ClickHouse/ClickHouse/pull/10094) ([Amos Bird](https://github.com/amosbird))
* `transform_null_in` 옵션이 설정된 경우 `IN` 연산자에서 `NULL`을 `NULL`과 같다고 간주합니다. [#10085](https://github.com/ClickHouse/ClickHouse/pull/10085) ([achimbab](https://github.com/achimbab))
* MergeTree 테이블 엔진 계열에 대해 `ALTER TABLE ... RENAME COLUMN`을 추가했습니다. [#9948](https://github.com/ClickHouse/ClickHouse/pull/9948) ([alesapin](https://github.com/alesapin))
* 병렬 분산 INSERT SELECT를 지원합니다. [#9759](https://github.com/ClickHouse/ClickHouse/pull/9759) ([vxider](https://github.com/Vxider))
* `distributed_group_by_no_merge` 없이 Distributed over Distributed 쿼리 기능 추가 ... [#9923](https://github.com/ClickHouse/ClickHouse/pull/9923) ([Azat Khuzhin](https://github.com/azat))
* 지정된 범위의 배열 요소를 집계하는 함수 `arrayReduceInRanges`를 추가했습니다. [#9598](https://github.com/ClickHouse/ClickHouse/pull/9598) ([hcz](https://github.com/hczhcz))
* Prometheus exporter에 딕셔너리 상태를 추가했습니다. [#9622](https://github.com/ClickHouse/ClickHouse/pull/9622) ([Guillaume Tassery](https://github.com/YiuRULE))
* `arrayAUC` 함수 추가 [#8698](https://github.com/ClickHouse/ClickHouse/pull/8698) ([taiyang-li](https://github.com/taiyang-li))
* TPC-H 호환성을 개선하기 위해 `DROP VIEW` 문을 지원합니다. [#9831](https://github.com/ClickHouse/ClickHouse/pull/9831) ([Amos Bird](https://github.com/amosbird))
* windowFunnel()에 'strict\_order' 옵션을 추가 [#9773](https://github.com/ClickHouse/ClickHouse/pull/9773) ([achimbab](https://github.com/achimbab))
* `DATE` 및 `TIMESTAMP` SQL 연산자를 지원합니다. 예를 들면 `SELECT date '2001-01-01'`입니다. [#9691](https://github.com/ClickHouse/ClickHouse/pull/9691) ([Artem Zuikov](https://github.com/4ertus2))

<div id="experimental-feature">
  #### 실험적 기능
</div>

* 실험적 데이터베이스 엔진 Atomic이 추가되었습니다. 이 엔진은 비차단 `DROP`, `RENAME TABLE` 쿼리와 원자적으로 수행되는 `EXCHANGE TABLES t1 AND t2` 쿼리를 지원합니다 [#7512](https://github.com/ClickHouse/ClickHouse/pull/7512) ([tavplubix](https://github.com/tavplubix))
* S3 기반 ReplicatedMergeTree에 대한 초기 지원이 추가되었습니다(아직 최적화되지 않은 방식으로 작동합니다) [#10126](https://github.com/ClickHouse/ClickHouse/pull/10126) ([Pavel Kovalenko](https://github.com/Jokser))

<div id="bug-fix">
  #### 버그 수정
</div>

* 종속 테이블이 포함된 경우 `MATERIALIZED VIEW`의 내부 쿼리에서 잘못된 스칼라 결과가 나오던 문제를 수정했습니다 [#10603](https://github.com/ClickHouse/ClickHouse/pull/10603) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `readonly=2` 및 `cancel_http_readonly_queries_on_client_close=1`일 때 클라이언트가 연결을 닫으면 HTTP 요청이 중단되는 버그를 수정했습니다. [#10684](https://github.com/ClickHouse/ClickHouse/pull/10684) ([tavplubix](https://github.com/tavplubix))
* 서버 시작 시 예외가 발생할 때 StorageBuffer에서 발생하는 segfault를 수정했습니다. [#10550](https://github.com/ClickHouse/ClickHouse/issues/10550) [#10609](https://github.com/ClickHouse/ClickHouse/pull/10609) ([tavplubix](https://github.com/tavplubix))
* 쿼리`SYSTEM DROP DNS CACHE`는 이제 사용자가 특정 IP 주소에서의 연결이 허용되는지 확인하는 데 사용되는 캐시도 삭제합니다 [#10608](https://github.com/ClickHouse/ClickHouse/pull/10608) ([tavplubix](https://github.com/tavplubix))
* 하나의 쿼리에서 동일한 집합에 여러 `IN` 연산자를 사용할 때 발생하던 문제를 수정했습니다. [#10539](https://github.com/ClickHouse/ClickHouse/issues/10539) [#10686](https://github.com/ClickHouse/ClickHouse/pull/10686) ([Anton Popov](https://github.com/CurtizJ))
* `generateRandom`에서 중첩 타입 사용 시 발생하던 크래시를 수정했습니다. [#10583](https://github.com/ClickHouse/ClickHouse/issues/10583). [#10734](https://github.com/ClickHouse/ClickHouse/pull/10734) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 머지 후 발생했을 수 있는 `SummingMergeTree`의 `LowCardinality(FixedString)` 키 컬럼 데이터 손상을 수정했습니다. [#10489](https://github.com/ClickHouse/ClickHouse/issues/10489)을 해결합니다. [#10721](https://github.com/ClickHouse/ClickHouse/pull/10721) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `aggregation_memory_efficient_merge_threads` 설정 로직을 수정했습니다. [#10667](https://github.com/ClickHouse/ClickHouse/pull/10667) ([palasonic1](https://github.com/palasonic1))
* 사라지는 합계 문제를 수정했습니다. 쿼리에 `JOIN`이 있거나 외부 `WHERE` 조건이 있는 서브쿼리가 있으면 합계가 필터링될 수 있었습니다. [#10674](https://github.com/ClickHouse/ClickHouse/issues/10674) [#10698](https://github.com/ClickHouse/ClickHouse/pull/10698)을 수정했습니다. ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `distributed_aggregation_memory_efficient`가 활성화된 상태에서 원격 쿼리가 병렬로 실행되지 않던 문제를 수정했습니다. [#10655](https://github.com/ClickHouse/ClickHouse/issues/10655) [#10664](https://github.com/ClickHouse/ClickHouse/pull/10664) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `LIMIT`가 있는 쿼리에서 행 수가 잘못될 수 있는 문제를 수정했습니다. [#10566](https://github.com/ClickHouse/ClickHouse/issues/10566), [#10709](https://github.com/ClickHouse/ClickHouse/issues/10709), [#10660](https://github.com/ClickHouse/ClickHouse/pull/10660) 수정. ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 일부 경우 compact parts를 다른 compact part로 병합한 후 발생할 수 있는 인덱스 손상을 수정했습니다. [#10531](https://github.com/ClickHouse/ClickHouse/pull/10531) ([Anton Popov](https://github.com/CurtizJ))
* mutation이 모든 파트를 완료했지만 `is_done=0` 상태에서 멈추는 문제를 수정했습니다. [#10526](https://github.com/ClickHouse/ClickHouse/pull/10526) ([alesapin](https://github.com/alesapin))
* UTC 대비 소수 오프셋을 사용하는 시간대에서 Unix epoch 시작 시점에 발생하는 오버플로우를 수정했습니다. [#9335](https://github.com/ClickHouse/ClickHouse/issues/9335)를 수정합니다. [#10513](https://github.com/ClickHouse/ClickHouse/pull/10513) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 입력 형식의 진단 기능이 개선되었습니다. [#10204](https://github.com/ClickHouse/ClickHouse/issues/10204) 수정 [#10418](https://github.com/ClickHouse/ClickHouse/pull/10418) ([tavplubix](https://github.com/tavplubix))
* 큰 정수에서 발생하는 `simpleLinearRegression()`의 숫자 오버플로우 수정 [#10474](https://github.com/ClickHouse/ClickHouse/pull/10474) ([hcz](https://github.com/hczhcz))
* 분산 종료 시 발생하는 use-after-free를 수정하고, 모든 배치 전송이 완료될 때까지 기다리지 않도록 했습니다 [#10491](https://github.com/ClickHouse/ClickHouse/pull/10491) ([Azat Khuzhin](https://github.com/azat))
* clickhouse-server Docker image에 CA 인증서 추가 [#10476](https://github.com/ClickHouse/ClickHouse/pull/10476) ([filimonov](https://github.com/filimonov))
* `addressToLine` 함수 또는 AggregateFunctionState 컬럼 사용 시 드물게 발생할 수 있던 무한 루프 문제를 수정했습니다. [#10466](https://github.com/ClickHouse/ClickHouse/pull/10466) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 분산 쿼리 중 zookeeper "노드 없음" 오류 처리 [#10050](https://github.com/ClickHouse/ClickHouse/pull/10050) ([Daniel Chen](https://github.com/Phantomape))
* 컬럼(column)의 기본값을 변경한 후 서버가 테이블(table)을 ATTACH하지 못하던 버그를 수정했습니다. [#10441](https://github.com/ClickHouse/ClickHouse/pull/10441) ([alesapin](https://github.com/alesapin))
* ALIAS 컬럼에 대해 기본 표현식의 유형을 컬럼 유형으로 암시적으로 형변환 [#10563](https://github.com/ClickHouse/ClickHouse/pull/10563) ([Azat Khuzhin](https://github.com/azat))
* `ATTACH DATABASE`가 실패해도 메타데이터 디렉터리를 삭제하지 않음 [#10442](https://github.com/ClickHouse/ClickHouse/pull/10442) ([Winter Zhang](https://github.com/zhang2014))
* system tzdata에 대한 의존성을 피합니다. CentOS 8에서 `Africa/Casablanca` 시간대 로딩 문제를 수정했습니다. [#10211](https://github.com/ClickHouse/ClickHouse/issues/10211) [#10425](https://github.com/ClickHouse/ClickHouse/pull/10425) ([alexey-milovidov](https://github.com/alexey-milovidov))
* quorum으로 데이터가 삽입된 뒤 삭제되는 경우(DROP PARTITION, TTL 등)에 발생하던 몇 가지 문제를 수정했습니다. 이 문제로 인해 INSERT가 멈추거나 SELECT에서 거짓 양성 예외가 발생했습니다. 수정: [#9946](https://github.com/ClickHouse/ClickHouse/issues/9946) [#10188](https://github.com/ClickHouse/ClickHouse/pull/10188) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* BloomFilter 인덱스 생성 시 인수 개수와 유형을 확인하도록 수정 [#9623](https://github.com/ClickHouse/ClickHouse/issues/9623) [#10431](https://github.com/ClickHouse/ClickHouse/pull/10431) ([Winter Zhang](https://github.com/zhang2014))
* `skip_unavailable_shards`보다 `fallback_to_stale_replicas`를 우선 사용합니다. 그렇지 않으면 두 설정이 모두 지정되어 있고 최신 상태의 레플리카가 없을 때 쿼리가 실패합니다(패치: @alex-zaitsev). [#10422](https://github.com/ClickHouse/ClickHouse/pull/10422) ([Azat Khuzhin](https://github.com/azat))
* ARRAY JOIN, ORDER BY 및 LIMIT가 포함된 쿼리가 불완전한 결과를 반환할 수 있는 문제를 수정했습니다. [#10226](https://github.com/ClickHouse/ClickHouse/issues/10226)를 수정합니다. [#10427](https://github.com/ClickHouse/ClickHouse/pull/10427) ([Vadim Plakhtinskiy](https://github.com/VadimPlh))
* DETACH/ATTACH 후 딕셔너리 이름 뒤에 데이터베이스 이름을 추가합니다. 이에 따라 system.dictionaries 테이블과 `SYSTEM RELOAD` 쿼리의 문제가 수정됩니다 [#10415](https://github.com/ClickHouse/ClickHouse/pull/10415) ([Azat Khuzhin](https://github.com/azat))
* processors 파이프라인에서 extremes의 결과가 잘못될 수 있는 문제를 수정했습니다. [#10131](https://github.com/ClickHouse/ClickHouse/pull/10131) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 설정 `distributed_group_by_no_merge`가 활성화된 경우 발생할 수 있는 segfault를 수정했습니다(이 설정은 20.3.7.46에서 [#10131](https://github.com/ClickHouse/ClickHouse/issues/10131)로 도입되었습니다). [#10399](https://github.com/ClickHouse/ClickHouse/pull/10399) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `Array(Tuple(...))` 데이터 타입이 잘못 평탄화되던 문제를 수정했습니다. [#10259](https://github.com/ClickHouse/ClickHouse/issues/10259) [#10390](https://github.com/ClickHouse/ClickHouse/pull/10390) ([alexey-milovidov](https://github.com/alexey-milovidov))
* JOIN 외부 상수 이름과 충돌할 수 있는 JOIN 내부 상수의 컬럼 이름을 바로잡았습니다 [#9950](https://github.com/ClickHouse/ClickHouse/pull/9950) ([Alexander Kuzmenkov](https://github.com/akuzm))
* Block::sortColumns() 호출 후 컬럼 순서 수정 [#10826](https://github.com/ClickHouse/ClickHouse/pull/10826) ([Azat Khuzhin](https://github.com/azat))
* 원격 쿼리 중 발생할 수 있는 `ConcatProcessor`의 `Pipeline stuck` 오류를 수정했습니다. [#10381](https://github.com/ClickHouse/ClickHouse/pull/10381) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 집계에 대해 디스크 예약을 하지 않도록 수정했습니다. [#9241](https://github.com/ClickHouse/ClickHouse/issues/9241) [#10375](https://github.com/ClickHouse/ClickHouse/pull/10375) ([Azat Khuzhin](https://github.com/azat))
* UTC 기준 오프셋이 양수와 음수 사이에서 바뀐 시간대(예: Pacific/Kiritimati)에서 `datetime` 함수가 잘못 동작하던 문제를 수정했습니다. [#7202](https://github.com/ClickHouse/ClickHouse/issues/7202) [#10369](https://github.com/ClickHouse/ClickHouse/pull/10369) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `dictIsIn` 함수에서 무한 루프를 방지합니다. #515를 수정했습니다 [#10365](https://github.com/ClickHouse/ClickHouse/pull/10365) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 기본값으로 GROUP BY sharding\_key 최적화를 비활성화하고 WITH ROLLUP/CUBE/TOTALS에서의 동작을 수정했습니다 [#10516](https://github.com/ClickHouse/ClickHouse/pull/10516) ([Azat Khuzhin](https://github.com/azat))
* 파트를 검사할 때 오류 코드를 확인하고, 오류가 "not enough memory"와 같은 경우에는 해당 파트를 손상된 것으로 표시하지 않도록 수정했습니다. 수정 사항 [#6269](https://github.com/ClickHouse/ClickHouse/issues/6269) [#10364](https://github.com/ClickHouse/ClickHouse/pull/10364) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 로드되지 않은 Dictionaries 정보를 시스템 테이블(system tables)에 표시합니다. [#10234](https://github.com/ClickHouse/ClickHouse/pull/10234) ([Vitaly Baranov](https://github.com/vitlibar))
* server가 테이블 시작 전에 종료된 경우 StorageBuffer의 nullptr 역참조를 수정했습니다. [#10641](https://github.com/ClickHouse/ClickHouse/pull/10641) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `ReplicatedMergeTree`에서 `DROP`과 `OPTIMIZE` 간의 경합 문제를 수정했습니다. 동시 `OPTIMIZE` 쿼리가 있을 경우 `DROP`으로 인해 ZooKeeper의 레플리카 경로에 일부 불필요한 데이터가 남을 수 있었습니다. [#10312](https://github.com/ClickHouse/ClickHouse/pull/10312) ([tavplubix](https://github.com/tavplubix))
* 쉼표 조인과 이름이 지정된 조인이 혼합된 쿼리에서 발생하던 'Logical error: CROSS JOIN has expressions' 오류를 수정했습니다. [#9910](https://github.com/ClickHouse/ClickHouse/issues/9910) [#10311](https://github.com/ClickHouse/ClickHouse/pull/10311) ([Artem Zuikov](https://github.com/4ertus2))
* `max_bytes_before_external_group_by`를 사용할 때의 쿼리를 수정했습니다. [#10302](https://github.com/ClickHouse/ClickHouse/pull/10302) ([Artem Zuikov](https://github.com/4ertus2))
* 특정한 경우 파서의 최대 재귀 깊이 제한과 관련된 문제를 수정했습니다. 이로써 [#10283](https://github.com/ClickHouse/ClickHouse/issues/10283) 문제가 해결됩니다. 이 수정으로 인해 경미한 비호환성이 발생할 수 있습니다. `clickhouse-client`를 통해 실행하는 길고 중첩이 깊은 쿼리가 동작하지 않을 수 있으므로, 설정 `max_query_size` 및 `max_parser_depth`를 그에 맞게 조정해야 합니다. [#10295](https://github.com/ClickHouse/ClickHouse/pull/10295) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 여러 조인이 있을 때 `count(*)`를 사용할 수 있도록 합니다. [#9853](https://github.com/ClickHouse/ClickHouse/issues/9853) [#10291](https://github.com/ClickHouse/ClickHouse/pull/10291) 수정 ([Artem Zuikov](https://github.com/4ertus2))
* `max_rows_to_group_by` 및 `group_by_overflow_mode = 'break'` 사용 시 발생하던 `Pipeline stuck` 오류를 수정했습니다. [#10279](https://github.com/ClickHouse/ClickHouse/pull/10279) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* DDL 쿼리로 `range_hashed` 딕셔너리를 생성할 때 발생하던 'Cannot add column' 오류를 수정했습니다. [#10093](https://github.com/ClickHouse/ClickHouse/issues/10093). [#10235](https://github.com/ClickHouse/ClickHouse/pull/10235) ([alesapin](https://github.com/alesapin))
* 드물게 발생하던 예외 `Cannot drain connections: cancel first`를 수정했습니다. [#10239](https://github.com/ClickHouse/ClickHouse/pull/10239) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 사용자가 ENGINE = Replicated\*인 테이블에서 ALTER UPDATE/DELETE를 실행하려고 할 때 ClickHouse가 "Unknown function lambda." 오류 메시지를 표시하던 버그를 수정했습니다. 이제 비결정적 함수 검사에서 람다 표현식을 올바르게 처리합니다. [#10237](https://github.com/ClickHouse/ClickHouse/pull/10237) ([Alexander Kazakov](https://github.com/Akazz))
* Lazy engine가 있는 데이터베이스에서 SELECT ... FROM system.tables를 실행할 때 StorageSystemTables에서 발생하던 비교적 드문 segfault를 수정했습니다. [#10209](https://github.com/ClickHouse/ClickHouse/pull/10209) ([Alexander Kazakov](https://github.com/Akazz))
* `system.numbers` 또는 `system.zeros`처럼 무한한 소스에서 읽는 동안, 실제로는 LIMIT에서 멈춰야 하는 쿼리가 무한히 실행될 수 있는 문제를 수정했습니다. [#10206](https://github.com/ClickHouse/ClickHouse/pull/10206) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* Date 유형의 "generateRandom" 함수 문제를 수정했습니다. 이로써 [#9973](https://github.com/ClickHouse/ClickHouse/issues/9973)이 해결됩니다. 구식 파티셔닝을 사용하는 MergeTree 테이블에 연도가 2106인 날짜를 삽입할 때 파티션 이름이 1970년으로 지정되는 예외적인 경우를 수정했습니다. [#10218](https://github.com/ClickHouse/ClickHouse/pull/10218) ([alexey-milovidov](https://github.com/alexey-milovidov))
* View의 테이블 정의가 SELECT 쿼리와 맞지 않으면 타입을 변환합니다. 이 변경으로 [#10180](https://github.com/ClickHouse/ClickHouse/issues/10180), [#10022](https://github.com/ClickHouse/ClickHouse/issues/10022), [#10217](https://github.com/ClickHouse/ClickHouse/pull/10217) 문제가 해결됩니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 요일이 화요일 또는 목요일인 RFC-2822 형식의 문자열에서 `parseDateTimeBestEffort`를 수정했습니다. 이로써 [#10082](https://github.com/ClickHouse/ClickHouse/issues/10082) [#10214](https://github.com/ClickHouse/ClickHouse/pull/10214)가 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* JOIN 내부 상수의 컬럼 이름이 JOIN 외부 상수의 이름과 충돌할 수 있는 문제를 수정했습니다. [#10207](https://github.com/ClickHouse/ClickHouse/pull/10207) ([alexey-milovidov](https://github.com/alexey-milovidov))
* arrayJoin 함수가 있는 경우(일부 경우) move-to-prewhere 최적화 문제를 수정했습니다. 이로써 [#10092](https://github.com/ClickHouse/ClickHouse/issues/10092) [#10195](https://github.com/ClickHouse/ClickHouse/pull/10195) 문제가 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 네이티브 mysql-connector-java (JDBC) 사용 시 SCRAMBLE에 구분자가 포함되는 문제를 수정했습니다 [#10140](https://github.com/ClickHouse/ClickHouse/pull/10140) ([BohuTANG](https://github.com/BohuTANG))
* 데이터베이스가 지정되지 않은 경우, 접근 검사 시 현재 데이터베이스를 사용하도록 수정했습니다. [#10192](https://github.com/ClickHouse/ClickHouse/pull/10192) ([Vitaly Baranov](https://github.com/vitlibar))
* compact 파트를 사용하는 테이블의 ALTER를 수정했습니다. [#10130](https://github.com/ClickHouse/ClickHouse/pull/10130) ([Anton Popov](https://github.com/CurtizJ))
* `allow_nondeterministic_mutations` 설정을 통해 뮤테이션에서 비결정적 함수 사용 제한을 완화할 수 있도록 했습니다. [#10186](https://github.com/ClickHouse/ClickHouse/pull/10186) ([filimonov](https://github.com/filimonov))
* 딕셔너리에 대해 호출되던 `DROP TABLE` 수정 [#10165](https://github.com/ClickHouse/ClickHouse/pull/10165) ([Azat Khuzhin](https://github.com/azat))
* 분산 테이블에 `INSERT`할 때 구조가 맞지 않으면 블록을 변환합니다 [#10135](https://github.com/ClickHouse/ClickHouse/pull/10135) ([Azat Khuzhin](https://github.com/azat))
* 파티션 키에 따라 삽입된 block이 파트별로 분할될 때 행 수가 잘못 기록되었습니다(모든 파트의 합계로 기록됨). [#10138](https://github.com/ClickHouse/ClickHouse/pull/10138) ([alexey-milovidov](https://github.com/alexey-milovidov))
* MySQL 데이터베이스 엔진에 일부 인수 검사 기능을 추가하고 식별자 인수를 지원 [#10077](https://github.com/ClickHouse/ClickHouse/pull/10077) ([Winter Zhang](https://github.com/zhang2014))
* 새 레플리카를 생성할 때 잘못된 `index_granularity_bytes` 검사 문제를 수정했습니다. [#10098](https://github.com/ClickHouse/ClickHouse/issues/10098)을 수정합니다. [#10121](https://github.com/ClickHouse/ClickHouse/pull/10121) ([alesapin](https://github.com/alesapin))
* 테이블에 스킵 인덱스가 있는 경우 `CHECK TABLE` 쿼리에서 발생하던 버그를 수정했습니다. [#10068](https://github.com/ClickHouse/ClickHouse/pull/10068) ([alesapin](https://github.com/alesapin))
* 중첩 테이블에 세그먼트가 하나만 있는 경우의 분산-over-분산 문제를 수정했습니다 [#9997](https://github.com/ClickHouse/ClickHouse/pull/9997) ([Azat Khuzhin](https://github.com/azat))
* `JOIN` 및 `UNION ALL`이 포함된 쿼리에서 발생할 수 있는 행 손실 문제를 수정했습니다. [#9826](https://github.com/ClickHouse/ClickHouse/issues/9826), [#10113](https://github.com/ClickHouse/ClickHouse/issues/10113)을 수정했습니다. ... [#10099](https://github.com/ClickHouse/ClickHouse/pull/10099) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 로컬 ClickHouse 서버를 소스로 사용할 때 딕셔너리에서 발생하던 버그를 수정했습니다. 딕셔너리와 소스의 타입이 호환되지 않으면 메모리 손상이 발생할 수 있었습니다. [#10071](https://github.com/ClickHouse/ClickHouse/pull/10071) ([alesapin](https://github.com/alesapin))
* 이전 ClickHouse 버전에서 업데이트할 때 `/table/replicas/replica_name/metadata` 노드가 없어 발생하던 복제된 테이블(Replicated Table) 시작 문제가 수정되었습니다. [#10037](https://github.com/ClickHouse/ClickHouse/issues/10037)을 해결합니다. [#10095](https://github.com/ClickHouse/ClickHouse/pull/10095) ([alesapin](https://github.com/alesapin))
* 오류 `Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform`를 수정했습니다. 이 오류는 `distributed_aggregation_memory_efficient` 설정이 활성화된 상태에서 분산 쿼리가 서로 다른 세그먼트의 단일 단계 및 2단계 집계가 혼재된 집계 데이터를 읽을 때 발생했습니다.  [#10063](https://github.com/ClickHouse/ClickHouse/pull/10063) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 시작 시 materialized view가 있는 데이터베이스에서 ATTACH가 실패할 때 발생하던 데드락 수정 [#10054](https://github.com/ClickHouse/ClickHouse/pull/10054) ([Azat Khuzhin](https://github.com/azat))
* 끝에 0 바이트가 포함된 문자열 키로 GROUP BY를 수행할 때 발생할 수 있던 세그멘테이션 폴트를 수정했습니다 ([#8636](https://github.com/ClickHouse/ClickHouse/issues/8636), [#8925](https://github.com/ClickHouse/ClickHouse/issues/8925)). ... [#10025](https://github.com/ClickHouse/ClickHouse/pull/10025) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 별칭이 수식된 컬럼 이름을 덮어써 분산 쿼리 결과가 잘못되던 문제를 수정했습니다. [#9672](https://github.com/ClickHouse/ClickHouse/issues/9672) [#9714](https://github.com/ClickHouse/ClickHouse/issues/9714) [#9972](https://github.com/ClickHouse/ClickHouse/pull/9972) ([Artem Zuikov](https://github.com/4ertus2))
* `SYSTEM RESTART REPLICAS`에서 발생할 수 있는 데드락 문제 수정 [#9955](https://github.com/ClickHouse/ClickHouse/pull/9955) ([tavplubix](https://github.com/tavplubix))
* 원격 쿼리 실행에 사용되는 스레드 수를 고정했습니다(20.3부터의 성능 회귀). 이 문제는 `Distributed` 테이블의 쿼리가 로컬 및 원격 세그먼트에서 동시에 실행될 때 발생했습니다. [#9965](https://github.com/ClickHouse/ClickHouse/issues/9965) [#9971](https://github.com/ClickHouse/ClickHouse/pull/9971)에서 해결했습니다 ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `ATTACH PART`의 `DeleteOnDestroy` 로직을 수정해 attached 상태인 파트가 자동으로 제거될 수 있던 문제를 해결하고, 몇 가지 테스트를 추가했습니다 [#9410](https://github.com/ClickHouse/ClickHouse/pull/9410) ([Vladimir Chebotarev](https://github.com/excitoon))
* 서버 시작 시 `ON CLUSTER` DDL 쿼리가 멈추는 문제를 수정했습니다. [#9927](https://github.com/ClickHouse/ClickHouse/pull/9927) ([Gagan Arneja](https://github.com/garneja))
* 일부 데이터베이스에 대한 쿼리 처리 단계 중 하나에서 필요한 테이블을 가져오지 못하던 버그를 수정했습니다. [#9699](https://github.com/ClickHouse/ClickHouse/issues/9699)을 수정합니다. [#9949](https://github.com/ClickHouse/ClickHouse/pull/9949) ([achulkov2](https://github.com/achulkov2))
* `JOIN`이 `TOTALS`와 함께 사용될 때 발생하는 'Not found column in block' 오류를 수정했습니다. 수정 사항: [#9839](https://github.com/ClickHouse/ClickHouse/issues/9839) [#9939](https://github.com/ClickHouse/ClickHouse/pull/9939) ([Artem Zuikov](https://github.com/4ertus2))
* CREATE USER 명령에 지정된 여러 호스트를 파싱할 때 발생하던 문제 수정 [#9924](https://github.com/ClickHouse/ClickHouse/pull/9924) ([Vitaly Baranov](https://github.com/vitlibar))
* Join 테이블 엔진의 `TRUNCATE` 수정 ([#9917](https://github.com/ClickHouse/ClickHouse/issues/9917)). [#9920](https://github.com/ClickHouse/ClickHouse/pull/9920) ([Amos Bird](https://github.com/amosbird))
* `ReplicatedMergeTree`에서 삭제와 optimize 사이의 race condition을 수정했습니다. [#9901](https://github.com/ClickHouse/ClickHouse/pull/9901) ([alesapin](https://github.com/alesapin))
* `optimize_skip_unused_shards`가 설정된 경우 분산에서의 `DISTINCT`를 수정했습니다. [#9808](https://github.com/ClickHouse/ClickHouse/pull/9808) ([Azat Khuzhin](https://github.com/azat))
* ALTER문에서 "scalar does not exist" 오류를 수정했습니다 ([#9878](https://github.com/ClickHouse/ClickHouse/issues/9878)). ... [#9904](https://github.com/ClickHouse/ClickHouse/pull/9904) ([Amos Bird](https://github.com/amosbird))
* `distributed_product_mode=\'local\'`에서 수식된 이름 관련 오류를 수정했습니다. [#4756](https://github.com/ClickHouse/ClickHouse/issues/4756) [#9891](https://github.com/ClickHouse/ClickHouse/pull/9891) ([Artem Zuikov](https://github.com/4ertus2))
* 이제 INSERT 쿼리에서 세그먼트는 예외를 발생시키는 대신 initiator의 설정을 각 세그먼트의 제약 조건에 맞게 조정합니다. 이 수정으로 서로 다른 제약 조건을 가진 세그먼트로도 INSERT 쿼리를 전송할 수 있게 되었습니다. 이 변경으로 [#9447](https://github.com/ClickHouse/ClickHouse/issues/9447)의 수정 사항이 개선되었습니다. [#9852](https://github.com/ClickHouse/ClickHouse/pull/9852) ([Vitaly Baranov](https://github.com/vitlibar))
* Kafka broker에 오프셋을 커밋할 때 재시도를 일부 추가했습니다. `offsets.commit.timeout.ms` 동안 `__consumer_offsets` 토픽에 사용 가능한 레플리카가 충분하지 않으면 broker가 커밋을 거부할 수 있기 때문입니다 [#9884](https://github.com/ClickHouse/ClickHouse/pull/9884) ([filimonov](https://github.com/filimonov))
* 기반 테이블의 가상 컬럼이 `WHERE`에서 사용될 때 분산 엔진 동작 수정 [#9847](https://github.com/ClickHouse/ClickHouse/pull/9847) ([Azat Khuzhin](https://github.com/azat))
* 함수 인수의 시간대가 제대로 적용되지 않던 일부 경우를 수정했습니다. [#9574](https://github.com/ClickHouse/ClickHouse/pull/9574) ([Vasily Nemkov](https://github.com/Enmk))
* 쿼리에서 분산 테이블에 PREWHERE와 WHERE가 모두 있고 `SET distributed_product_mode = 'local'`로 설정된 경우 발생하던 '동일한 별칭을 가진 서로 다른 표현식' 오류를 수정했습니다. [#9871](https://github.com/ClickHouse/ClickHouse/pull/9871) ([Artem Zuikov](https://github.com/4ertus2))
* 복합 프라이머리 키가 있는 테이블의 뮤테이션에서 발생하던 과도한 메모리 사용 문제를 수정했습니다. 이 변경은 [#9850](https://github.com/ClickHouse/ClickHouse/issues/9850)을 수정합니다. [#9860](https://github.com/ClickHouse/ClickHouse/pull/9860) ([alesapin](https://github.com/alesapin))
* 설정 `allow_introspection_functions`에 따른 인트로스펙션 함수의 권한 계산을 수정했습니다. [#9840](https://github.com/ClickHouse/ClickHouse/pull/9840) ([Vitaly Baranov](https://github.com/vitlibar))
* Processors 사용 여부와 관계없이 max\_distributed\_connections 수정 [#9673](https://github.com/ClickHouse/ClickHouse/pull/9673) ([Azat Khuzhin](https://github.com/azat))
* 클라이언트에서 발생할 수 있는 예외 `Got 0 in totals chunk, expected 1`를 수정했습니다. 이 문제는 `JOIN`이 포함된 쿼리에서 오른쪽 조인 테이블에 행이 0개인 경우 발생했습니다. 예시: `select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;`. [#9777](https://github.com/ClickHouse/ClickHouse/issues/9777)을 수정합니다. ... [#9823](https://github.com/ClickHouse/ClickHouse/pull/9823) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 테이블 목록 외부(즉, WHERE 절)에 COMMA JOIN이 있는 서브쿼리에서 발생하는 'COMMA to CROSS JOIN rewriter is not enabled or cannot rewrite query' 오류를 수정했습니다. [#9782](https://github.com/ClickHouse/ClickHouse/issues/9782) [#9830](https://github.com/ClickHouse/ClickHouse/pull/9830) ([Artem Zuikov](https://github.com/4ertus2))
* `optimize_skip_unused_shards`가 설정되어 있고 키 표현식을 해당 필드 유형으로 변환할 수 없을 때 발생하던 서버 충돌 문제 수정 [#9804](https://github.com/ClickHouse/ClickHouse/pull/9804) ([Azat Khuzhin](https://github.com/azat))
* `splitByString`의 빈 문자열 처리 수정. [#9767](https://github.com/ClickHouse/ClickHouse/pull/9767) ([hcz](https://github.com/hczhcz))
* compact 파트용 `ALTER TABLE DELETE COLUMN` 쿼리의 오류를 수정했습니다. [#9779](https://github.com/ClickHouse/ClickHouse/pull/9779) ([alesapin](https://github.com/alesapin))
* HTTP를 통한 쿼리에서 `rows_before_limit_at_least`가 누락되던 문제를 수정했습니다(processors 파이프라인 사용 시). [#9730](https://github.com/ClickHouse/ClickHouse/issues/9730) [#9757](https://github.com/ClickHouse/ClickHouse/pull/9757) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `ALTER` 쿼리(뮤테이션)에서 발생하던 과도한 메모리 사용 문제를 수정했습니다. 이로써 [#9533](https://github.com/ClickHouse/ClickHouse/issues/9533) 및 [#9670](https://github.com/ClickHouse/ClickHouse/issues/9670) 문제가 해결됩니다. [#9754](https://github.com/ClickHouse/ClickHouse/pull/9754) ([alesapin](https://github.com/alesapin))
* 영구적인 "작업을 예약할 수 없습니다" 오류가 발생할 수 있는 문제를 수정했습니다. [#9154](https://github.com/ClickHouse/ClickHouse/pull/9154) ([Azat Khuzhin](https://github.com/azat))
* 외부 딕셔너리 DDL의 백쿼팅 버그를 수정했습니다. [#9619](https://github.com/ClickHouse/ClickHouse/issues/9619)를 해결했습니다. [#9734](https://github.com/ClickHouse/ClickHouse/pull/9734) ([alesapin](https://github.com/alesapin))
* `text_log`의 데이터 경합을 수정했습니다. 실제 버그와는 관련이 없습니다. [#9726](https://github.com/ClickHouse/ClickHouse/pull/9726) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이전 버전에서 사용자가 뮤테이션을 실행한 경우 복제가 작동하지 않던 버그를 수정했습니다. 이 수정은 [#9645](https://github.com/ClickHouse/ClickHouse/issues/9645)를 해결합니다. [#9652](https://github.com/ClickHouse/ClickHouse/pull/9652) ([alesapin](https://github.com/alesapin))
* `sumKahan` 및 `sumWithOverflow`의 잘못된 내부 함수 이름을 수정했습니다. 이로 인해 원격 쿼리에서 해당 함수들을 사용할 때 예외가 발생하던 문제가 있었습니다. [#9636](https://github.com/ClickHouse/ClickHouse/pull/9636) ([Azat Khuzhin](https://github.com/azat))
* `INSERT` 쿼리에서 `Distributed` 테이블에 파일을 더 간결한 포맷으로 쓸 수 있게 하는 설정 `use_compact_format_in_distributed_parts_names`을 추가했습니다. 이 변경으로 [#9647](https://github.com/ClickHouse/ClickHouse/issues/9647) 문제가 수정되었습니다. [#9653](https://github.com/ClickHouse/ClickHouse/pull/9653) ([alesapin](https://github.com/alesapin))
* JOIN 키에 LowCardinality를 사용할 때 발생하던 RIGHT 및 FULL JOIN 문제를 수정했습니다. [#9610](https://github.com/ClickHouse/ClickHouse/pull/9610) ([Artem Zuikov](https://github.com/4ertus2))
* `MergeTreeRangeReader`에서 발생할 수 있는 `Size of filter does not match size of column` 및 `Invalid number of rows in Chunk` 예외를 수정했습니다. 일부 상황에서는 `PREWHERE` 실행 중 이러한 예외가 발생할 수 있었습니다. [#9612](https://github.com/ClickHouse/ClickHouse/pull/9612) ([Anton Popov](https://github.com/CurtizJ))
* 내부 복제가 있는 분산 테이블에서 `ALTER ON CLUSTER`를 허용합니다. 이로써 [#3268](https://github.com/ClickHouse/ClickHouse/issues/3268) [#9617](https://github.com/ClickHouse/ClickHouse/pull/9617) 문제가 해결되었습니다. ([shinoi2](https://github.com/shinoi2))
* `time + 1`과 같은 단순한 산술 표현식을 작성할 때(`time + INTERVAL 1 SECOND`와 같은 표현식과 달리) 시간대가 유지되지 않던 문제를 수정했습니다. 이 변경으로 [#5743](https://github.com/ClickHouse/ClickHouse/issues/5743)가 해결되었습니다 [#9323](https://github.com/ClickHouse/ClickHouse/pull/9323) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="improvement">
  #### 개선 사항
</div>

* DateTime을 문자열 리터럴과 비교할 때 time zone을 사용하도록 했습니다. 이로써 [#5206](https://github.com/ClickHouse/ClickHouse/issues/5206) 문제가 수정되었습니다. [#10515](https://github.com/ClickHouse/ClickHouse/pull/10515) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 텍스트 입력 형식에서 Decimal 값을 파싱하지 못하면 자세한 진단 정보를 출력합니다. [#10205](https://github.com/ClickHouse/ClickHouse/pull/10205) ([alexey-milovidov](https://github.com/alexey-milovidov))
* distributed/buffer 스케줄 풀에 작업/메모리 메트릭 추가 [#10449](https://github.com/ClickHouse/ClickHouse/pull/10449) ([Azat Khuzhin](https://github.com/azat))
* clickhouse-local과 HTTP 인터페이스에서 SELECT DISTINCT 쿼리의 결과가 준비되는 즉시 표시합니다. 이로써 [#8951](https://github.com/ClickHouse/ClickHouse/issues/8951) [#9559](https://github.com/ClickHouse/ClickHouse/pull/9559)가 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* `clickhouse-copier`에서 분할 시 `cityHash64(PRIMARY KEY) % N == n` 대신 `SAMPLE OFFSET` 쿼리를 사용할 수 있도록 했습니다. 이 기능을 사용하려면 명령줄 인수로 `--experimental-use-sample-offset 1`을 전달하십시오. [#10414](https://github.com/ClickHouse/ClickHouse/pull/10414) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 첫 번째 컬럼 값에 BOM이 포함될 수 없는 경우 TSV에서 BOM을 파싱할 수 있도록 했습니다. 이로써 [#10301](https://github.com/ClickHouse/ClickHouse/issues/10301)이 해결되었습니다 [#10424](https://github.com/ClickHouse/ClickHouse/pull/10424) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Avro 중첩 필드 삽입 지원 추가 [#10354](https://github.com/ClickHouse/ClickHouse/pull/10354) ([Andrew Onyshchuk](https://github.com/oandrew))
* 동일한 타입이 지정된 경우 데이터 비수정 모드에서도 컬럼 변경이 허용됩니다. [#10382](https://github.com/ClickHouse/ClickHouse/pull/10382) ([Vladimir Chebotarev](https://github.com/excitoon))
* GROUP BY 세그먼트 분할 키에 대해 `distributed_group_by_no_merge` 자동 적용(`optimize_skip_unused_shards`가 설정된 경우) [#10341](https://github.com/ClickHouse/ClickHouse/pull/10341) ([Azat Khuzhin](https://github.com/azat))
* GROUP BY sharding\_key가 있는 분산 테이블에 대한 LIMIT/LIMIT BY/ORDER BY 쿼리를 최적화했습니다 [#10373](https://github.com/ClickHouse/ClickHouse/pull/10373) ([Azat Khuzhin](https://github.com/azat))
* 서버의 총 메모리 사용량을 제한하는 설정 `max_server_memory_usage`가 추가되었습니다. 이제 메트릭 `MemoryTracking`은 오차 없이 계산됩니다. 설정 `max_memory_usage_for_all_queries`는 이제 사용 중단되었으며 아무런 동작도 하지 않습니다. 이로써 [#10293](https://github.com/ClickHouse/ClickHouse/issues/10293)가 해결되었습니다. [#10362](https://github.com/ClickHouse/ClickHouse/pull/10362) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `system_tables_lazy_load` config 옵션을 추가했습니다. 이를 `false`로 설정하면 로그가 있는 system table이 server 시작 시 로드됩니다. [Alexander Burmak](https://github.com/Alex-Burmak), [Svyatoslav Tkhon Il Pak](https://github.com/DeifyTheGod), [#9642](https://github.com/ClickHouse/ClickHouse/pull/9642) [#10359](https://github.com/ClickHouse/ClickHouse/pull/10359) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 분산 전송에 백그라운드 스레드 풀 (`background&#95;schedule&#95;pool&#95;size`) 사용 [#10263](https://github.com/ClickHouse/ClickHouse/pull/10263) ([Azat Khuzhin](https://github.com/azat))
* 백그라운드 버퍼 플러시에 백그라운드 스레드 풀을 사용하도록 변경했습니다. [#10315](https://github.com/ClickHouse/ClickHouse/pull/10315) ([Azat Khuzhin](https://github.com/azat))
* 불완전하게 기록된 파트를 제거하는 특수한 경우 1가지를 지원합니다. 이로써 [#9940](https://github.com/ClickHouse/ClickHouse/issues/9940) 문제가 수정되었습니다. [#10221](https://github.com/ClickHouse/ClickHouse/pull/10221) ([alexey-milovidov](https://github.com/alexey-milovidov))
* GROUP BY 최적화에는 이러한 함수의 수동 목록 대신 isInjective()를 사용합니다. [#10342](https://github.com/ClickHouse/ClickHouse/pull/10342) ([Azat Khuzhin](https://github.com/azat))
* 클라이언트가 연결되자마자 RST 패킷을 보내더라도 로그에 오류 메시지를 출력하지 않도록 했습니다. 이는 keepalived 및 VRRP를 사용하는 IPVS 밸런서에서 흔히 나타나는 동작입니다. 이 변경으로 [#1851](https://github.com/ClickHouse/ClickHouse/issues/1851) [#10274](https://github.com/ClickHouse/ClickHouse/pull/10274)가 수정되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 부동소수점 타입에서 `+inf`를 파싱할 수 있도록 했습니다. 이로써 [#1839](https://github.com/ClickHouse/ClickHouse/issues/1839)가 해결되었습니다 [#10272](https://github.com/ClickHouse/ClickHouse/pull/10272) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Nested 타입용 `generateRandom` 테이블 함수를 구현했습니다. 이로써 [#9903](https://github.com/ClickHouse/ClickHouse/issues/9903)이 종료되었습니다 [#10219](https://github.com/ClickHouse/ClickHouse/pull/10219) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 일부 클라이언트가 MySQL 프로토콜을 통해 ClickHouse와 통신할 수 있도록 MySQL 호환 인터페이스에 `max_allowed_packed`를 추가했습니다. [#10199](https://github.com/ClickHouse/ClickHouse/pull/10199) ([BohuTANG](https://github.com/BohuTANG))
* GLOBAL IN에서 리터럴 사용을 허용합니다(예: `SELECT * FROM remote('localhost', system.one) WHERE dummy global in (0)`) [#10196](https://github.com/ClickHouse/ClickHouse/pull/10196) ([Azat Khuzhin](https://github.com/azat))
* `clickhouse-client`의 대화형 모드에서 여러 사소한 문제를 수정했습니다 [#10194](https://github.com/ClickHouse/ClickHouse/pull/10194) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 불필요한 Dictionaries 로드를 방지(system.tables, DROP/SHOW CREATE TABLE) [#10164](https://github.com/ClickHouse/ClickHouse/pull/10164) ([Azat Khuzhin](https://github.com/azat))
* RWLock 업데이트: `getLock()`에 timeout 매개변수 추가 + 단계 공정성(phase fair)을 보장하도록 구현 재작업 [#10073](https://github.com/ClickHouse/ClickHouse/pull/10073) ([Alexander Kazakov](https://github.com/Akazz))
* 네이티브 mysql-connector-java(JDBC)와의 호환성이 개선되었습니다 [#10021](https://github.com/ClickHouse/ClickHouse/pull/10021) ([BohuTANG](https://github.com/BohuTANG))
* 함수 `toString`은 단조 함수로 간주되며, String 또는 LowCardinality(String) 인수에 대해 자명한 경우에 적용되더라도 인덱스 분석에 사용할 수 있습니다. [#10110](https://github.com/ClickHouse/ClickHouse/pull/10110) ([Amos Bird](https://github.com/amosbird))
* 명령어 `{CREATE|DROP} USER/ROLE/ROW POLICY/SETTINGS PROFILE/QUOTA`, `GRANT`에 `ON CLUSTER` 절 지원을 추가했습니다. [#9811](https://github.com/ClickHouse/ClickHouse/pull/9811) ([Vitaly Baranov](https://github.com/vitlibar))
* S3 URI용 가상 호스팅 스타일 지원 [#9998](https://github.com/ClickHouse/ClickHouse/pull/9998) ([Pavel Kovalenko](https://github.com/Jokser))
* 이제 인수가 없는 사전의 layout 유형은 사전 DDL 쿼리에서 둥근 괄호 없이 지정할 수 있습니다. 문제 [#10057](https://github.com/ClickHouse/ClickHouse/issues/10057)을 수정했습니다. [#10064](https://github.com/ClickHouse/ClickHouse/pull/10064) ([alesapin](https://github.com/alesapin))
* filepath에서 앞에 0이 붙은 숫자 범위를 사용할 수 있도록 기능 추가 [#9989](https://github.com/ClickHouse/ClickHouse/pull/9989) ([Olga Khvostikova](https://github.com/stavrolia))
* CROSS JOIN의 메모리 사용량이 개선되었습니다. [#10029](https://github.com/ClickHouse/ClickHouse/pull/10029) ([Artem Zuikov](https://github.com/4ertus2))
* 원격 테이블의 구조를 가져올 때 skip\_unavailable\_shards가 설정된 경우 클러스터의 모든 세그먼트에 연결을 시도합니다. [#7278](https://github.com/ClickHouse/ClickHouse/pull/7278) ([nvartolomei](https://github.com/nvartolomei))
* `system.tables` 테이블에 `total_rows`/`total_bytes` 컬럼을 추가했습니다. [#9919](https://github.com/ClickHouse/ClickHouse/pull/9919) ([Azat Khuzhin](https://github.com/azat))
* 시스템 로그 테이블은 이제 기본적으로 폴리모픽 파트를 사용합니다. [#9905](https://github.com/ClickHouse/ClickHouse/pull/9905) ([Anton Popov](https://github.com/CurtizJ))
* system.settings/merge\_tree\_settings에 type 컬럼을 추가 [#9909](https://github.com/ClickHouse/ClickHouse/pull/9909) ([Azat Khuzhin](https://github.com/azat))
* server 시작 시점에 가능한 한 이른 단계에서 사용 가능한 CPU 명령어를 확인합니다. [#9888](https://github.com/ClickHouse/ClickHouse/pull/9888) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 단일 스레드에서 정렬된 단일 파트만 읽으므로 뮤테이션에서 `ORDER BY` 단계를 제거했습니다. 또한 뮤테이션의 행이 정렬 키(sorting key) 순서대로 정렬되어 있고 이 순서가 깨지지 않는지 확인하는 검사를 추가했습니다. [#9886](https://github.com/ClickHouse/ClickHouse/pull/9886) ([alesapin](https://github.com/alesapin))
* 왼쪽 피연산자가 FixedString인 경우 LIKE 연산자를 구현했습니다. 이는 TPC-DS 쿼리를 더 잘 지원하기 위해 필요합니다. [#9890](https://github.com/ClickHouse/ClickHouse/pull/9890) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 중첩된 분산 테이블에서는 `force_optimize_skip_unused_shards`를 비활성화하는 `force_optimize_skip_unused_shards_no_nested`를 추가했습니다 [#9812](https://github.com/ClickHouse/ClickHouse/pull/9812) ([Azat Khuzhin](https://github.com/azat))
* 이제 MergeTree 데이터 파트의 컬럼 크기는 한 번만 계산됩니다. [#9827](https://github.com/ClickHouse/ClickHouse/pull/9827) ([alesapin](https://github.com/alesapin))
* `optimize_skip_unused_shards`에 대한 상수 표현식을 평가하도록 개선했습니다(즉, `SELECT * FROM foo_dist WHERE key=xxHash32(0)`) [#8846](https://github.com/ClickHouse/ClickHouse/pull/8846) ([Azat Khuzhin](https://github.com/azat))
* TTL 표현식에서 `Date` 또는 `DateTime` 컬럼 사용 여부를 확인하던 검사가 제거되었습니다. [#9967](https://github.com/ClickHouse/ClickHouse/pull/9967) ([Vladimir Chebotarev](https://github.com/excitoon))
* DiskS3 하드 링크 구현 최적화. [#9760](https://github.com/ClickHouse/ClickHouse/pull/9760) ([Pavel Kovalenko](https://github.com/Jokser))
* `set multiple_joins_rewriter_version = 2`를 설정하면 이름이 충돌하지 않는 컬럼을 그대로 유지하는 다중 JOIN 재작성의 두 번째 버전이 활성화됩니다. 이 기능은 `USING` 절을 사용하는 다중 JOIN을 지원하며, 서브쿼리가 포함된 JOIN에서 `select *`를 허용합니다. [#9739](https://github.com/ClickHouse/ClickHouse/pull/9739) ([Artem Zuikov](https://github.com/4ertus2))
* StorageMergeTree에 대한 "non-blocking" alter 구현 [#9606](https://github.com/ClickHouse/ClickHouse/pull/9606) ([alesapin](https://github.com/alesapin))
* DiskS3에 MergeTree 완전 지원 추가 [#9646](https://github.com/ClickHouse/ClickHouse/pull/9646) ([Pavel Kovalenko](https://github.com/Jokser))
* 빈 문자열도 구분자로 지원하도록 `splitByString`을 확장했습니다. [#9742](https://github.com/ClickHouse/ClickHouse/pull/9742) ([hcz](https://github.com/hczhcz))
* `system.trace_log`에 `timestamp_ns` 컬럼을 추가했습니다. 이 컬럼에는 trace 이벤트의 고정밀 타임스탬프가 포함되어 있어 스레드 프로필("flame charts")의 타임라인을 생성할 수 있습니다. [#9696](https://github.com/ClickHouse/ClickHouse/pull/9696) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 설정 `send_logs_level`이 활성화되면 로그 메시지와 쿼리 진행 상황이 서로 섞이지 않도록 했습니다. [#9634](https://github.com/ClickHouse/ClickHouse/pull/9634) ([Azat Khuzhin](https://github.com/azat))
* `MATERIALIZE TTL IN PARTITION` 구문 지원이 추가되었습니다. [#9581](https://github.com/ClickHouse/ClickHouse/pull/9581) ([Vladimir Chebotarev](https://github.com/excitoon))
* Avro의 중첩 필드에서 복합 타입 지원 [#10502](https://github.com/ClickHouse/ClickHouse/pull/10502) ([Andrew Onyshchuk](https://github.com/oandrew))

<div id="performance-improvement">
  #### 성능 개선
</div>

* Partial MergeJoin에서 오른쪽 테이블에 대한 삽입 로직을 개선했습니다. [#10467](https://github.com/ClickHouse/ClickHouse/pull/10467) ([Artem Zuikov](https://github.com/4ertus2))
* 행 지향 포맷의 성능을 개선했습니다(CSV는 10% 이상, 좁은 테이블의 경우 Avro는 35% 이상). [#10503](https://github.com/ClickHouse/ClickHouse/pull/10503) ([Andrew Onyshchuk](https://github.com/oandrew))
* `IN` 연산자 오른쪽에 명시적으로 정의된 Set과 왼쪽의 튜플을 사용하는 쿼리의 성능을 개선했습니다. [#10385](https://github.com/ClickHouse/ClickHouse/pull/10385) ([Anton Popov](https://github.com/CurtizJ))
* HashJoin에서 해시 테이블의 메모리 사용량을 줄였습니다. [#10416](https://github.com/ClickHouse/ClickHouse/pull/10416) ([Artem Zuikov](https://github.com/4ertus2))
* StorageDictionary용 특수 HashJoin을 추가했습니다. `dictGet()` 함수를 JOIN으로 재작성할 수 있습니다. 이 자체로는 하위 호환성이 깨지지 않지만, 일부 설치 환경에서는 [#8400](https://github.com/ClickHouse/ClickHouse/issues/8400)이 드러날 수 있습니다. [#10133](https://github.com/ClickHouse/ClickHouse/pull/10133) ([Artem Zuikov](https://github.com/4ertus2))
* 대상 테이블이 지원하는 경우 materialized view의 병렬 삽입을 활성화했습니다. [#10052](https://github.com/ClickHouse/ClickHouse/pull/10052) ([vxider](https://github.com/Vxider))
* 단조 함수(monotonic functions)를 사용하는 인덱스 분석의 성능을 개선했습니다. [#9607](https://github.com/ClickHouse/ClickHouse/pull/9607)[#10026](https://github.com/ClickHouse/ClickHouse/pull/10026) ([Anton Popov](https://github.com/CurtizJ))
* 블룸 필터의 토큰화 속도를 높이기 위해 SSE2 또는 SSE4.2 SIMD 인트린식을 사용합니다. [#9968](https://github.com/ClickHouse/ClickHouse/pull/9968) ([Vasily Nemkov](https://github.com/Enmk))
* `IN` 연산자 오른쪽에 명시적으로 정의된 Set을 사용하는 쿼리의 성능을 개선했습니다. 이 변경으로 20.3 버전의 성능 회귀를 수정했습니다. [#9740](https://github.com/ClickHouse/ClickHouse/pull/9740) ([Anton Popov](https://github.com/CurtizJ))
* 이제 clickhouse-copier는 각 파티션을 여러 조각으로 나누어 각각을 독립적으로 복사합니다. [#9075](https://github.com/ClickHouse/ClickHouse/pull/9075) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 더 많은 집계 메서드를 추가했습니다. 예를 들어 이제 TPC-H 쿼리 1은 `FixedHashMap<UInt16, AggregateDataPtr>`를 선택해 25%의 성능 향상을 얻습니다. [#9829](https://github.com/ClickHouse/ClickHouse/pull/9829) ([Amos Bird](https://github.com/amosbird))
* pre-limit transform에서 여러 스트림에 단일 행 카운터를 사용합니다. 이를 통해 `limit`은 있지만 `order by`는 없는 쿼리(예: `select f(x) from (select x from t limit 1000000000)`)에서 파이프라인 스트림을 하나로 합치지 않고도 이후 처리에 여러 thread를 사용할 수 있습니다. [#9602](https://github.com/ClickHouse/ClickHouse/pull/9602) ([Nikolai Kochetov](https://github.com/KochetovNicolai))

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* ClickHouse-Extras의 AWS SDK 라이브러리 포크 버전을 사용합니다 [#10527](https://github.com/ClickHouse/ClickHouse/pull/10527) ([Pavel Kovalenko](https://github.com/Jokser))
* 새 ALTER RENAME COLUMN 쿼리에 대한 통합 테스트를 추가했습니다. [#10654](https://github.com/ClickHouse/ClickHouse/pull/10654) ([vzakaznikov](https://github.com/vzakaznikov))
* 잘못된 인수로 함수 `now64`를 호출할 때 발생할 수 있는 부호 있는 정수 오버플로우를 수정했습니다. 이 수정으로 [#8973](https://github.com/ClickHouse/ClickHouse/issues/8973) [#10511](https://github.com/ClickHouse/ClickHouse/pull/10511)이 해결됩니다. ([alexey-milovidov](https://github.com/alexey-milovidov))
* 빌드 구성이 Oss-fuzz와 호환되도록 퍼저와 새니타이저 구성을 분리했습니다. [#10494](https://github.com/ClickHouse/ClickHouse/pull/10494) ([kyprizel](https://github.com/kyprizel))
* clang-10의 clang-tidy 관련 수정 사항. [#10420](https://github.com/ClickHouse/ClickHouse/pull/10420) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 오류 메시지에 절대 경로를 표시합니다. 그렇지 않으면 KDevelop는 올바른 파일로 이동하지 못하고 새 파일을 대신 엽니다. [#10434](https://github.com/ClickHouse/ClickHouse/pull/10434) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Address 새니타이저를 사용한 CI 스트레스 테스트의 오류를 조사하기 위해 `ASAN_OPTIONS` 환경 변수를 추가했습니다. [#10440](https://github.com/ClickHouse/ClickHouse/pull/10440) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* clang 빌드에서 ThinLTO를 활성화합니다(실험 기능). [#10435](https://github.com/ClickHouse/ClickHouse/pull/10435) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 시스템에 Z3 solver가 설치되어 있을 때 생길 수 있는 Z3에 대한 의도치 않은 종속성을 제거했습니다. [#10426](https://github.com/ClickHouse/ClickHouse/pull/10426) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 통합 테스트용 docker 파일을 docker/ 디렉터리로 이동. [#10335](https://github.com/ClickHouse/ClickHouse/pull/10335) ([Ilya Yatsishin](https://github.com/qoega))
* CI에서 `clang-10`을 사용할 수 있게 했습니다. 이로써 [#10238](https://github.com/ClickHouse/ClickHouse/issues/10238) 문제가 해결됩니다. [#10384](https://github.com/ClickHouse/ClickHouse/pull/10384) ([alexey-milovidov](https://github.com/alexey-milovidov))
* OpenSSL을 upstream master로 업데이트했습니다. TLS 연결이 `OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error` 및 `SSL Exception: error:2400006E:random number generator::error retrieving entropy` 메시지와 함께 실패할 수 있는 문제를 수정했습니다. 이 문제는 버전 20.1에 있었습니다. [#8956](https://github.com/ClickHouse/ClickHouse/pull/8956) ([alexey-milovidov](https://github.com/alexey-milovidov))
* clang-10 빌드 문제를 수정했습니다. [#10238](https://github.com/ClickHouse/ClickHouse/issues/10238) [#10370](https://github.com/ClickHouse/ClickHouse/pull/10370) ([Amos Bird](https://github.com/amosbird))
* [materialized view용 Parallel INSERT](https://github.com/ClickHouse/ClickHouse/pull/10052) 성능 테스트를 추가했습니다. [#10345](https://github.com/ClickHouse/ClickHouse/pull/10345) ([vxider](https://github.com/Vxider))
* 불안정하게 실패하던 테스트 `test_settings_constraints_distributed.test_insert_clamps_settings`를 수정했습니다. [#10346](https://github.com/ClickHouse/ClickHouse/pull/10346) ([Vitaly Baranov](https://github.com/vitlibar))
* CI ClickHouse에 테스트 결과 업로드용 유틸리티 추가 [#10330](https://github.com/ClickHouse/ClickHouse/pull/10330) ([Ilya Yatsishin](https://github.com/qoega))
* junit\_to\_html 도구에서 테스트 결과를 JSONEachRow 포맷으로 변환 [#10323](https://github.com/ClickHouse/ClickHouse/pull/10323) ([Ilya Yatsishin](https://github.com/qoega))
* cctz 업데이트. [#10215](https://github.com/ClickHouse/ClickHouse/pull/10215) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 가장 기본적인 JUnit XML 보고서만으로도 HTML 보고서를 생성할 수 있게 했습니다. [#10247](https://github.com/ClickHouse/ClickHouse/pull/10247) ([Ilya Yatsishin](https://github.com/qoega))
* 최소 컴파일러 버전 확인을 업데이트했습니다. 문제 [#10250](https://github.com/ClickHouse/ClickHouse/issues/10250)의 근본 원인을 수정했습니다 [#10256](https://github.com/ClickHouse/ClickHouse/pull/10256) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 분산 테이블 기반 라이브 view 테이블에 대한 초기 지원 [#10179](https://github.com/ClickHouse/ClickHouse/pull/10179) ([vzakaznikov](https://github.com/vzakaznikov))
* MergeTreeIndexFullText의 (오탐) MSan 보고를 수정했습니다. 이 문제는 [#9968](https://github.com/ClickHouse/ClickHouse/issues/9968)에서 처음 나타났습니다. [#10801](https://github.com/ClickHouse/ClickHouse/pull/10801) ([alexey-milovidov](https://github.com/alexey-milovidov))
* clickhouse-docker-util [#10151](https://github.com/ClickHouse/ClickHouse/pull/10151) ([filimonov](https://github.com/filimonov))
* pdqsort를 최신 버전으로 업데이트 [#10171](https://github.com/ClickHouse/ClickHouse/pull/10171) ([Ivan](https://github.com/abyss7))
* libdivide를 v3.0으로 업데이트 [#10169](https://github.com/ClickHouse/ClickHouse/pull/10169) ([Ivan](https://github.com/abyss7))
* 다형성 파트가 활성화된 경우를 확인하는 검사를 추가했습니다. [#10086](https://github.com/ClickHouse/ClickHouse/pull/10086) ([Anton Popov](https://github.com/CurtizJ))
* FreeBSD용 크로스 컴파일 build를 추가했습니다. 이로써 [#9465](https://github.com/ClickHouse/ClickHouse/issues/9465) [#9643](https://github.com/ClickHouse/ClickHouse/pull/9643)가 해결됩니다 ([Ivan](https://github.com/abyss7))
* [#6924](https://github.com/ClickHouse/ClickHouse/issues/6924) 관련 성능 테스트 추가 [#6980](https://github.com/ClickHouse/ClickHouse/pull/6980) ([filimonov](https://github.com/filimonov))
* 성능 테스트를 개선하기 위해 `File` 엔진에 `/dev/null` 지원 추가 [#8455](https://github.com/ClickHouse/ClickHouse/pull/8455) ([Amos Bird](https://github.com/amosbird))
* /dbms 내부의 모든 폴더를 한 단계 상위로 이동 [#9974](https://github.com/ClickHouse/ClickHouse/pull/9974) ([Ivan](https://github.com/abyss7))
* 단일 스레드로 MergeTree를 읽을 때 순서대로 수행되는지 확인하는 테스트를 추가했습니다. [#9670](https://github.com/ClickHouse/ClickHouse/issues/9670)의 추가 사항입니다 [#9762](https://github.com/ClickHouse/ClickHouse/pull/9762) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 레이스 컨디션을 방지하도록 `00964_live_view_watch_events_heartbeat.py` 테스트를 수정했습니다. [#9944](https://github.com/ClickHouse/ClickHouse/pull/9944) ([vzakaznikov](https://github.com/vzakaznikov))
* 통합 테스트 `test_settings_constraints`를 수정했습니다 [#9962](https://github.com/ClickHouse/ClickHouse/pull/9962) ([Vitaly Baranov](https://github.com/vitlibar))
* 각 함수를 별도 파일로 분리, 12편. [#9922](https://github.com/ClickHouse/ClickHouse/pull/9922) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 튜플 배열 분석이 극도로 느린 경우에 대한 성능 테스트를 추가했습니다. [#9872](https://github.com/ClickHouse/ClickHouse/pull/9872) ([alexey-milovidov](https://github.com/alexey-milovidov))
* zstd를 1.4.4로 업데이트했습니다. 성능과 압축률이 소폭 개선되었습니다. 서로 다른 버전의 ClickHouse로 레플리카를 실행하면 설명과 함께 `Data after merge is not byte-identical to data on another replicas.`라는 오류 메시지가 표시될 수 있습니다. 이러한 메시지는 정상 동작이므로 걱정하지 않아도 됩니다. [#10663](https://github.com/ClickHouse/ClickHouse/pull/10663) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `system.stack_trace`의 TSan 리포트를 수정했습니다. [#9832](https://github.com/ClickHouse/ClickHouse/pull/9832) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `clock_getres` 의존성을 제거했습니다. [#9833](https://github.com/ClickHouse/ClickHouse/pull/9833) ([alexey-milovidov](https://github.com/alexey-milovidov))
* clang-tidy를 사용한 식별자 이름 검사를 추가했습니다. [#9799](https://github.com/ClickHouse/ClickHouse/pull/9799) ([alexey-milovidov](https://github.com/alexey-milovidov))
* "builder" Docker image를 업데이트했습니다. 이 이미지는 CI에서 사용되지는 않지만 개발자에게 유용합니다. [#9809](https://github.com/ClickHouse/ClickHouse/pull/9809) ([alexey-milovidov](https://github.com/alexey-milovidov))
* CI에서 더 이상 사용하지 않는 기존 `performance-test` 도구를 제거했습니다. `clickhouse-performance-test`도 훌륭한 도구이지만, 이제는 환경이 다양하게 바뀌더라도 정교한 통계 공식을 사용해 비교 테스트를 수행하고 신뢰도 높은 결과를 얻을 수 있는 훨씬 더 우수한 도구를 사용합니다. [#9796](https://github.com/ClickHouse/ClickHouse/pull/9796) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 대부분의 clang-static-analyzer 검사를 추가했습니다. [#9765](https://github.com/ClickHouse/ClickHouse/pull/9765) ([alexey-milovidov](https://github.com/alexey-milovidov))
* MongoDB URI 지원을 준비하기 위해 Poco를 1.9.3으로 업데이트했습니다. [#6892](https://github.com/ClickHouse/ClickHouse/pull/6892) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `-DUSE_STATIC_LIBRARIES=0 -DENABLE_JEMALLOC=0`를 사용한 빌드 수정 [#9651](https://github.com/ClickHouse/ClickHouse/pull/9651) ([Artem Zuikov](https://github.com/4ertus2))
* 변경 로그 스크립트에서 머지 커밋이 릴리스 브랜치로 체리픽된 경우, 커밋 설명에서 PR 이름을 가져오도록 변경했습니다. [#9708](https://github.com/ClickHouse/ClickHouse/pull/9708) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 백포트 스크립트에서 `vX.X-conflicts` 태그를 지원하도록 했습니다. [#9705](https://github.com/ClickHouse/ClickHouse/pull/9705) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 백포트 스크립트의 `auto-label`을 수정했습니다. [#9685](https://github.com/ClickHouse/ClickHouse/pull/9685) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* Darwin 크로스 빌드에서 libc++를 사용해 네이티브 빌드와 일관성을 맞춥니다. [#9665](https://github.com/ClickHouse/ClickHouse/pull/9665) ([Hui Wang](https://github.com/huiwang))
* 불안정한 테스트 `01017_uniqCombined_memory_usage`를 수정했습니다. [#7236](https://github.com/ClickHouse/ClickHouse/issues/7236)의 후속 작업입니다. [#9667](https://github.com/ClickHouse/ClickHouse/pull/9667) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 네이티브 macOS Clang 컴파일러용 빌드 문제 수정 [#9649](https://github.com/ClickHouse/ClickHouse/pull/9649) ([Ivan](https://github.com/abyss7))
* `pthread_mutex_lock`, `pthread_mutex_unlock` 함수 호출 주변에 다양한 이상 동작을 추가할 수 있게 했습니다. [#9635](https://github.com/ClickHouse/ClickHouse/pull/9635) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `packager` 스크립트에 `clang-tidy` 지원이 추가되었습니다. [#9625](https://github.com/ClickHouse/ClickHouse/pull/9625) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 번들에 포함되지 않은 msgpack을 사용할 수 있도록 했습니다. [#10168](https://github.com/ClickHouse/ClickHouse/pull/10168) ([Azat Khuzhin](https://github.com/azat))

<div id="clickhouse-release-v203">
  ## ClickHouse 릴리스 v20.3
</div>

<div id="clickhouse-release-v203212-lts-2020-11-02">
  ### ClickHouse 릴리스 v20.3.21.2-lts, 2020-11-02
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* sharding\_key에서 dictGet 관련 문제(및 이와 유사하게 함수 Context가 영구적으로 저장되는 위치의 문제)를 수정했습니다. [#16205](https://github.com/ClickHouse/ClickHouse/pull/16205) ([Azat Khuzhin](https://github.com/azat)).
* 쿼리에 `WHERE`, `PREWHERE`, `GLOBAL IN`이 포함된 경우 `Distributed` 테이블에서 쿼리 결과가 잘못 비어 있던 문제를 수정했습니다. [#15792](https://github.com/ClickHouse/ClickHouse/issues/15792)를 해결했습니다. [#15933](https://github.com/ClickHouse/ClickHouse/pull/15933) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `TSV/CSVWithNames` 포맷에서 헤더가 누락되거나 과도하게 포함되던 문제를 수정했습니다. 이 변경으로 [#12504](https://github.com/ClickHouse/ClickHouse/issues/12504)를 해결했습니다. [#13343](https://github.com/ClickHouse/ClickHouse/pull/13343) ([Azat Khuzhin](https://github.com/azat)).

<div id="clickhouse-release-v203206-lts-2020-10-09">
  ### ClickHouse 릴리스 v20.3.20.6-lts, 2020-10-09
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `MOVE` 또는 `REPLACE PARTITION` 이후, 드물게는 `DETACH` 또는 `DROP PARTITION` 이후에 존재하지 않는 part를 기다리며 mutation이 멈출 수 있었습니다. 이 문제가 수정되었습니다. [#15724](https://github.com/ClickHouse/ClickHouse/pull/15724), [#15537](https://github.com/ClickHouse/ClickHouse/pull/15537) ([tavplubix](https://github.com/tavplubix)).
* 동일한 `MySQL` 엔진 테이블에 대한 서브쿼리가 많은 쿼리에서 발생하던 멈춤 문제를 수정했습니다. 이전에는 하나의 쿼리에서 동일한 `MySQL` 테이블에 대한 서브쿼리가 16개를 초과하면 무한정 멈춰 있었습니다. [#15299](https://github.com/ClickHouse/ClickHouse/pull/15299) ([Anton Popov](https://github.com/CurtizJ)).
* 쿼리에 Merge 테이블에 대한 JOIN이 있을 때 GROUP BY에서 발생하던 'Unknown identifier' 문제를 수정했습니다. [#15242](https://github.com/ClickHouse/ClickHouse/pull/15242) ([Artem Zuikov](https://github.com/4ertus2)).
* 서브쿼리에 finalizeAggregation 함수가 포함된 경우 프레디케이트 push down이 동작하도록 수정했습니다. [#14847](https://github.com/ClickHouse/ClickHouse/issues/14847) 문제를 수정했습니다. [#14937](https://github.com/ClickHouse/ClickHouse/pull/14937) ([filimonov](https://github.com/filimonov)).
* 동시에 실행되는 `ALTER ... REPLACE/MOVE PARTITION ...` 쿼리로 인해 교착 상태가 발생할 수 있었습니다. 이 문제가 수정되었습니다. [#13626](https://github.com/ClickHouse/ClickHouse/pull/13626) ([tavplubix](https://github.com/tavplubix)).

<div id="clickhouse-release-v203194-lts-2020-09-18">
  ### ClickHouse 릴리스 v20.3.19.4-lts, 2020-09-18
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 조회 대상 컬럼에 다른 컬럼에 의존하는 `DEFAULT` 표현식이 있고, 그 다른 컬럼도 `DEFAULT`를 가지며 `SELECT` 쿼리에 포함되지 않고 디스크에도 존재하지 않는 경우 드물게 발생하던 오류를 수정했습니다. [#14531](https://github.com/ClickHouse/ClickHouse/issues/14531)을 부분적으로 수정합니다. [#14845](https://github.com/ClickHouse/ClickHouse/pull/14845) ([alesapin](https://github.com/alesapin)).
* 할당 표현식에 널 허용 컬럼과 상수 값(예: `UPDATE x = 42`)이 포함된 `ALTER UPDATE` mutation에서 컬럼 값이 잘못되거나 segfault가 발생하던 버그를 수정했습니다. [#13634](https://github.com/ClickHouse/ClickHouse/issues/13634), [#14045](https://github.com/ClickHouse/ClickHouse/issues/14045)를 수정합니다. [#14646](https://github.com/ClickHouse/ClickHouse/pull/14646) ([alesapin](https://github.com/alesapin)).
* 결과 컬럼의 decimal scale이 잘못 계산되어 Decimal 곱셈 결과가 잘못되던 문제를 수정했습니다. [#14603](https://github.com/ClickHouse/ClickHouse/pull/14603) ([Artem Zuikov](https://github.com/4ertus2)).

<div id="improvement">
  #### 개선 사항
</div>

* 컴팩트 파트에서 사용자 지정 코덱을 지원합니다. [#12183](https://github.com/ClickHouse/ClickHouse/pull/12183) ([Anton Popov](https://github.com/CurtizJ)).

<div id="clickhouse-release-v2031810-lts-2020-09-08">
  ### ClickHouse 릴리스 v20.3.18.10-lts, 2020-09-08
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `PipelineExecutor` 자체에서 예외가 발생하면 쿼리 실행을 중단하도록 수정했습니다. 이로써 드물게 발생할 수 있는 쿼리 멈춤 현상을 방지할 수 있습니다. [#14334](https://github.com/ClickHouse/ClickHouse/issues/14334)의 후속 작업입니다. [#14402](https://github.com/ClickHouse/ClickHouse/pull/14402) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* cache 딕셔너리가 소스에 존재하는 값 대신 기본값을 반환하던 경우를 수정했습니다. [#13624](https://github.com/ClickHouse/ClickHouse/pull/13624) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 데이터베이스 또는 테이블 이름에 점이 포함된 경우 `users.xml`에서 행 정책을 파싱할 때 발생하던 문제를 수정했습니다. 이로써 [#5779](https://github.com/ClickHouse/ClickHouse/issues/5779), [#12527](https://github.com/ClickHouse/ClickHouse/issues/12527)가 해결됩니다. [#13199](https://github.com/ClickHouse/ClickHouse/pull/13199) ([Vitaly Baranov](https://github.com/vitlibar)).
* CAST(Nullable(String), Enum()) 문제를 수정했습니다. [#12745](https://github.com/ClickHouse/ClickHouse/pull/12745) ([Azat Khuzhin](https://github.com/azat)).
* `text_log`의 data race를 수정했습니다. 이는 실제 버그에 해당하지 않습니다. [#9726](https://github.com/ClickHouse/ClickHouse/pull/9726) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="improvement">
  #### 개선 사항
</div>

* 긴 쿼리에서 발생하던 잘못된 오류를 수정했습니다. 올바른 쿼리임에도 `Max query size exceeded`가 아닌 구문 오류가 반환될 수 있었습니다. [#13928](https://github.com/ClickHouse/ClickHouse/pull/13928) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* parseDateTimeBestEffortOrNull/Zero 함수에서 값을 완전히 parse하지 못한 경우 NULL/0을 반환하도록 했습니다. 이 변경으로 [#7876](https://github.com/ClickHouse/ClickHouse/issues/7876)을 수정했습니다. [#11653](https://github.com/ClickHouse/ClickHouse/pull/11653) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* LowCardinality를 사용하는 매우 짧은 쿼리를 소폭 최적화했습니다. [#14129](https://github.com/ClickHouse/ClickHouse/pull/14129) ([Anton Popov](https://github.com/CurtizJ)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* clang-10으로 마이그레이션한 후 HashTable에서 발생한 UBSan 경고(`nullptr`에 0을 더하는 문제)를 수정했습니다. [#10638](https://github.com/ClickHouse/ClickHouse/pull/10638) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="clickhouse-release-v20317173-lts-2020-08-15">
  ### ClickHouse 릴리스 v20.3.17.173-lts, 2020-08-15
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* StorageMerge와 `set enable_optimize_predicate_expression=1` 사용 시 JOIN에서 발생하던 충돌을 수정했습니다. [#13679](https://github.com/ClickHouse/ClickHouse/pull/13679) ([Artem Zuikov](https://github.com/4ertus2)).
* `NULL` 요소가 있는 튜플 비교 시 잘못된 반환 타입을 수정했습니다. [#12461](https://github.com/ClickHouse/ClickHouse/issues/12461)을 해결했습니다. [#13420](https://github.com/ClickHouse/ClickHouse/pull/13420) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 상수 컬럼이 있고 프라이머리 키의 `ORDER BY` 접두사를 사용하는 쿼리를 수정했습니다. [#13396](https://github.com/ClickHouse/ClickHouse/pull/13396) ([Anton Popov](https://github.com/CurtizJ)).
* roundUpToPowerOfTwoOrZero()에서 MSB가 설정된 숫자에 대해 전달된 숫자를 그대로 반환하도록 수정했습니다. [#13234](https://github.com/ClickHouse/ClickHouse/pull/13234) ([Azat Khuzhin](https://github.com/azat)).

<div id="clickhouse-release-v20316165-lts-2020-08-10">
  ### ClickHouse 릴리스 v20.3.16.165-lts 2020-08-10
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `parseDateTimeBestEffort` 함수에 Unix timestamp가 인수로 전달될 때 발생하던 오류를 수정했습니다. 이 수정으로 [#13362](https://github.com/ClickHouse/ClickHouse/issues/13362)가 해결됩니다. [#13441](https://github.com/ClickHouse/ClickHouse/pull/13441) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `NaN` 값을 포함하는 Float 타입에 대해 호출된 `uniqExact`, `topK`, `sumDistinct` 및 유사한 집계 함수에서 발생할 수 있던 성능 저하와 약간 잘못된 결과 문제를 수정했습니다. 또한 디버그 빌드에서 assert를 발생시키던 문제도 수정했습니다. 이 수정으로 [#12491](https://github.com/ClickHouse/ClickHouse/issues/12491)이 해결되었습니다. [#13254](https://github.com/ClickHouse/ClickHouse/pull/13254) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `cond`로 리터럴 NULL이 아닌 널 허용 constexpr를 사용할 때 발생하던 if 함수 문제를 수정했습니다. [#12463](https://github.com/ClickHouse/ClickHouse/issues/12463)를 해결합니다. [#13226](https://github.com/ClickHouse/ClickHouse/pull/13226) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 배열 요소와 배열 첨자가 모두 널 허용인 경우 `arrayElement` 함수의 assert를 수정했습니다. 이로써 [#12172](https://github.com/ClickHouse/ClickHouse/issues/12172)가 해결되었습니다. [#13224](https://github.com/ClickHouse/ClickHouse/pull/13224) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 로컬 레플리카에서 SELECT를 수행할 때 스레드 수가 불필요하게 제한되던 문제를 수정했습니다. [#12840](https://github.com/ClickHouse/ClickHouse/pull/12840) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `WITH TOTALS` 쿼리에서 나타날 수 있던 데이터의 불필요한 오버플로우 행 문제를 수정했습니다. [#12747](https://github.com/ClickHouse/ClickHouse/pull/12747) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `IN` 절에서 함수로 해석되는 큰 튜플의 성능을 개선했습니다. 이는 어떤 불분명한 이유로 사용자가 `WHERE x IN (1, 2, ...)` 대신 `WHERE x IN tuple(1, 2, ...)`를 작성하는 경우입니다. [#12700](https://github.com/ClickHouse/ClickHouse/pull/12700) ([Anton Popov](https://github.com/CurtizJ)).
* input\_format\_parallel\_parsing의 메모리 추적 문제를 수정했습니다(스레드를 그룹에 연결하여). [#12672](https://github.com/ClickHouse/ClickHouse/pull/12672) ([Azat Khuzhin](https://github.com/azat)).
* [#12293](https://github.com/ClickHouse/ClickHouse/issues/12293)를 수정하여 서브쿼리에 WITH 절이 포함된 경우에도 프레디케이트 푸시를 허용하도록 했습니다. [#12663](https://github.com/ClickHouse/ClickHouse/pull/12663) ([Winter Zhang](https://github.com/zhang2014)).
* const 표현식이 있는 블룸 필터 인덱스 문제를 수정했습니다. [#10572](https://github.com/ClickHouse/ClickHouse/issues/10572) [#12659](https://github.com/ClickHouse/ClickHouse/pull/12659) ([Winter Zhang](https://github.com/zhang2014)).
* 브로커를 사용할 수 없을 때를 비롯해 여러 경우에 StorageKafka에서 발생하던 SIGSEGV를 수정했습니다. [#12658](https://github.com/ClickHouse/ClickHouse/pull/12658) ([Azat Khuzhin](https://github.com/azat)).
* 서버 충돌로 이어질 수 있던 cache 레이아웃 외부 딕셔너리의 경쟁 상태를 수정했습니다. [#12566](https://github.com/ClickHouse/ClickHouse/pull/12566) ([alesapin](https://github.com/alesapin)).
* `enable_mixed_granularity_parts=1`일 때 `ALTER DELETE` 쿼리 후 기존 파트가 손상되던 버그를 수정했습니다. [#12536](https://github.com/ClickHouse/ClickHouse/issues/12536)을 해결합니다. [#12543](https://github.com/ClickHouse/ClickHouse/pull/12543) ([alesapin](https://github.com/alesapin)).
* 인수 개수가 잘못된 함수 `in`에 대한 예외 메시지를 개선했습니다. [#12529](https://github.com/ClickHouse/ClickHouse/pull/12529) ([Anton Popov](https://github.com/CurtizJ)).
* compact 파트를 읽을 때 발생하던 성능 문제를 수정했습니다. [#12492](https://github.com/ClickHouse/ClickHouse/pull/12492) ([Anton Popov](https://github.com/CurtizJ)).
* `text_log`이 활성화된 경우 발생하던 교착 상태를 해결했습니다. [#12452](https://github.com/ClickHouse/ClickHouse/pull/12452) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* StorageMerge에서 발생할 수 있는 segfault를 수정했습니다. [#12054](https://github.com/ClickHouse/ClickHouse/issues/12054)를 해결합니다. [#12401](https://github.com/ClickHouse/ClickHouse/pull/12401) ([tavplubix](https://github.com/tavplubix)).
* `-State` 및 `Nullable` 인수가 있는 집계 함수에서 `TOTALS/ROLLUP/CUBE`가 올바르게 동작하도록 수정했습니다. 이로써 [#12163](https://github.com/ClickHouse/ClickHouse/issues/12163)가 해결됩니다. [#12376](https://github.com/ClickHouse/ClickHouse/pull/12376) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `WITH FILL` 수정자에서 컬럼 순서를 바로잡았습니다. 이전에는 `ORDER BY` 문의 컬럼 순서가 반영되지 않았습니다. [#12306](https://github.com/ClickHouse/ClickHouse/pull/12306) ([Anton Popov](https://github.com/CurtizJ)).
* 가상 컬럼(예: `Merge` 테이블의 `_table`)이나 `system.tables`를 쿼리할 때 데이터베이스 이름으로 필터링하는 경우처럼, 시스템 테이블의 "index" 컬럼 또는 가상 컬럼으로 데이터를 필터링하는 표현식이 `Nullable` 타입을 반환할 때 발생하는 "bad cast" 예외를 방지합니다. 이로써 [#12166](https://github.com/ClickHouse/ClickHouse/issues/12166)가 수정되었습니다. [#12305](https://github.com/ClickHouse/ClickHouse/pull/12305) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `TrieDictionary` 로드 실패 후 오류를 표시합니다. [#12290](https://github.com/ClickHouse/ClickHouse/pull/12290) ([Vitaly Baranov](https://github.com/vitlibar)).
* 함수 `arrayFill`가 빈 배열에서 잘못 동작해 충돌이 발생할 수 있던 문제를 수정했습니다. 이 수정은 [#12263](https://github.com/ClickHouse/ClickHouse/issues/12263)을 해결합니다. [#12279](https://github.com/ClickHouse/ClickHouse/pull/12279) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `LowCardinality` 타입에 대해 공통 타입으로 변환하는 기능을 구현했습니다. 이를 통해 LowCardinality 컬럼과 다른 컬럼을 가진 테이블에 대해 UNION ALL을 실행할 수 있습니다. 이로써 [#8212](https://github.com/ClickHouse/ClickHouse/issues/8212) 문제가 해결됩니다. 이로써 [#4342](https://github.com/ClickHouse/ClickHouse/issues/4342) 문제가 해결됩니다. [#12275](https://github.com/ClickHouse/ClickHouse/pull/12275) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `StorageFile`에서 여러 차례 연속으로 삽입할 때 일부 특수 타입의 헤더가 두 번 이상 기록되던 문제를 수정했습니다. 이로써 [#6155](https://github.com/ClickHouse/ClickHouse/issues/6155)가 해결되었습니다. [#12197](https://github.com/ClickHouse/ClickHouse/pull/12197) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 0 또는 1이 아닌 UInt8 값에 대한 논리 함수를 수정했습니다. [#12196](https://github.com/ClickHouse/ClickHouse/pull/12196) ([Alexander Kazakov](https://github.com/Akazz)).
* GROUP BY 단사 함수 제거 시 `dictGet` 인수 검사 로직을 수정했습니다. [#12179](https://github.com/ClickHouse/ClickHouse/pull/12179) ([Azat Khuzhin](https://github.com/azat)).
* 조건이 NULL로 평가될 때 레코드가 삭제되는 문제를 일으키던 `ALTER DELETE`의 잘못된 로직을 수정했습니다. 이로써 [#9088](https://github.com/ClickHouse/ClickHouse/issues/9088)이 해결되었습니다. 이로써 [#12106](https://github.com/ClickHouse/ClickHouse/issues/12106)이 종료되었습니다. [#12153](https://github.com/ClickHouse/ClickHouse/pull/12153) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭(alias)이 있는 경우 외부 DBMS(예: MySQL, ODBC)로 전송할 쿼리 변환을 수정했습니다. 이로써 [#12032](https://github.com/ClickHouse/ClickHouse/issues/12032) 문제가 해결되었습니다. [#12151](https://github.com/ClickHouse/ClickHouse/pull/12151) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 정수 나눗셈에서 발생할 수 있는 오버플로우 문제를 수정했습니다. 이 변경으로 [#12119](https://github.com/ClickHouse/ClickHouse/issues/12119) 문제가 해결됩니다. [#12140](https://github.com/ClickHouse/ClickHouse/pull/12140) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `greatCircleDistance`, `geoDistance`에서 발생할 수 있는 무한 루프 문제를 수정했습니다. 이 수정으로 [#12117](https://github.com/ClickHouse/ClickHouse/issues/12117) 문제도 해결되었습니다. [#12137](https://github.com/ClickHouse/ClickHouse/pull/12137) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 시스템 로그(system.query\_log, metric\_log 등) 또는 engine=Buffer의 기본 테이블에 연결된 조인이나 서브쿼리가 있는 materialized view에서 `There is no query` 예외가 발생하지 않도록 수정했습니다. [#12120](https://github.com/ClickHouse/ClickHouse/pull/12120) ([filimonov](https://github.com/filimonov)).
* 전체 thread 수 제한이 잘못 적용되어 발생하던 `UNION`이 포함된 SELECT 쿼리의 성능 문제를 수정했습니다. [#12030](https://github.com/ClickHouse/ClickHouse/issues/12030)을 해결합니다. [#12103](https://github.com/ClickHouse/ClickHouse/pull/12103) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `-StateResample` combinator에서 발생하던 segfault 문제를 수정했습니다. [#12092](https://github.com/ClickHouse/ClickHouse/pull/12092) ([Anton Popov](https://github.com/CurtizJ)).
* `VIEW`에서 select를 수행할 때 스레드 수가 불필요하게 제한되던 문제를 수정했습니다. [#11937](https://github.com/ClickHouse/ClickHouse/issues/11937). [#12085](https://github.com/ClickHouse/ClickHouse/pull/12085) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `PREWHERE`에 잘못된 타입을 사용할 때 발생할 수 있던 비정상 종료 문제를 수정했습니다. [#12053](https://github.com/ClickHouse/ClickHouse/issues/12053), [#12060](https://github.com/ClickHouse/ClickHouse/issues/12060)을 수정했습니다. [#12060](https://github.com/ClickHouse/ClickHouse/pull/12060) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LowCardinality` 유형에서 함수 `defaultValueOfArgumentType`의 오류 `Expected single dictionary argument for function`를 수정했습니다. [#11808](https://github.com/ClickHouse/ClickHouse/issues/11808)을 해결했습니다. [#12056](https://github.com/ClickHouse/ClickHouse/pull/12056) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Tuple(LowCardinality)` 인수를 사용하는 고차 함수에서 발생하던 `Cannot capture column` 오류를 수정했습니다. [#9766](https://github.com/ClickHouse/ClickHouse/issues/9766) 관련 수정입니다. [#12055](https://github.com/ClickHouse/ClickHouse/pull/12055) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 데이터베이스를 로드할 때 테이블 메타데이터를 병렬로 파싱합니다. 이로써 테이블 수가 많을 때 서버 시작이 느려지는 문제가 해결됩니다. [#12045](https://github.com/ClickHouse/ClickHouse/pull/12045) ([tavplubix](https://github.com/tavplubix)).
* `topK` 집계 함수가 Enum 타입에 대해 Enum을 반환하도록 변경했습니다. 이로써 [#3740](https://github.com/ClickHouse/ClickHouse/issues/3740) 문제가 수정되었습니다. [#12043](https://github.com/ClickHouse/ClickHouse/pull/12043) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 제약 조건이 상수 표현식인지 확인하는 검사를 수정했습니다. 이로써 [#11360](https://github.com/ClickHouse/ClickHouse/issues/11360)이 수정되었습니다. [#12042](https://github.com/ClickHouse/ClickHouse/pull/12042) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Nullable` 컬럼이 포함된 튜플의 잘못된 비교를 수정했습니다. [#11985](https://github.com/ClickHouse/ClickHouse/issues/11985)를 해결했습니다. [#12039](https://github.com/ClickHouse/ClickHouse/pull/12039) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 크기가 서로 다른 `FixedString` 유형의 인수로 함수 `if`를 호출할 때 잘못된 결과가 반환되거나 잠재적으로 충돌이 발생하던 문제를 수정했습니다. 이로써 [#11362](https://github.com/ClickHouse/ClickHouse/issues/11362)가 해결되었습니다. [#12021](https://github.com/ClickHouse/ClickHouse/pull/12021) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 반환 표현식이 `neighbor` 함수 하나뿐인 쿼리는, 해당 함수가 오프셋 `-9223372036854775808`로 호출되면 빈 결과를 반환할 수 있습니다. 이 수정은 [#11367](https://github.com/ClickHouse/ClickHouse/issues/11367)을 해결합니다. [#12019](https://github.com/ClickHouse/ClickHouse/pull/12019) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 크래시로 이어질 수 있는 generateRandom의 잠재적인 배열 크기 오버플로우를 수정했습니다. 이 수정으로 [#11371](https://github.com/ClickHouse/ClickHouse/issues/11371)이 해결됩니다. [#12013](https://github.com/ClickHouse/ClickHouse/pull/12013) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 발생할 수 있는 부동소수점 예외를 수정했습니다. 이로써 [#11378](https://github.com/ClickHouse/ClickHouse/issues/11378) 문제가 해결되었습니다. [#12005](https://github.com/ClickHouse/ClickHouse/pull/12005) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* server 시작 시 로그 메시지에 잘못 표시되던 설정 이름을 수정했습니다. [#11997](https://github.com/ClickHouse/ClickHouse/pull/11997) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Values` 포맷에서 `Query parameter was not set` 문제가 수정되었습니다. [#11918](https://github.com/ClickHouse/ClickHouse/issues/11918)을 해결합니다. [#11936](https://github.com/ClickHouse/ClickHouse/pull/11936) ([tavplubix](https://github.com/tavplubix)).
* 쿼리(매개변수화된 쿼리)에서 치환용 별칭을 유지합니다. 이로써 [#11914](https://github.com/ClickHouse/ClickHouse/issues/11914)를 수정했습니다. [#11916](https://github.com/ClickHouse/ClickHouse/pull/11916) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateTime64를 파싱할 때 발생할 수 있는 잠재적인 부동소수점 예외를 수정했습니다. 이로써 [#11374](https://github.com/ClickHouse/ClickHouse/issues/11374) 문제가 해결되었습니다. [#11875](https://github.com/ClickHouse/ClickHouse/pull/11875) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `HTTP` 인터페이스를 통한 메모리 사용량 집계를 수정했습니다(`wait_end_of_query=1`일 때 영향이 클 수 있습니다). [#11840](https://github.com/ClickHouse/ClickHouse/pull/11840) ([Azat Khuzhin](https://github.com/azat)).
* 조건에 NULL이 포함된 `if()`의 잘못된 결과를 수정했습니다. [#11807](https://github.com/ClickHouse/ClickHouse/pull/11807) ([Artem Zuikov](https://github.com/4ertus2)).
* 동등성을 확인하기 전에 zookeeper에 저장된 메타데이터를 파싱합니다. [#11739](https://github.com/ClickHouse/ClickHouse/pull/11739) ([Azat Khuzhin](https://github.com/azat)).
* 별칭이 포함된 `ORDER BY` 구문과 함께 `LIMIT n WITH TIES`를 사용할 때 발생하던 문제가 수정되었습니다. [#11689](https://github.com/ClickHouse/ClickHouse/pull/11689) ([Anton Popov](https://github.com/CurtizJ)).
* cache 딕셔너리에서 초기화되지 않은 메모리를 읽을 수 있는 잠재적 문제를 수정했습니다. [#10834](https://github.com/ClickHouse/ClickHouse/pull/10834) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 리터럴을 사용하는 `IN` 연산자에서 인덱스가 사용되지 않아 발생하던 문제로, v19.3 무렵에 도입된 성능 회귀를 수정했습니다. 이 변경으로 [#10574](https://github.com/ClickHouse/ClickHouse/issues/10574)가 해결됩니다. [#12062](https://github.com/ClickHouse/ClickHouse/pull/12062) ([nvartolomei](https://github.com/nvartolomei)).

<div id="clickhouse-release-v20312112-lts-2020-06-25">
  ### ClickHouse 릴리스 v20.3.12.112-lts 2020-06-25
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* prewhere 조건에서 `Nullable` 컬럼 사용으로 인해 드물게 발생하던 크래시를 수정했습니다. [#11608](https://github.com/ClickHouse/ClickHouse/issues/11608)의 후속입니다. [#11869](https://github.com/ClickHouse/ClickHouse/pull/11869) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 고차 함수 내에서는 arrayJoin을 허용하지 않도록 했습니다. 이로 인해 프로토콜 동기화가 깨지는 문제가 발생했습니다. 이 변경으로 [#3933](https://github.com/ClickHouse/ClickHouse/issues/3933)이 해결되었습니다. [#11846](https://github.com/ClickHouse/ClickHouse/pull/11846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 쿼리에 너무 많은 스레드가 사용되는 문제를 수정했습니다. [#11788](https://github.com/ClickHouse/ClickHouse/pull/11788) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `SELECT *, xyz.*`와 같은 쿼리에서 오류가 발생해야 하는데도 성공하던 예기치 않은 동작을 수정했습니다. [#11753](https://github.com/ClickHouse/ClickHouse/pull/11753) ([hexiaoting](https://github.com/hexiaoting)).
* 이제 메타데이터 alter 중에는 레플리카 fetch 작업이 취소됩니다. [#11744](https://github.com/ClickHouse/ClickHouse/pull/11744) ([alesapin](https://github.com/alesapin)).
* Values 입력 형식에서 복합 리터럴의 타입을 잘못 추론해 발생하던 LOGICAL\_ERROR를 수정했습니다. [#11732](https://github.com/ClickHouse/ClickHouse/pull/11732) ([tavplubix](https://github.com/tavplubix)).
* 상수 컬럼에 대한 `ORDER BY ... WITH FILL` 문제를 수정했습니다. [#11697](https://github.com/ClickHouse/ClickHouse/pull/11697) ([Anton Popov](https://github.com/CurtizJ)).
* XDBC bridge와 통신할 때 적절한 timeout이 전달되도록 수정했습니다. 최근에는 bridge의 활성 상태를 확인하고 메타 정보를 가져올 때 timeout이 제대로 적용되지 않았습니다. [#11690](https://github.com/ClickHouse/ClickHouse/pull/11690) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `system.mutations`가 잘못된 상태로 표시되게 하는 오류를 수정했습니다. 전체 뮤테이션이 이미 완료된 것으로 표시될 수 있지만, 서버의 복제 큐에는 여전히 `MUTATE_PART` 작업이 남아 있어 이를 계속 실행하려고 시도합니다. 이 수정은 [#11611](https://github.com/ClickHouse/ClickHouse/issues/11611)을 해결합니다. [#11681](https://github.com/ClickHouse/ClickHouse/pull/11681) ([alesapin](https://github.com/alesapin)).
* 대소문자를 구분하지 않는 플래그가 지정된 정규식 지원을 추가했습니다. 이로써 [#11101](https://github.com/ClickHouse/ClickHouse/issues/11101) 및 [#11506](https://github.com/ClickHouse/ClickHouse/issues/11506) 문제가 수정되었습니다. [#11649](https://github.com/ClickHouse/ClickHouse/pull/11649) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 행 수준 보안이 설정된 경우 단순한 count 쿼리 최적화를 제거했습니다. 이전 버전에서는 필터링된 개수 대신 테이블의 전체 레코드 수가 사용자에게 반환되었습니다. 이 변경으로 [#11352](https://github.com/ClickHouse/ClickHouse/issues/11352)가 수정되었습니다. [#11644](https://github.com/ClickHouse/ClickHouse/pull/11644) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* String용 블룸 필터(데이터 스키핑 인덱스)를 수정했습니다. [#11638](https://github.com/ClickHouse/ClickHouse/pull/11638) ([Azat Khuzhin](https://github.com/azat)).
* `Nullable` 컬럼을 prewhere 조건에서 사용할 때 드물게 발생하던 크래시를 수정했습니다. (아마도 [#11572](https://github.com/ClickHouse/ClickHouse/issues/11572)와 어떤 식으로든 관련이 있는 것으로 보입니다.) [#11608](https://github.com/ClickHouse/ClickHouse/pull/11608) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 샘플링으로 `Buffer` 테이블을 읽는 쿼리에서 발생하던 오류 `Block structure mismatch`를 수정했습니다. [#11602](https://github.com/ClickHouse/ClickHouse/pull/11602) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* exception.code() % 256 = 0인 경우 clickhouse-client의 종료 코드가 잘못되는 문제를 수정했습니다. [#11601](https://github.com/ClickHouse/ClickHouse/pull/11601) ([filimonov](https://github.com/filimonov)).
* server 시작 시 "마크 캐시 크기가 줄어들었습니다"라는 로그 메시지의 사소한 오류를 수정했습니다. 이로써 [#11399](https://github.com/ClickHouse/ClickHouse/issues/11399)가 해결되었습니다. [#11589](https://github.com/ClickHouse/ClickHouse/pull/11589) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `PREWHERE column in (subquery)` 및 `ARRAY JOIN`이 포함된 쿼리에서 `Size of offsets does not match size of column` 오류가 발생하던 문제를 수정했습니다. [#11580](https://github.com/ClickHouse/ClickHouse/pull/11580) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* HTTP 세션의 모든 쿼리가 동일한 query\_id를 갖는 문제가 있었습니다. 이 문제가 수정되었습니다. [#11578](https://github.com/ClickHouse/ClickHouse/pull/11578) ([tavplubix](https://github.com/tavplubix)).
* 이제 clickhouse-server Docker 컨테이너는 서버의 활성 상태를 확인할 때 IPv6를 우선적으로 사용합니다. [#11550](https://github.com/ClickHouse/ClickHouse/pull/11550) ([Ivan Starkov](https://github.com/istarkov)).
* `<node>`의 shard\_num/replica\_num을 수정했습니다(use\_compact\_format\_in\_distributed\_parts\_names가 깨지는 문제). [#11528](https://github.com/ClickHouse/ClickHouse/pull/11528) ([Azat Khuzhin](https://github.com/azat)).
* -State 함수로 집계하던 중간에 예외가 발생할 때 생기던 메모리 누수를 수정했습니다. 이로써 [#8995](https://github.com/ClickHouse/ClickHouse/issues/8995)가 해결되었습니다. [#11496](https://github.com/ClickHouse/ClickHouse/pull/11496) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 별칭이 한정된 컬럼 이름을 덮어쓸 수 있을 때 분산 쿼리에서 잘못된 결과가 나오던 문제를 수정했습니다. [#9672](https://github.com/ClickHouse/ClickHouse/issues/9672) [#9714](https://github.com/ClickHouse/ClickHouse/issues/9714)를 수정했습니다. [#9972](https://github.com/ClickHouse/ClickHouse/pull/9972) ([Artem Zuikov](https://github.com/4ertus2)).

<div id="clickhouse-release-v2031197-lts-2020-06-10">
  ### ClickHouse 릴리스 v20.3.11.97-lts 2020-06-10
</div>

<div id="new-feature">
  #### 새로운 기능
</div>

* 이제 ClickHouse가 딕셔너리 소스의 timeout을 자체적으로 제어합니다. cache 딕셔너리 구성에 두 개의 새로운 설정이 추가되었습니다. `strict_max_lifetime_seconds`의 기본값은 `max_lifetime`이며, `query_wait_timeout_milliseconds`의 기본값은 1분입니다. 첫 번째 설정은 `allow_read_expired_keys` 설정과 함께 사용할 때도 유용하며(지나치게 오래된 만료 키의 읽기를 금지), [#10337](https://github.com/ClickHouse/ClickHouse/pull/10337) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `min_bytes_to_use_direct_io`가 활성화된 상태에서 PREWHERE가 활성화되어 있고 SAMPLE을 사용하거나 스레드 수가 많을 때 발생할 수 있는 오류 `Data compressed with different methods`를 수정했습니다. 이 수정은 [#11539](https://github.com/ClickHouse/ClickHouse/issues/11539)를 해결합니다. [#11540](https://github.com/ClickHouse/ClickHouse/pull/11540) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 코덱에 대해 반환되는 압축된 크기 문제를 수정했습니다. [#11448](https://github.com/ClickHouse/ClickHouse/pull/11448) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 컬럼에 리터럴이 아닌 인수가 있는 압축 코덱이 설정된 경우 발생하던 server 충돌을 수정했습니다. [#11365](https://github.com/ClickHouse/ClickHouse/issues/11365)를 해결했습니다. [#11431](https://github.com/ClickHouse/ClickHouse/pull/11431) ([alesapin](https://github.com/alesapin)).
* 점이 nan인 경우 `pointInPolygon`을 수정했습니다. [#11375](https://github.com/ClickHouse/ClickHouse/issues/11375)를 해결합니다. [#11421](https://github.com/ClickHouse/ClickHouse/pull/11421) ([Alexey Ilyukhov](https://github.com/livace)).
* LowCardinality(T) 및 Nullable(T)에 대한 JOIN에서 발생하던 충돌을 수정했습니다. [#11380](https://github.com/ClickHouse/ClickHouse/issues/11380). [#11414](https://github.com/ClickHouse/ClickHouse/pull/11414) ([Artem Zuikov](https://github.com/4ertus2)).
* 잘못된 `USING` 키에 대한 오류 코드를 수정했습니다. [#11373](https://github.com/ClickHouse/ClickHouse/issues/11373). [#11404](https://github.com/ClickHouse/ClickHouse/pull/11404) ([Artem Zuikov](https://github.com/4ertus2)).
* 위도/경도 범위를 벗어난 인수가 전달될 때 발생하던 `geohashesInBox` 문제가 수정되었습니다. [#11403](https://github.com/ClickHouse/ClickHouse/pull/11403) ([Vasily Nemkov](https://github.com/Enmk)).
* `joinGet()` 함수의 오류 메시지가 개선되었습니다. [#11389](https://github.com/ClickHouse/ClickHouse/pull/11389) ([Artem Zuikov](https://github.com/4ertus2)).
* 외부 정렬과 limit이 있는 쿼리에서 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#11359](https://github.com/ClickHouse/ClickHouse/issues/11359)를 해결합니다. [#11366](https://github.com/ClickHouse/ClickHouse/pull/11366) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* ReplicatedMergeTree에서 파트 전송 중 중복된 잠금 제거. [#11354](https://github.com/ClickHouse/ClickHouse/pull/11354) ([alesapin](https://github.com/alesapin)).
* 멀티라인 모드에서 clickhouse-client의 `\G`(세로 출력) 지원이 제대로 동작하도록 수정했습니다. 이로써 [#9933](https://github.com/ClickHouse/ClickHouse/issues/9933)이 해결되었습니다. [#11350](https://github.com/ClickHouse/ClickHouse/pull/11350) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* StorageJoin에서 JOIN 없이 직접 select할 때 발생하던 충돌과 잘못된 NULL 허용 여부를 수정했습니다. [#11340](https://github.com/ClickHouse/ClickHouse/pull/11340) ([Artem Zuikov](https://github.com/4ertus2)).
* `quantilesExactWeightedArray`에서 발생하는 충돌을 수정했습니다. [#11337](https://github.com/ClickHouse/ClickHouse/pull/11337) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 이제 `ALTER` 쿼리에서 메타데이터를 변경하기 전에 머지가 중지됩니다. [#11335](https://github.com/ClickHouse/ClickHouse/pull/11335) ([alesapin](https://github.com/alesapin)).
* 설정 `parallel_view_processing = 1`을 사용하면 `MATERIALIZED VIEW`에 대한 쓰기 작업이 다시 병렬로 수행되도록 했습니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#11330](https://github.com/ClickHouse/ClickHouse/pull/11330) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 추출된 JSON에 짝이 맞지 않는 \{ 또는 \[가 들어 있는 문자열이 있는 경우 visitParamExtractRaw를 수정했습니다. [#11318](https://github.com/ClickHouse/ClickHouse/pull/11318) ([Ewout](https://github.com/devwout)).
* ThreadPool에서 매우 드물게 발생하던 race condition을 수정했습니다. [#11314](https://github.com/ClickHouse/ClickHouse/pull/11314) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 변환 과정에서 초기화되지 않은 메모리가 사용될 가능성이 있는 문제를 수정했습니다. 예시: `SELECT toIntervalSecond(now64())`. [#11311](https://github.com/ClickHouse/ClickHouse/pull/11311) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블의 프라이머리 키에 배열 컬럼이 있고, `empty` 또는 `notEmpty` 함수로 이 컬럼을 필터링하는 쿼리에서 인덱스 분석이 작동하지 않는 문제를 수정했습니다. 이 수정으로 [#11286](https://github.com/ClickHouse/ClickHouse/issues/11286)가 해결됩니다. [#11303](https://github.com/ClickHouse/ClickHouse/pull/11303) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `max_network_bandwidth`, `max_execution_speed` 또는 `priority` 설정으로 쿼리 속도가 제한되는 경우, 쿼리 속도 추정이 부정확해지고 `min_execution_speed` 제한이 적용되지 않거나 잘못 적용될 수 있던 버그를 수정했습니다. 또한 `timeout_before_checking_execution_speed`의 기본값을 0이 아닌 값으로 변경했습니다. 그렇지 않으면 `min_execution_speed` 및 `max_execution_speed` 설정이 전혀 효과가 없기 때문입니다. 이로써 [#11297](https://github.com/ClickHouse/ClickHouse/issues/11297)가 수정되었습니다. 이로써 [#5732](https://github.com/ClickHouse/ClickHouse/issues/5732)가 수정되었습니다. 이로써 [#6228](https://github.com/ClickHouse/ClickHouse/issues/6228)가 수정되었습니다. 사용성 개선: `clickhouse-client`에서 예외 메시지와 진행 표시줄이 서로 붙어 표시되지 않도록 했습니다. [#11296](https://github.com/ClickHouse/ClickHouse/pull/11296) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Protobuf 형식의 손상된 데이터를 읽는 중 발생하던 충돌을 수정했습니다. 이 수정으로 [#5957](https://github.com/ClickHouse/ClickHouse/issues/5957) 및 [#11203](https://github.com/ClickHouse/ClickHouse/issues/11203)이 해결됩니다. [#11258](https://github.com/ClickHouse/ClickHouse/pull/11258) ([Vitaly Baranov](https://github.com/vitlibar)).
* cache 딕셔너리가 정상 값 대신 기본값을 반환할 수 있던 버그를 수정했습니다(만료된 키만 있는 경우). 이는 String 필드에만 영향을 미칩니다. [#11233](https://github.com/ClickHouse/ClickHouse/pull/11233) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 내부 쿼리에 상수가 포함된 `VIEW`를 읽을 때 발생하던 `Block structure mismatch in QueryPipeline` 오류를 수정했습니다. [#11181](https://github.com/ClickHouse/ClickHouse/issues/11181). [#11205](https://github.com/ClickHouse/ClickHouse/pull/11205) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 발생할 수 있는 예외 `Invalid status for associated output`를 수정했습니다. [#11200](https://github.com/ClickHouse/ClickHouse/pull/11200) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `Array(Array(LowCardinality))`를 캡처한 인수가 있는 고차 함수에서 발생할 수 있는 `Cannot capture column` 오류를 수정했습니다. [#11185](https://github.com/ClickHouse/ClickHouse/pull/11185) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 키가 1000개를 초과하거나 일부 백엔드에서 실패할 수 있던 S3 글로빙 문제를 수정했습니다. [#11179](https://github.com/ClickHouse/ClickHouse/pull/11179) ([Vladimir Chebotarev](https://github.com/excitoon)).
* 데이터 스키핑 인덱스가 백그라운드 머지 중에 변경되는 컬럼에 의존하는 경우(SummingMergeTree, AggregatingMergeTree, 그리고 TTL GROUP BY), 잘못 계산되던 문제가 있었습니다. 이 문제는 인덱스 계산을 머지 이후로 옮겨, 머지된 데이터 기준으로 인덱스를 계산하도록 수정하여 해결했습니다. [#11162](https://github.com/ClickHouse/ClickHouse/pull/11162) ([Azat Khuzhin](https://github.com/azat)).
* 단순한 쿼리에서 스레드를 과도하게 예약하던 문제를 수정했습니다(스레드 수를 줄이기 위한 최적화가 pipeline 변경 이후 부분적으로 깨져 있었습니다). [#11114](https://github.com/ClickHouse/ClickHouse/pull/11114) ([Azat Khuzhin](https://github.com/azat)).
* `HAVING` 절이 있는 쿼리(즉, 이니시에이터 서버에서 필터링이 필요한 경우)에 대해 분산 쿼리의 프레디케이트 최적화(`enable_optimize_predicate_expression=1`)를 수정했습니다. 이를 위해 표현식의 순서를 유지하도록 했고(이것만으로도 수정에 충분함), 집계기가 인덱스 대신 컬럼 이름을 사용하도록 강제했습니다. 수정: [#10613](https://github.com/ClickHouse/ClickHouse/issues/10613), [#11413](https://github.com/ClickHouse/ClickHouse/issues/11413). [#10621](https://github.com/ClickHouse/ClickHouse/pull/10621) ([Azat Khuzhin](https://github.com/azat)).
* 오프셋 커밋이 실패하는 드문 경우 Kafka에서 중복이 발생할 가능성을 줄이기 위해 커밋 재시도 로직을 도입했습니다. [#9884](https://github.com/ClickHouse/ClickHouse/pull/9884) ([filimonov](https://github.com/filimonov)).

<div id="performance-improvement">
  #### 성능 개선
</div>

* 외부 딕셔너리를 읽는 함수를 호출할 때마다 딕셔너리를 가져오고 접근 권한을 확인하는 작업을 각각 한 번만 수행합니다. [#10928](https://github.com/ClickHouse/ClickHouse/pull/10928) ([Vitaly Baranov](https://github.com/vitlibar)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 간헐적으로 실패하던 여러 통합 테스트를 수정했습니다. [#11355](https://github.com/ClickHouse/ClickHouse/pull/11355) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v2031075-lts-2020-05-23">
  ### ClickHouse 릴리스 v20.3.10.75-lts 2020-05-23
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 최종화된 내용이 없을 경우 mutation 최종화 작업의 로깅을 제거했습니다. [#11109](https://github.com/ClickHouse/ClickHouse/pull/11109) ([alesapin](https://github.com/alesapin)).
* `parseDateTime64BestEffort` 인수 해석 관련 버그를 수정했습니다. [#11038](https://github.com/ClickHouse/ClickHouse/pull/11038) ([Vasily Nemkov](https://github.com/Enmk)).
* `getRawData()` 메서드에서 원시 데이터 크기가 잘못 계산되던 문제를 수정했습니다. [#10964](https://github.com/ClickHouse/ClickHouse/pull/10964) ([Igr](https://github.com/ObjatieGroba)).
* 20.1 및 그 이전 버전 간 2단계 집계 비호환성을 수정했습니다. 이 비호환성은 initiator 노드와 원격 노드에서 서로 다른 버전의 ClickHouse를 사용하고, `GROUP BY` 결과 크기가 크며, 단일 `String` 필드에 대해 집계가 수행될 때 발생합니다. 이로 인해 결과에서 하나의 키에 대해 머지되지 않은 여러 행이 생길 수 있습니다. [#10952](https://github.com/ClickHouse/ClickHouse/pull/10952) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Distributed` 테이블에서 튜플의 하위 호환성 문제를 수정했습니다. [#10889](https://github.com/ClickHouse/ClickHouse/pull/10889) ([Anton Popov](https://github.com/CurtizJ)).
* 해당 키가 없을 때 `StringHashTable`에서 발생하던 `SIGSEGV`를 수정했습니다. [#10870](https://github.com/ClickHouse/ClickHouse/pull/10870) ([Azat Khuzhin](https://github.com/azat)).
* 비활성화된 레플리카를 기다리느라 `OPTIMIZE` 쿼리의 일부 `ALTER`가 멈출 수 있던 `ReplicatedMergeTree` 버그를 수정했습니다. [#10849](https://github.com/ClickHouse/ClickHouse/pull/10849) ([tavplubix](https://github.com/tavplubix)).
* `Block::sortColumns()` 이후 컬럼 순서가 올바르게 유지되도록 수정했습니다. [#10826](https://github.com/ClickHouse/ClickHouse/pull/10826) ([Azat Khuzhin](https://github.com/azat)).
* 식별자에 따옴표를 사용하지 않도록 요청한 경우 `ODBC` 브리지에서 발생하던 문제를 수정했습니다. [#7984](https://github.com/ClickHouse/ClickHouse/issues/7984)를 해결합니다. [#10821](https://github.com/ClickHouse/ClickHouse/pull/10821) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `DateLUT`의 `UBSan` 및 `MSan` 리포트 문제를 수정했습니다. [#10798](https://github.com/ClickHouse/ClickHouse/pull/10798) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 키 조건의 잘못된 형 변환을 수정했습니다. [#6287](https://github.com/ClickHouse/ClickHouse/issues/6287) 문제를 수정했습니다. [#10791](https://github.com/ClickHouse/ClickHouse/pull/10791) ([Andrew Onyshchuk](https://github.com/oandrew))
* `parallel_view_processing` 동작을 수정했습니다. 이제 예외가 발생하더라도 `MATERIALIZED VIEW`로의 모든 삽입이 빠짐없이 완료됩니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#10757](https://github.com/ClickHouse/ClickHouse/pull/10757) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* combinator인 -`OrNull` 및 `-OrDefault`를 `-State`와 함께 사용할 때의 문제를 수정했습니다. [#10741](https://github.com/ClickHouse/ClickHouse/pull/10741) ([hcz](https://github.com/hczhcz)).
* 중첩 타입에서 `generateRandom` 사용 시 발생하던 충돌을 수정했습니다. [#10583](https://github.com/ClickHouse/ClickHouse/issues/10583)를 해결했습니다. [#10734](https://github.com/ClickHouse/ClickHouse/pull/10734) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 머지 후 발생할 수 있었던 `SummingMergeTree`의 `LowCardinality(FixedString)` 키 컬럼 데이터 손상을 수정했습니다. [#10489](https://github.com/ClickHouse/ClickHouse/issues/10489)을 수정합니다. [#10721](https://github.com/ClickHouse/ClickHouse/pull/10721) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 함수 `h3EdgeAngle`에서 발생할 수 있는 버퍼 오버플로우를 수정했습니다. [#10711](https://github.com/ClickHouse/ClickHouse/pull/10711) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 합계가 사라지는 문제를 수정했습니다. 쿼리에 외부 WHERE 조건이 있는 조인 또는 서브쿼리가 있으면 합계가 필터링될 수 있었습니다. [#10674](https://github.com/ClickHouse/ClickHouse/issues/10674)을 수정했습니다. [#10698](https://github.com/ClickHouse/ClickHouse/pull/10698) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 하나의 쿼리에서 동일한 Set에 `IN` 연산자를 여러 번 사용하는 문제를 수정했습니다. [#10686](https://github.com/ClickHouse/ClickHouse/pull/10686) ([Anton Popov](https://github.com/CurtizJ)).
* `readonly=2`이고 `cancel_http_readonly_queries_on_client_close=1`일 때 클라이언트 종료 시 HTTP 요청이 중단된 채 멈추는 버그를 수정했습니다. [#7939](https://github.com/ClickHouse/ClickHouse/issues/7939), [#7019](https://github.com/ClickHouse/ClickHouse/issues/7019), [#7736](https://github.com/ClickHouse/ClickHouse/issues/7736), [#7091](https://github.com/ClickHouse/ClickHouse/issues/7091)을 해결합니다. [#10684](https://github.com/ClickHouse/ClickHouse/pull/10684) ([tavplubix](https://github.com/tavplubix)).
* `AggregateTransform` 생성자의 매개변수 순서를 수정했습니다. [#10667](https://github.com/ClickHouse/ClickHouse/pull/10667) ([palasonic1](https://github.com/palasonic1)).
* `distributed_aggregation_memory_efficient`이 활성화된 상태에서 원격 쿼리가 병렬로 실행되지 않던 문제를 수정했습니다. [#10655](https://github.com/ClickHouse/ClickHouse/issues/10655)를 해결합니다. [#10664](https://github.com/ClickHouse/ClickHouse/pull/10664) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `LIMIT`가 있는 쿼리에서 행 수가 잘못 계산될 수 있던 문제를 수정했습니다. [#10566](https://github.com/ClickHouse/ClickHouse/issues/10566), [#10709](https://github.com/ClickHouse/ClickHouse/issues/10709)을 해결합니다. [#10660](https://github.com/ClickHouse/ClickHouse/pull/10660) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 테이블에 파트가 많을 때 동시 ALTER가 잠기는 버그를 수정했습니다. [#10659](https://github.com/ClickHouse/ClickHouse/pull/10659) ([alesapin](https://github.com/alesapin)).
* `SYSTEM DROP DNS CACHE` 쿼리 실행 시 일부 IP 주소에서 사용자의 연결 허용 여부를 확인하는 데 사용되는 캐시까지 함께 삭제되던 버그를 수정했습니다. [#10608](https://github.com/ClickHouse/ClickHouse/pull/10608) ([tavplubix](https://github.com/tavplubix)).
* `MATERIALIZED VIEW`의 내부 쿼리에 종속 테이블이 포함되어 있을 때, 내부 쿼리에서 잘못된 스칼라 결과가 나오던 문제를 수정했습니다. [#10603](https://github.com/ClickHouse/ClickHouse/pull/10603) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 기본 표현식 유형이 컬럼 유형과 다른 `ALIAS` 컬럼에 대한 `SELECT`를 수정했습니다. [#10563](https://github.com/ClickHouse/ClickHouse/pull/10563) ([Azat Khuzhin](https://github.com/azat)).
* DateTime64와 String 값 간 비교를 구현했습니다. [#10560](https://github.com/ClickHouse/ClickHouse/pull/10560) ([Vasily Nemkov](https://github.com/Enmk)).
* 일부 경우 compact 파트를 다른 compact 파트로 머지한 뒤 발생할 수 있던 인덱스 손상을 수정했습니다. [#10531](https://github.com/ClickHouse/ClickHouse/pull/10531) ([Anton Popov](https://github.com/CurtizJ)).
* mutation이 모든 파트 처리를 완료했는데도 `is_done=0` 상태에 머물던 문제를 수정했습니다. [#10526](https://github.com/ClickHouse/ClickHouse/pull/10526) ([alesapin](https://github.com/alesapin)).
* `UTC` 대비 분수 오프셋을 사용하는 시간대에서 unix epoch 시작 시점에 발생하던 오버플로우를 수정했습니다. 이로써 [#9335](https://github.com/ClickHouse/ClickHouse/issues/9335)가 해결됩니다. [#10513](https://github.com/ClickHouse/ClickHouse/pull/10513) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `Distributed` 스토리지의 비정상 종료 문제를 수정했습니다. [#10491](https://github.com/ClickHouse/ClickHouse/pull/10491) ([Azat Khuzhin](https://github.com/azat)).
* 큰 정수에서 발생하던 `simpleLinearRegression`의 숫자 오버플로우를 수정했습니다. [#10474](https://github.com/ClickHouse/ClickHouse/pull/10474) ([hcz](https://github.com/hczhcz)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* LZ4 라이브러리의 UBSan 보고 문제를 수정했습니다. [#10631](https://github.com/ClickHouse/ClickHouse/pull/10631) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* clang-10 빌드 문제를 수정했습니다. [#10238](https://github.com/ClickHouse/ClickHouse/issues/10238). [#10370](https://github.com/ClickHouse/ClickHouse/pull/10370) ([Amos Bird](https://github.com/amosbird)).
* `max_rows_to_sort` 설정 관련 실패 테스트를 추가했습니다. [#10268](https://github.com/ClickHouse/ClickHouse/pull/10268) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 입력 형식에서 진단 정보 출력과 관련된 몇 가지 개선 사항을 추가했습니다. [#10204](https://github.com/ClickHouse/ClickHouse/issues/10204)을 수정했습니다. [#10418](https://github.com/ClickHouse/ClickHouse/pull/10418) ([tavplubix](https://github.com/tavplubix)).
* clickhouse-server Docker image에 CA 인증서를 추가했습니다. [#10476](https://github.com/ClickHouse/ClickHouse/pull/10476) ([filimonov](https://github.com/filimonov)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `the BloomFilter false positive must be a double number between 0 and 1` 오류를 수정했습니다. [#10551](https://github.com/ClickHouse/ClickHouse/issues/10551). [#10569](https://github.com/ClickHouse/ClickHouse/pull/10569) ([Winter Zhang](https://github.com/zhang2014)).

<div id="clickhouse-release-v203853-2020-04-23">
  ### ClickHouse 릴리스 v20.3.8.53, 2020-04-23
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* UTC 기준 오프셋이 양수에서 음수로 바뀌는 시간대(예: Pacific/Kiritimati)에서 datetime 함수가 잘못 동작하던 문제를 수정했습니다. 이로써 [#7202](https://github.com/ClickHouse/ClickHouse/issues/7202), [#10369](https://github.com/ClickHouse/ClickHouse/pull/10369)이 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* `distributed_group_by_no_merge`가 활성화된 경우 발생할 수 있는 segfault를 수정했습니다(20.3.7.46에 [#10131](https://github.com/ClickHouse/ClickHouse/issues/10131)로 도입). [#10399](https://github.com/ClickHouse/ClickHouse/pull/10399) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `Array(Tuple(...))` 데이터 타입의 잘못된 평탄화 문제를 수정했습니다. 이로써 [#10259](https://github.com/ClickHouse/ClickHouse/issues/10259)이 해결됩니다 [#10390](https://github.com/ClickHouse/ClickHouse/pull/10390) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Aggregator의 디스크 예약을 제거했습니다. 이로써 디스크 공간 예약 버그를 수정하여, 정상적으로 완료될 수 있었던 대규모 외부 집계가 실패할 수 있던 문제가 해결됩니다 [#10375](https://github.com/ClickHouse/ClickHouse/pull/10375) ([Azat Khuzhin](https://github.com/azat))
* `ReplicatedMergeTree`에서 `DROP`과 `OPTIMIZE` 사이의 경쟁 상태를 수정했습니다. `OPTIMIZE` 쿼리가 동시에 실행되면 `DROP`으로 인해 ZooKeeper의 레플리카 경로에 일부 잔여 데이터가 남을 수 있었습니다. [#10312](https://github.com/ClickHouse/ClickHouse/pull/10312) ([tavplubix](https://github.com/tavplubix))
* 컬럼 기본값 변경 후 서버가 테이블을 ATTACH하지 못하던 버그를 수정했습니다. [#10441](https://github.com/ClickHouse/ClickHouse/pull/10441) ([alesapin](https://github.com/alesapin))
* 테이블을 로드하기 전에 데이터베이스 ATTACH가 실패하더라도 메타데이터 디렉터리를 제거하지 않도록 수정했습니다.  [#10442](https://github.com/ClickHouse/ClickHouse/pull/10442) ([Winter Zhang](https://github.com/zhang2014))
* 일부 데이터가 quorum으로 삽입된 후 어떤 방식으로든 삭제되고(DROP PARTITION, TTL), 그 결과 INSERT가 멈추거나 SELECT에서 잘못된 예외가 발생하던 여러 버그를 수정했습니다. 이 수정은 [#9946](https://github.com/ClickHouse/ClickHouse/issues/9946) [#10188](https://github.com/ClickHouse/ClickHouse/pull/10188)에 해당합니다 ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 원격 쿼리에서 발생할 수 있던 `ConcatProcessor`의 `Pipeline stuck` 오류를 수정했습니다. [#10381](https://github.com/ClickHouse/ClickHouse/pull/10381) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 버퍼에서 HashMap을 읽을 때 컴파일 오류를 발생시키던 HashTable의 잘못된 동작을 수정했습니다. [#10386](https://github.com/ClickHouse/ClickHouse/pull/10386) ([palasonic1](https://github.com/palasonic1))
* 여러 조인에서 `count(*)`를 사용할 수 있도록 했습니다. [#9853](https://github.com/ClickHouse/ClickHouse/issues/9853) 수정 [#10291](https://github.com/ClickHouse/ClickHouse/pull/10291) ([Artem Zuikov](https://github.com/4ertus2))
* `skip_unavailable_shards`보다 `fallback_to_stale_replicas`를 우선 적용합니다. 그렇지 않으면 두 설정이 모두 지정된 상태에서 최신 레플리카가 없을 경우 쿼리가 실패합니다(@alex-zaitsev의 패치). 수정: [#2564](https://github.com/ClickHouse/ClickHouse/issues/2564). [#10422](https://github.com/ClickHouse/ClickHouse/pull/10422) ([Azat Khuzhin](https://github.com/azat))
* ARRAY JOIN, ORDER BY 및 LIMIT가 포함된 쿼리에서 불완전한 결과가 반환될 수 있는 문제를 수정했습니다. 이 수정으로 [#10226](https://github.com/ClickHouse/ClickHouse/issues/10226)가 해결됩니다. 작성자: [Vadim Plakhtinskiy](https://github.com/VadimPlh). [#10427](https://github.com/ClickHouse/ClickHouse/pull/10427) ([alexey-milovidov](https://github.com/alexey-milovidov))
* BloomFilter 인덱스 생성 시 인수의 개수와 유형 확인 [#9623](https://github.com/ClickHouse/ClickHouse/issues/9623) [#10431](https://github.com/ClickHouse/ClickHouse/pull/10431) ([Winter Zhang](https://github.com/zhang2014))

<div id="performance-improvement">
  #### 성능 개선
</div>

* `IN` 연산자의 오른쪽에 명시적으로 정의된 집합을 두고 왼쪽에 튜플을 사용하는 쿼리의 성능을 개선했습니다. 이로써 20.3 버전에서 발생한 성능 회귀를 수정했습니다. [#9740](https://github.com/ClickHouse/ClickHouse/pull/9740), [#10385](https://github.com/ClickHouse/ClickHouse/pull/10385) ([Anton Popov](https://github.com/CurtizJ))

<div id="clickhouse-release-v203746-2020-04-17">
  ### ClickHouse 릴리스 v20.3.7.46, 2020-04-17
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쉼표 구문과 이름이 지정된 조인을 함께 사용한 쿼리에서 발생하는 `Logical error: CROSS JOIN has expressions` 오류를 수정했습니다. [#10311](https://github.com/ClickHouse/ClickHouse/pull/10311) ([Artem Zuikov](https://github.com/4ertus2)).
* `max_bytes_before_external_group_by`를 사용하는 쿼리 관련 문제를 수정했습니다. [#10302](https://github.com/ClickHouse/ClickHouse/pull/10302) ([Artem Zuikov](https://github.com/4ertus2)).
* arrayJoin 함수가 있는 경우(일부 사례) move-to-prewhere 최적화를 수정했습니다. 이로써 [#10092](https://github.com/ClickHouse/ClickHouse/issues/10092)가 해결됩니다. [#10195](https://github.com/ClickHouse/ClickHouse/pull/10195) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `allow_nondeterministic_mutations` 설정으로 뮤테이션에서 비결정적 함수 사용 제한을 완화할 수 있는 기능을 추가했습니다. [#10186](https://github.com/ClickHouse/ClickHouse/pull/10186) ([filimonov](https://github.com/filimonov)).

<div id="clickhouse-release-v203640-2020-04-16">
  ### ClickHouse 릴리스 v20.3.6.40, 2020-04-16
</div>

<div id="new-feature-2">
  #### 새 기능
</div>

* 함수 `isConstant`가 추가되었습니다. 이 함수는 인수가 상수 표현식인지 확인하여 1 또는 0을 반환합니다. 개발, 디버깅 및 데모 목적으로 사용하기 위한 기능입니다. [#10198](https://github.com/ClickHouse/ClickHouse/pull/10198) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="bug-fix">
  #### 버그 수정
</div>

* `max_rows_to_group_by` 및 `group_by_overflow_mode = 'break'` 사용 시 발생하던 `Pipeline stuck` 오류를 수정했습니다. [#10279](https://github.com/ClickHouse/ClickHouse/pull/10279) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 드물게 발생할 수 있는 `Cannot drain connections: cancel first` 예외를 수정했습니다. [#10239](https://github.com/ClickHouse/ClickHouse/pull/10239) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 사용자가 ENGINE = Replicated\*인 테이블에서 ALTER UPDATE/DELETE를 실행하려고 할 때 ClickHouse가 "Unknown function lambda." 오류 메시지를 표시하던 버그를 수정했습니다. 이제 비결정적 함수 검사가 람다 표현식을 올바르게 처리합니다. [#10237](https://github.com/ClickHouse/ClickHouse/pull/10237) ([Alexander Kazakov](https://github.com/Akazz)).
* Date 유형의 "generateRandom" 함수가 수정되었습니다. 이 수정으로 [#9973](https://github.com/ClickHouse/ClickHouse/issues/9973)가 해결되었습니다. 기존 방식의 파티셔닝을 사용하는 MergeTree 테이블에 2106년 날짜를 삽입할 때 파티션 이름이 1970년으로 지정되던 예외적인 경우를 수정했습니다. [#10218](https://github.com/ClickHouse/ClickHouse/pull/10218) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* View의 테이블 정의가 SELECT 쿼리와 일치하지 않는 경우 타입을 변환합니다. 이 변경으로 [#10180](https://github.com/ClickHouse/ClickHouse/issues/10180) 및 [#10022](https://github.com/ClickHouse/ClickHouse/issues/10022) 문제가 수정됩니다. [#10217](https://github.com/ClickHouse/ClickHouse/pull/10217) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 요일이 화요일 또는 목요일인 RFC-2822 형식 문자열에 대해 `parseDateTimeBestEffort`를 수정했습니다. 이로써 [#10082](https://github.com/ClickHouse/ClickHouse/issues/10082)가 해결됩니다. [#10214](https://github.com/ClickHouse/ClickHouse/pull/10214) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* JOIN 외부 상수 이름과 충돌할 수 있는 JOIN 내부 상수의 컬럼 이름을 수정했습니다. [#10207](https://github.com/ClickHouse/ClickHouse/pull/10207) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `system.numbers` 또는 `system.zeros`와 같은 무한 소스에서 읽을 때, 실제로는 LIMIT에서 중지되어야 하는 쿼리가 무한히 실행될 수 있는 문제를 수정했습니다. [#10206](https://github.com/ClickHouse/ClickHouse/pull/10206) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 데이터베이스가 지정되지 않은 경우 액세스 확인 시 현재 데이터베이스를 사용하도록 수정했습니다. [#10192](https://github.com/ClickHouse/ClickHouse/pull/10192) ([Vitaly Baranov](https://github.com/vitlibar)).
* Distributed()에 INSERT할 때 구조가 일치하지 않으면 블록을 변환합니다. [#10135](https://github.com/ClickHouse/ClickHouse/pull/10135) ([Azat Khuzhin](https://github.com/azat)).
* processors 파이프라인에서 extremes 결과가 잘못될 수 있는 문제를 수정했습니다. [#10131](https://github.com/ClickHouse/ClickHouse/pull/10131) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* compact parts와 관련된 일부 ALTER를 수정했습니다. [#10130](https://github.com/ClickHouse/ClickHouse/pull/10130) ([Anton Popov](https://github.com/CurtizJ)).
* 새 레플리카를 생성할 때 잘못된 `index_granularity_bytes` 검사를 수정했습니다. [#10098](https://github.com/ClickHouse/ClickHouse/issues/10098)를 해결했습니다. [#10121](https://github.com/ClickHouse/ClickHouse/pull/10121) ([alesapin](https://github.com/alesapin)).
* 구조가 기반이 되는 테이블과 다를 때 분산 테이블에 INSERT할 경우 발생하는 SIGSEGV를 수정했습니다. [#10105](https://github.com/ClickHouse/ClickHouse/pull/10105) ([Azat Khuzhin](https://github.com/azat)).
* `JOIN` 및 `UNION ALL`이 포함된 쿼리에서 발생할 수 있는 행 손실 문제를 수정했습니다. [#9826](https://github.com/ClickHouse/ClickHouse/issues/9826), [#10113](https://github.com/ClickHouse/ClickHouse/issues/10113)을 해결했습니다. [#10099](https://github.com/ClickHouse/ClickHouse/pull/10099) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `/table/replicas/replica_name/metadata` 노드가 없는 이전 ClickHouse 버전에서 업데이트할 때 발생하던 복제된 테이블의 시작 문제가 수정되었습니다. [#10037](https://github.com/ClickHouse/ClickHouse/issues/10037)을 해결합니다. [#10095](https://github.com/ClickHouse/ClickHouse/pull/10095) ([alesapin](https://github.com/alesapin)).
* 일부 인수 검사를 추가했으며 MySQL 데이터베이스 엔진에서 식별자 인수를 지원하도록 했습니다. [#10077](https://github.com/ClickHouse/ClickHouse/pull/10077) ([Winter Zhang](https://github.com/zhang2014)).
* localhost의 ClickHouse 서버를 사용하는 ClickHouse 딕셔너리 소스의 버그를 수정했습니다. 이 버그는 딕셔너리와 소스의 타입이 호환되지 않으면 메모리 손상을 일으킬 수 있습니다. [#10071](https://github.com/ClickHouse/ClickHouse/pull/10071) ([alesapin](https://github.com/alesapin)).
* 테이블에 스킵 인덱스가 있는 경우 `CHECK TABLE` 쿼리의 버그를 수정했습니다. [#10068](https://github.com/ClickHouse/ClickHouse/pull/10068) ([alesapin](https://github.com/alesapin)).
* `distributed_aggregation_memory_efficient` 설정이 활성화된 상태에서, 분산 쿼리가 서로 다른 세그먼트의 서로 다른 수준의 집계 데이터를 읽을 때(단일 수준 집계와 2단계 집계가 혼합된 경우) 발생하던 오류 `Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform`를 수정했습니다. [#10063](https://github.com/ClickHouse/ClickHouse/pull/10063) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 후행 0바이트를 포함한 문자열 키로 GROUP BY를 수행할 때 발생할 수 있던 segmentation fault를 수정했습니다 ([#8636](https://github.com/ClickHouse/ClickHouse/issues/8636), [#8925](https://github.com/ClickHouse/ClickHouse/issues/8925)). [#10025](https://github.com/ClickHouse/ClickHouse/pull/10025) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 원격 쿼리 실행에 사용되는 스레드 수를 수정했습니다(20.3부터의 성능 회귀). 이 문제는 `Distributed` 테이블의 쿼리가 로컬 및 원격 세그먼트에서 동시에 실행될 때 발생했습니다. [#9965](https://github.com/ClickHouse/ClickHouse/issues/9965)를 수정했습니다. [#9971](https://github.com/ClickHouse/ClickHouse/pull/9971) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 일부 데이터베이스에 대한 쿼리 처리 단계 중 하나에서 필요한 테이블을 가져오지 못하던 버그를 수정했습니다. [#9699](https://github.com/ClickHouse/ClickHouse/issues/9699)를 수정합니다. [#9949](https://github.com/ClickHouse/ClickHouse/pull/9949) ([achulkov2](https://github.com/achulkov2)).
* `JOIN`이 `TOTALS`와 함께 사용될 때 발생하던 'block에서 컬럼을 찾을 수 없음' 오류를 수정했습니다. [#9839](https://github.com/ClickHouse/ClickHouse/issues/9839). [#9939](https://github.com/ClickHouse/ClickHouse/pull/9939) ([Artem Zuikov](https://github.com/4ertus2)).
* 서버 시작 시 `ON CLUSTER` DDL 쿼리가 멈추는 버그를 수정했습니다. [#9927](https://github.com/ClickHouse/ClickHouse/pull/9927) ([Gagan Arneja](https://github.com/garneja)).
* CREATE USER 명령에서 설정된 여러 호스트를 파싱하는 문제를 수정했습니다. 예: `CREATE USER user6 HOST NAME REGEXP 'lo.?*host', NAME REGEXP 'lo*host'`. [#9924](https://github.com/ClickHouse/ClickHouse/pull/9924) ([Vitaly Baranov](https://github.com/vitlibar)).
* Join 테이블 엔진에서 `TRUNCATE` 문제를 수정했습니다 ([#9917](https://github.com/ClickHouse/ClickHouse/issues/9917)). [#9920](https://github.com/ClickHouse/ClickHouse/pull/9920) ([Amos Bird](https://github.com/amosbird)).
* ALTER 문에서 발생하던 "스칼라가 존재하지 않음" 오류를 수정했습니다 ([#9878](https://github.com/ClickHouse/ClickHouse/issues/9878)). [#9904](https://github.com/ClickHouse/ClickHouse/pull/9904) ([Amos Bird](https://github.com/amosbird)).
* `ReplicatedMergeTree`에서 삭제와 최적화 작업 간 경쟁 상태를 수정했습니다. [#9901](https://github.com/ClickHouse/ClickHouse/pull/9901) ([alesapin](https://github.com/alesapin)).
* `distributed_product_mode='local'`에서 한정된 이름 관련 오류를 수정했습니다. [#4756](https://github.com/ClickHouse/ClickHouse/issues/4756)를 해결했습니다. [#9891](https://github.com/ClickHouse/ClickHouse/pull/9891) ([Artem Zuikov](https://github.com/4ertus2)).
* 설정 'allow\_introspection\_functions'에서 인트로스펙션 함수의 권한 부여 계산 문제를 수정했습니다. [#9840](https://github.com/ClickHouse/ClickHouse/pull/9840) ([Vitaly Baranov](https://github.com/vitlibar)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 통합 테스트 `test_settings_constraints`를 수정했습니다. [#9962](https://github.com/ClickHouse/ClickHouse/pull/9962) ([Vitaly Baranov](https://github.com/vitlibar)).
* `clock_getres` 의존성을 제거했습니다. [#9833](https://github.com/ClickHouse/ClickHouse/pull/9833) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="clickhouse-release-v203521-2020-03-27">
  ### ClickHouse 릴리스 v20.3.5.21, 2020-03-27
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 분산 테이블에서 `SET distributed_product_mode = 'local'`로 설정되어 있고 쿼리에 PREWHERE와 WHERE가 함께 있을 때 발생하던 'Different expressions with the same alias' 오류를 수정했습니다. [#9871](https://github.com/ClickHouse/ClickHouse/pull/9871) ([Artem Zuikov](https://github.com/4ertus2)).
* 복합 프라이머리 키가 있는 테이블에서 뮤테이션 수행 시 메모리 사용량이 과도하게 증가하던 문제를 수정했습니다. 이 변경으로 [#9850](https://github.com/ClickHouse/ClickHouse/issues/9850)이 해결됩니다. [#9860](https://github.com/ClickHouse/ClickHouse/pull/9860) ([alesapin](https://github.com/alesapin)).
* 이제 INSERT 쿼리에서 세그먼트는 initiator로부터 받은 설정을 세그먼트의 제약 조건 범위에 맞게 조정하며, 예외를 발생시키지 않습니다. 이 수정으로 서로 다른 제약 조건을 가진 세그먼트로도 INSERT 쿼리를 보낼 수 있습니다. 이 변경은 [#9447](https://github.com/ClickHouse/ClickHouse/issues/9447) 수정 사항을 개선합니다. [#9852](https://github.com/ClickHouse/ClickHouse/pull/9852) ([Vitaly Baranov](https://github.com/vitlibar)).
* 테이블 목록 밖(즉, WHERE 절)에서 COMMA JOIN을 사용하는 서브쿼리에서 발생하던 'COMMA to CROSS JOIN rewriter is not enabled or cannot rewrite query' 오류를 수정했습니다. [#9782](https://github.com/ClickHouse/ClickHouse/issues/9782)를 해결합니다. [#9830](https://github.com/ClickHouse/ClickHouse/pull/9830) ([Artem Zuikov](https://github.com/4ertus2)).
* 클라이언트에서 발생할 수 있는 `Got 0 in totals chunk, expected 1` 예외를 수정했습니다. 이 문제는 `JOIN`이 포함된 쿼리에서 오른쪽에 조인된 테이블의 행이 0개일 때 발생했습니다. 예시: `select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;`. [#9777](https://github.com/ClickHouse/ClickHouse/issues/9777)를 해결합니다. [#9823](https://github.com/ClickHouse/ClickHouse/pull/9823) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 타입을 변환할 수 없을 때 optimize\_skip\_unused\_shards에서 발생하던 SIGSEGV를 수정했습니다. [#9804](https://github.com/ClickHouse/ClickHouse/pull/9804) ([Azat Khuzhin](https://github.com/azat)).
* compact 파트에서 `ALTER TABLE DELETE COLUMN` 쿼리가 정상 동작하지 않던 문제를 수정했습니다. [#9779](https://github.com/ClickHouse/ClickHouse/pull/9779) ([alesapin](https://github.com/alesapin)).
* max\_distributed\_connections 관련 문제를 수정했습니다(Processors 사용 여부와 관계없이). [#9673](https://github.com/ClickHouse/ClickHouse/pull/9673) ([Azat Khuzhin](https://github.com/azat)).
* 함수 인수의 시간대가 올바르게 적용되지 않던 몇 가지 경우를 수정했습니다. [#9574](https://github.com/ClickHouse/ClickHouse/pull/9574) ([Vasily Nemkov](https://github.com/Enmk)).

<div id="improvement">
  #### 개선 사항
</div>

* 단일 스레드에서 하나의 정렬된 part를 읽으므로 뮤테이션에서 ORDER BY 단계를 제거합니다. 또한 뮤테이션의 행 순서가 정렬 키 순서대로 정렬되어 있고, 이 순서가 깨지지 않는지 확인하는 검사도 추가합니다. [#9886](https://github.com/ClickHouse/ClickHouse/pull/9886) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v203410-2020-03-20">
  ### ClickHouse 릴리스 v20.3.4.10, 2020-03-20
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 이번 릴리스에는 20.1.8.41의 모든 버그 수정도 포함되어 있습니다
* http를 통한 쿼리(processors 파이프라인 사용 시)에서 `rows_before_limit_at_least`가 누락되던 문제를 수정했습니다. 이로써 [#9730](https://github.com/ClickHouse/ClickHouse/issues/9730) 문제가 해결됩니다. [#9757](https://github.com/ClickHouse/ClickHouse/pull/9757) ([Nikolai Kochetov](https://github.com/KochetovNicolai))

<div id="clickhouse-release-v20336-2020-03-17">
  ### ClickHouse 릴리스 v20.3.3.6, 2020-03-17
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 이번 릴리스에는 20.1.7.38의 모든 버그 수정도 포함되어 있습니다
* 사용자가 이전 버전에서 뮤테이션을 실행한 경우 복제가 동작하지 않는 버그를 수정했습니다. 이로써 [#9645](https://github.com/ClickHouse/ClickHouse/issues/9645)가 해결됩니다. [#9652](https://github.com/ClickHouse/ClickHouse/pull/9652) ([alesapin](https://github.com/alesapin)). 이 변경으로 버전 20.3이 다시 이전 버전과 호환됩니다.
* `use_compact_format_in_distributed_parts_names` 설정을 추가하여 `Distributed` 테이블에 대한 `INSERT` 쿼리의 파일을 더 간결한 포맷으로 쓸 수 있게 했습니다. 이로써 [#9647](https://github.com/ClickHouse/ClickHouse/issues/9647)가 해결됩니다. [#9653](https://github.com/ClickHouse/ClickHouse/pull/9653) ([alesapin](https://github.com/alesapin)). 이 변경으로 버전 20.3이 다시 이전 버전과 호환됩니다.

<div id="clickhouse-release-v20321-2020-03-12">
  ### ClickHouse 릴리스 v20.3.2.1, 2020-03-12
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 많은 수의 레플리카가 있는 `Distributed` 테이블로 데이터를 전송할 때 발생하던 `file name too long` 문제를 수정했습니다. 레플리카 자격 증명이 서버 로그에 노출되던 문제를 수정했습니다. 디스크에 저장되는 디렉터리 이름 포맷이 `[shard{shard_index}[_replica{replica_index}]]`로 변경되었습니다. [#8911](https://github.com/ClickHouse/ClickHouse/pull/8911) ([Mikhail Korotov](https://github.com/millb)) 새 버전으로 업그레이드한 후에는 수동 조치 없이는 다운그레이드할 수 없습니다. 이전 서버 버전에서 새 디렉터리 포맷을 인식하지 못하기 때문입니다. 다운그레이드하려면 해당 디렉터리 이름을 이전 포맷으로 수동으로 변경해야 합니다. 이 변경 사항은 `Distributed` 테이블에 비동기 `INSERT`를 사용한 경우에만 해당합니다. 20.3.3 버전에서는 새 포맷을 점진적으로 활성화할 수 있도록 하는 설정을 도입할 예정입니다.
* 뮤테이션 명령의 복제 로그 엔트리 포맷이 변경되었습니다. 새 버전을 설치하기 전에 기존 뮤테이션 처리가 완료될 때까지 기다려야 합니다.
* 소프트 할당 한도를 기준으로 N바이트마다 `system.trace_log`에 스택트레이스를 덤프하는 간단한 메모리 프로파일러를 구현했습니다 [#8765](https://github.com/ClickHouse/ClickHouse/pull/8765) ([Ivan](https://github.com/abyss7)) [#9472](https://github.com/ClickHouse/ClickHouse/pull/9472) ([alexey-milovidov](https://github.com/alexey-milovidov)) `system.trace_log`의 컬럼 이름이 `timer_type`에서 `trace_type`으로 변경되었습니다. 이에 따라 서드파티 성능 분석 도구와 플레임 그래프 처리 도구를 수정해야 합니다.
* 내부 thread 번호 대신 모든 곳에서 OS thread id를 사용합니다. 이 변경으로 [#7477](https://github.com/ClickHouse/ClickHouse/issues/7477)가 해결됩니다. 이전 `clickhouse-client`는 `send_logs_level` 설정이 활성화된 경우 server에서 전송된 logs를 수신할 수 없습니다. 구조화된 log messages의 이름과 타입이 변경되었기 때문입니다. 반면 서로 다른 server 버전끼리는 서로 다른 타입의 logs를 주고받을 수 있습니다. `send_logs_level` 설정을 사용하지 않는다면 신경 쓰지 않아도 됩니다. [#8954](https://github.com/ClickHouse/ClickHouse/pull/8954) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `indexHint` 함수 제거 [#9542](https://github.com/ClickHouse/ClickHouse/pull/9542) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `findClusterIndex`, `findClusterValue` 함수를 제거했습니다. 이로써 [#8641](https://github.com/ClickHouse/ClickHouse/issues/8641)이 수정됩니다. 이 함수들을 사용 중이었다면 `clickhouse-feedback@yandex-team.com`으로 이메일을 보내주십시오 [#9543](https://github.com/ClickHouse/ClickHouse/pull/9543) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 `SELECT` 하위 쿼리를 기본 표현식으로 사용하는 컬럼 생성이나 컬럼 추가는 허용되지 않습니다. [#9481](https://github.com/ClickHouse/ClickHouse/pull/9481) ([alesapin](https://github.com/alesapin))
* JOIN의 서브쿼리에는 별칭을 반드시 지정해야 합니다. [#9274](https://github.com/ClickHouse/ClickHouse/pull/9274) ([Artem Zuikov](https://github.com/4ertus2))
* `ALTER MODIFY/ADD` 쿼리 로직이 개선되었습니다. 이제 타입 없이 컬럼을 `ADD`할 수 없고, `MODIFY` 기본 표현식은 컬럼 타입을 변경하지 않으며, `MODIFY` 타입은 기본 표현식 값을 잃지 않습니다. [#8669](https://github.com/ClickHouse/ClickHouse/issues/8669)을 수정했습니다. [#9227](https://github.com/ClickHouse/ClickHouse/pull/9227) ([alesapin](https://github.com/alesapin))
* 로깅 구성 변경 사항을 적용하려면 서버를 재시작해야 합니다. 이는 서버가 삭제된 로그 파일에 계속 로그를 기록하는 버그를 피하기 위한 임시 우회책입니다([#8696](https://github.com/ClickHouse/ClickHouse/issues/8696) 참조). [#8707](https://github.com/ClickHouse/ClickHouse/pull/8707) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 설정 `experimental_use_processors`는 기본적으로 활성화되어 있습니다. 이 설정을 사용하면 새로운 쿼리 파이프라인을 사용할 수 있습니다. 이는 내부 리팩터링이므로 눈에 띄는 변경 사항은 없을 것으로 예상합니다. 문제가 발생하면 값을 다시 0으로 설정하십시오. [#8768](https://github.com/ClickHouse/ClickHouse/pull/8768) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="new-feature-2">
  #### 새 기능
</div>

* `Avro` 및 `AvroConfluent` 입력/출력 포맷을 추가 [#8571](https://github.com/ClickHouse/ClickHouse/pull/8571) ([Andrew Onyshchuk](https://github.com/oandrew)) [#8957](https://github.com/ClickHouse/ClickHouse/pull/8957) ([Andrew Onyshchuk](https://github.com/oandrew)) [#8717](https://github.com/ClickHouse/ClickHouse/pull/8717) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `cache` Dictionaries에서 만료된 키를 다중 스레드 및 비차단 방식으로 업데이트합니다(선택적으로 이전 키를 읽는 것도 허용). [#8303](https://github.com/ClickHouse/ClickHouse/pull/8303) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 쿼리 `ALTER ... MATERIALIZE TTL`를 추가했습니다. 이 쿼리는 TTL로 만료된 데이터를 강제로 제거하고 모든 파트의 TTL 메타정보를 다시 계산하는 mutation을 실행합니다. [#8775](https://github.com/ClickHouse/ClickHouse/pull/8775) ([Anton Popov](https://github.com/CurtizJ))
* 필요한 경우 HashJoin에서 디스크 기반 MergeJoin으로 전환 [#9082](https://github.com/ClickHouse/ClickHouse/pull/9082) ([Artem Zuikov](https://github.com/4ertus2))
* `ALTER TABLE`에 `MOVE PARTITION` 명령이 추가되었습니다 [#4729](https://github.com/ClickHouse/ClickHouse/issues/4729) [#6168](https://github.com/ClickHouse/ClickHouse/pull/6168) ([Guillaume Tassery](https://github.com/YiuRULE))
* 실행 중에 설정 파일에서 스토리지 구성을 다시 로드합니다. [#8594](https://github.com/ClickHouse/ClickHouse/pull/8594) ([Vladimir Chebotarev](https://github.com/excitoon))
* `storage_policy`를 기존과 같거나 더 풍부한 정책으로 변경할 수 있게 했습니다. [#8107](https://github.com/ClickHouse/ClickHouse/pull/8107) ([Vladimir Chebotarev](https://github.com/excitoon))
* S3 스토리지 및 테이블 함수에서 글롭 패턴/와일드카드를 지원하도록 추가되었습니다. [#8851](https://github.com/ClickHouse/ClickHouse/pull/8851) ([Vladimir Chebotarev](https://github.com/excitoon))
* `FixedString(N)` 데이터 타입에 `bitAnd`, `bitOr`, `bitXor`, `bitNot`를 구현했습니다. [#9091](https://github.com/ClickHouse/ClickHouse/pull/9091) ([Guillaume Tassery](https://github.com/YiuRULE))
* 함수 `bitCount`를 추가했습니다. 이 변경으로 [#8702](https://github.com/ClickHouse/ClickHouse/issues/8702) 문제가 수정되었습니다. [#8708](https://github.com/ClickHouse/ClickHouse/pull/8708) ([alexey-milovidov](https://github.com/alexey-milovidov)) [#8749](https://github.com/ClickHouse/ClickHouse/pull/8749) ([ikopylov](https://github.com/ikopylov))
* 주어진 스키마에 따라 무작위 행을 생성하는 `generateRandom` 테이블 함수를 추가했습니다. 이를 통해 임의의 테스트 테이블을 데이터로 채울 수 있습니다. [#8994](https://github.com/ClickHouse/ClickHouse/pull/8994) ([Ilya Yatsishin](https://github.com/qoega))
* `JSONEachRowFormat`: 객체가 최상위 배열로 감싸진 특수한 경우를 지원합니다. [#8860](https://github.com/ClickHouse/ClickHouse/pull/8860) ([Kruglov Pavel](https://github.com/Avogar))
* 이제 기본 `ALIAS` 표현식이 설정된 컬럼에 의존하는 `DEFAULT` 표현식이 있는 컬럼을 생성할 수 있습니다. [#9489](https://github.com/ClickHouse/ClickHouse/pull/9489) ([alesapin](https://github.com/alesapin))
* `clickhouse-obfuscator`에서 원본 데이터 크기를 초과하는 `--limit`도 지정할 수 있습니다. 데이터는 서로 다른 랜덤 시드를 사용해 반복됩니다. [#9155](https://github.com/ClickHouse/ClickHouse/pull/9155) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `groupArraySample` 함수를 추가했습니다(`groupArray`와 유사하며 reservoir 샘플링 알고리즘을 사용합니다). [#8286](https://github.com/ClickHouse/ClickHouse/pull/8286) ([Amos Bird](https://github.com/amosbird))
* 이제 시스템 메트릭을 통해 `cache`/`complex_key_cache` 딕셔너리의 업데이트 큐 크기를 모니터링할 수 있습니다. [#9413](https://github.com/ClickHouse/ClickHouse/pull/9413) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 설정 `output_format_csv_crlf_end_of_line`을 1로 지정하면 CSV 출력 형식에서 줄 구분자로 CRLF를 사용할 수 있습니다 [#8934](https://github.com/ClickHouse/ClickHouse/pull/8934) [#8935](https://github.com/ClickHouse/ClickHouse/pull/8935) [#8963](https://github.com/ClickHouse/ClickHouse/pull/8963) ([Mikhail Korotov](https://github.com/millb))
* [H3](https://github.com/uber/h3) API 함수 `h3GetBaseCell`, `h3HexAreaM2`, `h3IndexesAreNeighbors`, `h3ToChildren`, `h3ToString`, `stringToH3`를 추가로 구현했습니다 [#8938](https://github.com/ClickHouse/ClickHouse/pull/8938) ([Nico Mandery](https://github.com/nmandery))
* 새로운 설정이 도입되었습니다: `max_parser_depth`를 추가하여 최대 스택 크기를 제어하고 크고 복잡한 쿼리도 처리할 수 있도록 했습니다. 이로써 [#6681](https://github.com/ClickHouse/ClickHouse/issues/6681) 및 [#7668](https://github.com/ClickHouse/ClickHouse/issues/7668)이 수정되었습니다. [#8647](https://github.com/ClickHouse/ClickHouse/pull/8647) ([Maxim Smirnov](https://github.com/qMBQx8GH))
* 사용되지 않는 세그먼트를 스키핑할 수 없는 경우 예외를 발생시키는 `force_optimize_skip_unused_shards` 설정을 추가했습니다 [#8805](https://github.com/ClickHouse/ClickHouse/pull/8805) ([Azat Khuzhin](https://github.com/azat))
* `Distributed` 엔진에서 전송용 데이터를 저장할 수 있도록 여러 디스크/볼륨을 구성할 수 있게 했습니다 [#8756](https://github.com/ClickHouse/ClickHouse/pull/8756) ([Azat Khuzhin](https://github.com/azat))
* 임시 데이터 저장을 위한 저장소 정책(`<tmp_policy>`)을 지원합니다. [#8750](https://github.com/ClickHouse/ClickHouse/pull/8750) ([Azat Khuzhin](https://github.com/azat))
* 데이터 전송 전에 예외가 발생한 경우 설정되는 `X-ClickHouse-Exception-Code` HTTP header를 추가했습니다. 이는 [#4971](https://github.com/ClickHouse/ClickHouse/issues/4971)을 구현한 것입니다. [#8786](https://github.com/ClickHouse/ClickHouse/pull/8786) ([Mikhail Korotov](https://github.com/millb))
* 함수 `ifNotFinite`가 추가되었습니다. 이는 단지 문법 편의 구문일 뿐입니다: `ifNotFinite(x, y) = isFinite(x) ? x : y`. [#8710](https://github.com/ClickHouse/ClickHouse/pull/8710) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `system.dictionaries` 테이블에 `last_successful_update_time` 컬럼이 추가되었습니다 [#9394](https://github.com/ClickHouse/ClickHouse/pull/9394) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* `blockSerializedSize` 함수를 추가했습니다(압축 없이 디스크에 저장된 크기) [#8952](https://github.com/ClickHouse/ClickHouse/pull/8952) ([Azat Khuzhin](https://github.com/azat))
* `moduloOrZero` 함수 추가 [#9358](https://github.com/ClickHouse/ClickHouse/pull/9358) ([hcz](https://github.com/hczhcz))
* 시스템 테이블 `system.zeros` 및 `system.zeros_mt`와 테이블 함수 `zeros()` 및 `zeros_mt()`가 추가되었습니다. 테이블(및 테이블 함수)에는 이름이 `zero`이고 유형이 `UInt8`인 단일 컬럼이 포함됩니다. 이 컬럼에는 0 값이 들어 있습니다. 테스트 목적으로 많은 행을 생성하는 가장 빠른 메서드가 필요했기 때문입니다. 이 변경으로 [#6604](https://github.com/ClickHouse/ClickHouse/issues/6604) [#9593](https://github.com/ClickHouse/ClickHouse/pull/9593)가 수정되었습니다 ([Nikolai Kochetov](https://github.com/KochetovNicolai))

<div id="experimental-feature">
  #### 실험적 기능
</div>

* `MergeTree` 계열 테이블에 모든 컬럼을 하나의 파일에 저장하는 새로운 compact 파트 포맷을 추가했습니다. 이 포맷은 작고 빈번한 삽입의 성능 향상에 도움이 됩니다. 기존 포맷(컬럼마다 파일 1개)은 이제 wide라고 부릅니다. 데이터 저장 포맷은 설정 `min_bytes_for_wide_part` 및 `min_rows_for_wide_part`로 제어됩니다. [#8290](https://github.com/ClickHouse/ClickHouse/pull/8290) ([Anton Popov](https://github.com/CurtizJ))
* `Log`, `TinyLog`, `StripeLog` 테이블에 S3 storage를 지원합니다. [#8862](https://github.com/ClickHouse/ClickHouse/pull/8862) ([Pavel Kovalenko](https://github.com/Jokser))

<div id="bug-fix">
  #### 버그 수정
</div>

* 로그 메시지에서 일관되지 않던 공백을 수정했습니다. [#9322](https://github.com/ClickHouse/ClickHouse/pull/9322) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이름이 없는 튜플 배열이 테이블 생성 시 Nested 구조로 평탄화되는 버그를 수정했습니다. [#8866](https://github.com/ClickHouse/ClickHouse/pull/8866) ([achulkov2](https://github.com/achulkov2))
* `File` 테이블 또는 `file` 테이블 함수에서 glob 패턴과 일치하는 파일이 너무 많을 때 "Too many open files" 오류가 발생할 수 있던 문제를 수정했습니다. 이제 파일은 필요할 때만 열립니다. 이로써 [#8857](https://github.com/ClickHouse/ClickHouse/issues/8857) [#8861](https://github.com/ClickHouse/ClickHouse/pull/8861)이 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* DROP TEMPORARY TABLE은 이제 임시 테이블만 삭제하도록 변경되었습니다. [#8907](https://github.com/ClickHouse/ClickHouse/pull/8907) ([Vitaly Baranov](https://github.com/vitlibar))
* 서버 종료 시 또는 테이블을 DETACH/ATTACH할 때 오래된 파티션을 제거합니다. [#8602](https://github.com/ClickHouse/ClickHouse/pull/8602) ([Guillaume Tassery](https://github.com/YiuRULE))
* 기본 디스크에서 `data` 하위 디렉터리를 기준으로 여유 공간을 계산하는 방식을 수정했습니다. `data` 디렉터리가 별도의 장치에 마운트된 경우(드문 사례) 여유 공간이 올바르게 계산되지 않던 문제를 수정했습니다. 이 변경으로 [#7441](https://github.com/ClickHouse/ClickHouse/issues/7441) [#9257](https://github.com/ClickHouse/ClickHouse/pull/9257)가 해결되었습니다 ([Mikhail Korotov](https://github.com/millb))
* IN ()을 포함한 쉼표(크로스) 조인을 허용합니다. [#9251](https://github.com/ClickHouse/ClickHouse/pull/9251) ([Artem Zuikov](https://github.com/4ertus2))
* WHERE 절에 \[NOT] LIKE 연산자가 있는 경우 CROSS를 INNER JOIN으로 재작성할 수 있도록 개선했습니다. [#9229](https://github.com/ClickHouse/ClickHouse/pull/9229) ([Artem Zuikov](https://github.com/4ertus2))
* 설정 `distributed_aggregation_memory_efficient`가 enabled된 상태에서 `GROUP BY` 이후 잘못된 결과가 발생할 수 있는 문제를 수정했습니다. [#9134](https://github.com/ClickHouse/ClickHouse/issues/9134). [#9289](https://github.com/ClickHouse/ClickHouse/pull/9289) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 캐시 딕셔너리 메트릭에서 발견된 키가 누락된 것으로 집계되던 문제를 수정했습니다. [#9411](https://github.com/ClickHouse/ClickHouse/pull/9411) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* [#8598](https://github.com/ClickHouse/ClickHouse/issues/8598)에서 도입된 복제 프로토콜 비호환성 문제를 수정했습니다. [#9412](https://github.com/ClickHouse/ClickHouse/pull/9412) ([alesapin](https://github.com/alesapin))
* `ReplicatedMergeTree` 테이블 시작 시점에 `queue_task_handle`에서 발생하던 경쟁 상태를 수정했습니다. [#9552](https://github.com/ClickHouse/ClickHouse/pull/9552) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 토큰 `NOT`이 `SHOW TABLES NOT LIKE` 쿼리에서 동작하지 않던 문제 [#8727](https://github.com/ClickHouse/ClickHouse/issues/8727) [#8940](https://github.com/ClickHouse/ClickHouse/pull/8940) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 함수 `h3EdgeLengthM`에 범위 검사를 추가했습니다. 이 검사가 없으면 버퍼 오버플로우가 발생할 수 있습니다. [#8945](https://github.com/ClickHouse/ClickHouse/pull/8945) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 여러 인수(10개 초과)를 사용하는 3항 논리 연산자의 배치 계산에서 발생하던 버그를 수정했습니다. [#8718](https://github.com/ClickHouse/ClickHouse/pull/8718) ([Alexander Kazakov](https://github.com/Akazz))
* segfault 또는 `Inconsistent number of columns got from MergeTreeRangeReader` 예외를 일으킬 수 있던 PREWHERE 최적화 오류를 수정했습니다. [#9024](https://github.com/ClickHouse/ClickHouse/pull/9024) ([Anton Popov](https://github.com/CurtizJ))
* 실제로 timeout이 초과되기 전에 보안 연결에서 간헐적으로 발생하고, 쿼리 프로파일러가 활성화된 경우 나타나던 예상치 못한 `Timeout exceeded while reading from socket` 예외를 수정했습니다. 또한 `connect_timeout_with_failover_ms`와 유사하지만 보안 연결에 사용하는 `connect_timeout_with_failover_secure_ms` 설정(기본값 100ms)을 추가했습니다(SSL 핸드셰이크는 일반 TCP 연결보다 더 느리기 때문입니다) [#9026](https://github.com/ClickHouse/ClickHouse/pull/9026) ([tavplubix](https://github.com/tavplubix))
* `parts_to_do=0` 및 `is_done=0` 상태에서 뮤테이션이 멈출 수 있던 뮤테이션 완료 처리 버그를 수정했습니다. [#9022](https://github.com/ClickHouse/ClickHouse/pull/9022) ([alesapin](https://github.com/alesapin))
* `partial_merge_join` 설정으로 새로운 ANY JOIN 로직을 사용할 수 있습니다. 이제 `partial_merge_join=1`을 사용해 `ANY|ALL|SEMI LEFT` 및 `ALL INNER` 조인을 수행할 수 있습니다. [#8932](https://github.com/ClickHouse/ClickHouse/pull/8932) ([Artem Zuikov](https://github.com/4ertus2))
* 세그먼트는 이제 initiator에서 받은 설정을 세그먼트의 제약 조건에 맞게 조정하며, 예외를 발생시키지 않습니다. 이 수정으로 제약 조건이 다른 세그먼트에도 쿼리를 보낼 수 있습니다. [#9447](https://github.com/ClickHouse/ClickHouse/pull/9447) ([Vitaly Baranov](https://github.com/vitlibar))
* `MergeTreeReadPool`의 메모리 관리 문제가 해결되었습니다. [#8791](https://github.com/ClickHouse/ClickHouse/pull/8791) ([Vladimir Chebotarev](https://github.com/excitoon))
* 문자열 `e`를 인수로 호출할 때의 `toDecimal*OrNull()` 함수 계열 문제를 수정했습니다. [#8312](https://github.com/ClickHouse/ClickHouse/issues/8312) [#8764](https://github.com/ClickHouse/ClickHouse/pull/8764) ([Artem Zuikov](https://github.com/4ertus2))
* `FORMAT Null`이 클라이언트에 데이터를 전송하지 않도록 수정했습니다. [#8767](https://github.com/ClickHouse/ClickHouse/pull/8767) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `LiveViewBlockInputStream`에서 timestamp가 업데이트되지 않던 버그를 수정했습니다. `LIVE VIEW`는 실험적 기능입니다. [#8644](https://github.com/ClickHouse/ClickHouse/pull/8644) ([vxider](https://github.com/Vxider)) [#8625](https://github.com/ClickHouse/ClickHouse/pull/8625) ([vxider](https://github.com/Vxider))
* 기존 TTL 표현식을 삭제하지 못하던 `ALTER MODIFY TTL`의 잘못된 동작을 수정했습니다. [#8422](https://github.com/ClickHouse/ClickHouse/pull/8422) ([Vladimir Chebotarev](https://github.com/excitoon))
* MergeTreeIndexSet의 UBSan 보고 문제를 수정했습니다. 이 수정으로 [#9250](https://github.com/ClickHouse/ClickHouse/issues/9250) [#9365](https://github.com/ClickHouse/ClickHouse/pull/9365)가 해결됩니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* `match` 및 `extract` 함수에서 haystack이 0바이트일 때의 동작을 수정했습니다. haystack이 상수일 때 동작이 잘못되던 문제를 바로잡았습니다. 이 수정은 [#9160](https://github.com/ClickHouse/ClickHouse/issues/9160) [#9163](https://github.com/ClickHouse/ClickHouse/pull/9163) ([alexey-milovidov](https://github.com/alexey-milovidov)) [#9345](https://github.com/ClickHouse/ClickHouse/pull/9345) ([alexey-milovidov](https://github.com/alexey-milovidov))를 해결합니다.
* Apache Avro 타사 라이브러리의 소멸자에서 예외를 던지지 않도록 수정했습니다. [#9066](https://github.com/ClickHouse/ClickHouse/pull/9066) ([Andrew Onyshchuk](https://github.com/oandrew))
* 데이터 누락이 발생할 수 있으므로 `Kafka`에서 폴링한 배치를 부분적으로 커밋하지 마십시오. [#8876](https://github.com/ClickHouse/ClickHouse/pull/8876) ([filimonov](https://github.com/filimonov))
* `joinGet`의 널 허용 반환 타입에서 발생하던 문제를 수정했습니다. [#8919](https://github.com/ClickHouse/ClickHouse/issues/8919) [#9014](https://github.com/ClickHouse/ClickHouse/pull/9014) ([Amos Bird](https://github.com/amosbird))
* `T64` 코덱으로 압축할 때 발생하는 데이터 비호환성 문제를 수정했습니다. [#9016](https://github.com/ClickHouse/ClickHouse/pull/9016) ([Artem Zuikov](https://github.com/4ertus2)) 영향받는 버전에서 잘못된 압축 및 압축 해제를 유발하던 `T64` 압축 코덱의 데이터 타입 ID를 수정했습니다. [#9033](https://github.com/ClickHouse/ClickHouse/pull/9033) ([Artem Zuikov](https://github.com/4ertus2))
* `enable_early_constant_folding` 설정을 추가하고, 오류가 발생하는 일부 경우에는 이를 비활성화하도록 했습니다. [#9010](https://github.com/ClickHouse/ClickHouse/pull/9010) ([Artem Zuikov](https://github.com/4ertus2))
* VIEW에서 푸시다운 프레디케이트 최적화기를 수정하고 테스트를 활성화함 [#9011](https://github.com/ClickHouse/ClickHouse/pull/9011) ([Winter Zhang](https://github.com/zhang2014))
* `File` 스토리지에서 읽을 때 발생할 수 있는 `Merge` 테이블의 세그폴트를 수정 [#9387](https://github.com/ClickHouse/ClickHouse/pull/9387) ([tavplubix](https://github.com/tavplubix))
* `ATTACH PARTITION FROM`, `REPLACE PARTITION`, `MOVE TO TABLE`에 스토리지 정책 검사 기능이 추가되었습니다. 그렇지 않으면 재시작 후 part의 데이터에 접근할 수 없게 되어 ClickHouse가 시작되지 않을 수 있었습니다. [#9383](https://github.com/ClickHouse/ClickHouse/pull/9383) ([Vladimir Chebotarev](https://github.com/excitoon))
* 테이블에 TTL이 설정된 경우 `ALTER`가 동작하도록 수정했습니다. [#8800](https://github.com/ClickHouse/ClickHouse/pull/8800) ([Anton Popov](https://github.com/CurtizJ))
* 일부 딕셔너리가 수정, 추가 또는 삭제되는 중에 `SYSTEM RELOAD ALL DICTIONARIES`를 실행할 때 발생할 수 있는 경쟁 상태를 수정했습니다. [#8801](https://github.com/ClickHouse/ClickHouse/pull/8801) ([Vitaly Baranov](https://github.com/vitlibar))
* 이전 버전에서는 `Memory` 데이터베이스 엔진이 빈 데이터 경로를 사용했기 때문에, 테이블이 데이터베이스의 데이터 디렉터리(예: `/var/lib/clickhouse/db_name`)가 아니라 `path` 디렉터리(예: `/var/lib/clickhouse/`)에 생성되었습니다. [#8753](https://github.com/ClickHouse/ClickHouse/pull/8753) ([tavplubix](https://github.com/tavplubix))
* 기본 디스크 또는 정책이 없다고 표시되는 잘못된 로그 메시지를 수정했습니다. [#9530](https://github.com/ClickHouse/ClickHouse/pull/9530) ([Vladimir Chebotarev](https://github.com/excitoon))
* 배열 타입용 bloom\_filter 인덱스의 not(has()) 문제를 수정했습니다. [#9407](https://github.com/ClickHouse/ClickHouse/pull/9407) ([achimbab](https://github.com/achimbab))
* `Log` 엔진을 사용하는 테이블에서 첫 번째 컬럼(들)을 별칭(alias)으로 허용 [#9231](https://github.com/ClickHouse/ClickHouse/pull/9231) ([Ivan](https://github.com/abyss7))
* 하나의 스레드에서 `MergeTree` 테이블을 읽을 때 범위 순서를 바로잡았습니다. 이 문제로 인해 `MergeTreeRangeReader`에서 예외가 발생하거나 쿼리 결과가 잘못될 수 있었습니다. [#9050](https://github.com/ClickHouse/ClickHouse/pull/9050) ([Anton Popov](https://github.com/CurtizJ))
* `reinterpretAsFixedString`가 `String` 대신 `FixedString`을 반환하게 했습니다. [#9052](https://github.com/ClickHouse/ClickHouse/pull/9052) ([Andrew Onyshchuk](https://github.com/oandrew))
* 사용자에게 잘못된 오류 메시지(상세한 오류 설명 대신 `Success`)가 표시되는 매우 드문 경우가 발생하지 않도록 했습니다. [#9457](https://github.com/ClickHouse/ClickHouse/pull/9457) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 빈 행 템플릿을 사용하는 `Template` 포맷에서 충돌이 발생하지 않도록 수정했습니다. [#8785](https://github.com/ClickHouse/ClickHouse/pull/8785) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 시스템 테이블의 메타데이터 파일이 잘못된 위치에 생성될 수 있던 문제를 수정했습니다 [#8653](https://github.com/ClickHouse/ClickHouse/pull/8653) ([tavplubix](https://github.com/tavplubix)). 이는 [#8581](https://github.com/ClickHouse/ClickHouse/issues/8581)을 해결합니다.
* cache 딕셔너리의 exception\_ptr에서 발생하는 데이터 레이스 수정 [#8303](https://github.com/ClickHouse/ClickHouse/issues/8303). [#9379](https://github.com/ClickHouse/ClickHouse/pull/9379) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* `ATTACH TABLE IF NOT EXISTS` 쿼리에서는 예외를 발생시키지 않습니다. 이전에는 `IF NOT EXISTS` 절이 있어도 테이블(table)이 이미 존재하면 예외가 발생했습니다. [#8967](https://github.com/ClickHouse/ClickHouse/pull/8967) ([Anton Popov](https://github.com/CurtizJ))
* 예외 메시지에서 빠진 닫는 괄호를 수정했습니다. [#8811](https://github.com/ClickHouse/ClickHouse/pull/8811) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 대화형 모드에서 `clickhouse-client` 시작 시 `Possible deadlock avoided` 메시지가 표시되지 않도록 했습니다. [#9455](https://github.com/ClickHouse/ClickHouse/pull/9455) ([alexey-milovidov](https://github.com/alexey-milovidov))
* base64로 인코딩된 값 끝의 패딩이 잘못될 수 있던 문제를 수정했습니다. base64 라이브러리를 업데이트했습니다. 이로써 [#9491](https://github.com/ClickHouse/ClickHouse/issues/9491)을 수정하고, [#9492](https://github.com/ClickHouse/ClickHouse/issues/9492) [#9500](https://github.com/ClickHouse/ClickHouse/pull/9500)을 종료했습니다. ([alexey-milovidov](https://github.com/alexey-milovidov))
* `suffix`를 읽은 후 커밋하기 전에 예외가 발생하는 드문 경우 `Kafka`에서 데이터가 손실되지 않도록 했습니다. [#9378](https://github.com/ClickHouse/ClickHouse/issues/9378) [#9507](https://github.com/ClickHouse/ClickHouse/pull/9507) 수정 ([filimonov](https://github.com/filimonov))
* `DROP TABLE IF EXISTS`에서 발생하던 예외를 수정했습니다 [#8663](https://github.com/ClickHouse/ClickHouse/pull/8663) ([Nikita Vasilev](https://github.com/nikvas0))
* 사용자가 구형 형식의 `MergeTree` 테이블 엔진 계열에 대해 `ALTER MODIFY SETTING`을 시도할 때 발생하던 충돌을 수정했습니다. [#9435](https://github.com/ClickHouse/ClickHouse/pull/9435) ([alesapin](https://github.com/alesapin))
* JSON 관련 함수에서 Int64 범위를 벗어나는 UInt64 숫자를 지원합니다. SIMDJSON을 master로 업데이트했습니다. 이로써 [#9209](https://github.com/ClickHouse/ClickHouse/issues/9209) [#9344](https://github.com/ClickHouse/ClickHouse/pull/9344) 문제가 수정됩니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 엄격한 단조성이 없는 함수형 인덱스를 사용할 때 역전된 프레디케이트가 올바르게 실행되도록 수정했습니다. [#9223](https://github.com/ClickHouse/ClickHouse/pull/9223) ([Alexander Kazakov](https://github.com/Akazz))
* `GROUP BY`에서 `IN` 상수 폴딩을 시도하지 않음 [#8868](https://github.com/ClickHouse/ClickHouse/pull/8868) ([Amos Bird](https://github.com/amosbird))
* 인덱스 손상을 초래하는 `ALTER DELETE` 뮤테이션의 버그를 수정했습니다. 이로써 [#9019](https://github.com/ClickHouse/ClickHouse/issues/9019)와 [#8982](https://github.com/ClickHouse/ClickHouse/issues/8982)가 해결됩니다. 또한 `ReplicatedMergeTree` `ALTER` 쿼리에서 매우 드물게 발생하는 경쟁 상태도 수정했습니다. [#9048](https://github.com/ClickHouse/ClickHouse/pull/9048) ([alesapin](https://github.com/alesapin))
* 설정 `compile_expressions`를 활성화하면 `Nullable` 유형을 사용할 때 `LLVMExecutableFunction`에서 `unexpected column` 오류가 발생할 수 있습니다 [#8910](https://github.com/ClickHouse/ClickHouse/pull/8910) ([Guillaume Tassery](https://github.com/YiuRULE))
* `Kafka` engine의 여러 수정 사항: 1) consumer group 리밸런싱 중 발생하던 중복 문제를 수정했습니다. 2) 여러 파티션에서 한 번의 poll로 데이터를 가져오고 일부만 commit했을 때 드물게 발생하던 'holes' 문제를 수정했습니다(이제 poll된 전체 메시지 block을 항상 처리하고 commit합니다). 3) block 크기 기준 플러시를 수정했습니다(이전에는 timeout 기준 플러시만 제대로 작동했습니다). 4) subscription 절차를 개선했습니다(assignment 피드백 포함). 5) 테스트가 더 빠르게 실행되도록 개선했습니다(기본 인터벌 및 timeout 기준). 이전에는 문서에 명시된 대로 데이터가 block 크기에 따라 플러시되지 않았기 때문에, 이 PR로 인해 기본 설정에서는 일부 성능 저하가 발생할 수 있습니다(더 자주, 더 작은 단위로 플러시되어 효율이 떨어지기 때문입니다). 이 변경 후 성능 문제가 발생하면 테이블의 `kafka_max_block_size` 값을 더 크게 늘리십시오(예: `CREATE TABLE ...Engine=Kafka ... SETTINGS ... kafka_max_block_size=524288`). 수정 [#7259](https://github.com/ClickHouse/ClickHouse/issues/7259) [#8917](https://github.com/ClickHouse/ClickHouse/pull/8917) ([filimonov](https://github.com/filimonov))
* PREWHERE 최적화 후 일부 쿼리에서 발생하던 `Parameter out of bound` 예외를 해결했습니다. [#8914](https://github.com/ClickHouse/ClickHouse/pull/8914) ([Baudouin Giard](https://github.com/bgiard))
* 함수 `arrayZip` 인수에서 상수와 비상수가 혼합된 경우의 처리를 수정했습니다. [#8705](https://github.com/ClickHouse/ClickHouse/pull/8705) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `CREATE` 쿼리 실행 시 스토리지 엔진 인수의 상수 표현식을 접습니다. 빈 데이터베이스 이름은 현재 데이터베이스 이름으로 대체합니다. [#6508](https://github.com/ClickHouse/ClickHouse/issues/6508), [#3492](https://github.com/ClickHouse/ClickHouse/issues/3492) [#9262](https://github.com/ClickHouse/ClickHouse/pull/9262)를 수정했습니다. ([tavplubix](https://github.com/tavplubix))
* 이제 `a DEFAULT b, b DEFAULT a`와 같은 단순한 순환 별칭이 지정된 컬럼은 생성하거나 추가할 수 없습니다. [#9603](https://github.com/ClickHouse/ClickHouse/pull/9603) ([alesapin](https://github.com/alesapin))
* 원본 파트가 손상될 수 있는 이중 이동 버그를 수정했습니다. `ALTER TABLE MOVE`를 사용하는 경우 이 문제의 영향을 받을 수 있습니다 [#8680](https://github.com/ClickHouse/ClickHouse/pull/8680) ([Vladimir Chebotarev](https://github.com/excitoon))
* `interval` 식별자가 백틱 없이도 올바르게 파싱되도록 했습니다. `interval` 식별자를 백틱이나 큰따옴표로 감싸도 쿼리를 실행할 수 없던 문제를 수정했습니다. 이로써 [#9124](https://github.com/ClickHouse/ClickHouse/issues/9124)가 해결되었습니다. [#9142](https://github.com/ClickHouse/ClickHouse/pull/9142) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `bitTestAll`/`bitTestAny` 함수의 퍼즈 테스트를 수정하고 잘못된 동작을 바로잡았습니다. [#9143](https://github.com/ClickHouse/ClickHouse/pull/9143) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `LIMIT n WITH TIES`에서 n번째 행과 같은 값의 행이 매우 많은 경우 발생할 수 있는 크래시/행 수 오류 문제를 수정했습니다. [#9464](https://github.com/ClickHouse/ClickHouse/pull/9464) ([tavplubix](https://github.com/tavplubix))
* `insert_quorum`이 활성화된 상태에서 기록된 파트의 뮤테이션을 수정했습니다. [#9463](https://github.com/ClickHouse/ClickHouse/pull/9463) ([alesapin](https://github.com/alesapin))
* `Poco::HTTPServer` 종료 시 발생하는 데이터 레이스를 수정했습니다. 서버가 시작된 직후 바로 종료될 때 이 문제가 발생할 수 있었습니다. [#9468](https://github.com/ClickHouse/ClickHouse/pull/9468) ([Anton Popov](https://github.com/CurtizJ))
* `SHOW CREATE TABLE a_table_that_does_not_exist`를 실행할 때 잘못된 인상을 주는 오류 메시지가 표시되던 버그를 수정했습니다. [#8899](https://github.com/ClickHouse/ClickHouse/pull/8899) ([achulkov2](https://github.com/achulkov2))
* 일부 드문 경우에 `SELECT` 절에 상수가 포함되어 있고 `ORDER BY` 및 `LIMIT` 절이 있을 때 발생하던 `Parameters are out of bound` 예외를 수정했습니다. [#8892](https://github.com/ClickHouse/ClickHouse/pull/8892) ([Guillaume Tassery](https://github.com/YiuRULE))
* 이미 완료된 뮤테이션의 상태가 `is_done=0`으로 표시될 수 있던 뮤테이션 최종화 문제를 수정했습니다. [#9217](https://github.com/ClickHouse/ClickHouse/pull/9217) ([alesapin](https://github.com/alesapin))
* 작동하지 않으므로 이전 구문을 사용하는 MergeTree 테이블에서는 `ALTER ADD INDEX`가 실행되지 않도록 했습니다. [#8822](https://github.com/ClickHouse/ClickHouse/pull/8822) ([Mikhail Korotov](https://github.com/millb))
* 서버 시작 시 `LIVE VIEW`가 의존하는 테이블에 접근하지 않도록 하여 서버가 정상적으로 시작되도록 했습니다. 또한 `LIVE VIEW`를 분리할 때 `LIVE VIEW` 의존성도 제거합니다. `LIVE VIEW`는 실험적 기능입니다. [#8824](https://github.com/ClickHouse/ClickHouse/pull/8824) ([tavplubix](https://github.com/tavplubix))
* `PREWHERE` 실행 중 `MergeTreeRangeReader`에서 발생할 수 있는 segfault 문제를 수정했습니다. [#9106](https://github.com/ClickHouse/ClickHouse/pull/9106) ([Anton Popov](https://github.com/CurtizJ))
* 컬럼 TTL로 인해 발생할 수 있는 체크섬 불일치를 수정했습니다. [#9451](https://github.com/ClickHouse/ClickHouse/pull/9451) ([Anton Popov](https://github.com/CurtizJ))
* 볼륨이 하나뿐인 경우, TTL 규칙에 따라 백그라운드에서 파트가 이동되지 않던 버그를 수정했습니다. [#8672](https://github.com/ClickHouse/ClickHouse/pull/8672) ([Vladimir Chebotarev](https://github.com/excitoon))
* `Method createColumn() is not implemented for data type Set` 문제를 수정했습니다. 이로써 [#7799](https://github.com/ClickHouse/ClickHouse/issues/7799) 문제가 해결됩니다. [#8674](https://github.com/ClickHouse/ClickHouse/pull/8674) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 뮤테이션이 더 자주 완료되도록 합니다. [#9427](https://github.com/ClickHouse/ClickHouse/pull/9427) ([alesapin](https://github.com/alesapin))
* `-1` 상수 관련 `intDiv` 수정 [#9351](https://github.com/ClickHouse/ClickHouse/pull/9351) ([hcz](https://github.com/hczhcz))
* `BlockIO`의 잠재적인 race condition을 수정했습니다. [#9356](https://github.com/ClickHouse/ClickHouse/pull/9356) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 잘못된 매개변수로 생성된 `Kafka` 테이블을 사용하거나 삭제하려고 할 때 서버가 종료되던 버그를 수정했습니다. [#9513](https://github.com/ClickHouse/ClickHouse/pull/9513) ([filimonov](https://github.com/filimonov))
* OS가 `timer_create` 함수에 대해 잘못된 결과를 반환할 때를 대비한 우회 방법을 추가했습니다. [#8837](https://github.com/ClickHouse/ClickHouse/pull/8837) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `min_marks_for_seek` 매개변수 사용과 관련된 오류를 수정했습니다. 분산 테이블에 세그먼트 분할 키가 없는 상태에서 사용되지 않는 세그먼트를 건너뛰려고 할 때 표시되는 오류 메시지를 수정했습니다. [#8908](https://github.com/ClickHouse/ClickHouse/pull/8908) ([Azat Khuzhin](https://github.com/azat))

<div id="improvement">
  #### 개선 사항
</div>

* `ReplicatedMergeTree*` 엔진 계열에서 `ALTER MODIFY/DROP` 쿼리를 뮤테이션을 기반으로 구현했습니다. 이제 `ALTERS`는 메타데이터 업데이트 단계에서만 블록되며, 그 이후에는 블록되지 않습니다. [#8701](https://github.com/ClickHouse/ClickHouse/pull/8701) ([alesapin](https://github.com/alesapin))
* `WHERE` 절에 수식되지 않은 이름이 포함된 경우 CROSS를 INNER JOIN으로 재작성하는 기능을 추가했습니다. [#9512](https://github.com/ClickHouse/ClickHouse/pull/9512) ([Artem Zuikov](https://github.com/4ertus2))
* `SHOW TABLES` 및 `SHOW DATABASES` 쿼리에서 `WHERE` 표현식과 `FROM`/`IN`을 지원하도록 개선했습니다 [#9076](https://github.com/ClickHouse/ClickHouse/pull/9076) ([sundyli](https://github.com/sundy-li))
* `deduplicate_blocks_in_dependent_materialized_views` 설정이 추가되었습니다. [#9070](https://github.com/ClickHouse/ClickHouse/pull/9070) ([urykhy](https://github.com/urykhy))
* 최근 변경 이후 MySQL client가 바이너리 문자열을 16진수로 출력하기 시작해 읽을 수 없게 되었습니다([#9032](https://github.com/ClickHouse/ClickHouse/issues/9032)). ClickHouse의 우회 방법은 문자열 컬럼을 UTF-8로 표시하는 것으로, 항상 그런 것은 아니지만 대부분의 경우에 해당합니다. [#9079](https://github.com/ClickHouse/ClickHouse/pull/9079) ([Yuriy Baranov](https://github.com/yurriy))
* `sumMap`에 String 및 FixedString 키에 대한 지원 추가 [#8903](https://github.com/ClickHouse/ClickHouse/pull/8903) ([Baudouin Giard](https://github.com/bgiard))
* SummingMergeTree 맵에서 문자열 키를 지원 [#8933](https://github.com/ClickHouse/ClickHouse/pull/8933) ([Baudouin Giard](https://github.com/bgiard))
* 스레드에서 예외가 발생했더라도 스레드 종료를 스레드 풀에 알리도록 개선 [#8736](https://github.com/ClickHouse/ClickHouse/pull/8736) ([Ding Xiang Fei](https://github.com/dingxiangfei2009))
* `clickhouse-benchmark`에서 `query_id`를 설정할 수 있게 함 [#9416](https://github.com/ClickHouse/ClickHouse/pull/9416) ([Anton Popov](https://github.com/CurtizJ))
* `ALTER TABLE ... PARTITION partition` 쿼리에서 비정상적인 표현식을 허용하지 않도록 했습니다. 이는 [#7192](https://github.com/ClickHouse/ClickHouse/issues/7192) [#8835](https://github.com/ClickHouse/ClickHouse/pull/8835)를 해결합니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 `system.table_engines` 테이블에서 기능 지원 정보(`supports_ttl`, `supports_sort_order` 등)를 제공합니다. [#8830](https://github.com/ClickHouse/ClickHouse/pull/8830) ([Max Akhmedov](https://github.com/zlobober))
* 기본적으로 `system.metric_log`를 활성화합니다. 이 테이블에는 "collect\_interval\_milliseconds" 인터벌(기본값 1초)로 수집된 ProfileEvents 및 CurrentMetrics 값이 담긴 행이 저장됩니다. 테이블 크기는 매우 작아(보통 수 MB 수준) 이 데이터를 기본적으로 수집하는 것이 타당합니다. [#9225](https://github.com/ClickHouse/ClickHouse/pull/9225) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 그룹의 모든 스레드에 대해 쿼리 프로파일러를 초기화하여, 예를 들어 삽입 쿼리를 전체적으로 프로파일링할 수 있게 했습니다. [#6964](https://github.com/ClickHouse/ClickHouse/issues/6964) [#8874](https://github.com/ClickHouse/ClickHouse/pull/8874) 수정 ([Ivan](https://github.com/abyss7))
* 이제 임시 `LIVE VIEW`는 `CREATE TEMPORARY LIVE VIEW ...` 대신 `CREATE LIVE VIEW name WITH TIMEOUT [42] ...`를 사용해 생성합니다. 기존 구문이 `CREATE TEMPORARY TABLE ...`과 일관되지 않았기 때문입니다 [#9131](https://github.com/ClickHouse/ClickHouse/pull/9131) ([tavplubix](https://github.com/tavplubix))
* `system.text_log` 테이블에 기록되는 항목을 제한하는 text\_log.level 구성 매개변수를 추가했습니다 [#8809](https://github.com/ClickHouse/ClickHouse/pull/8809) ([Azat Khuzhin](https://github.com/azat))
* TTL 규칙에 따라 다운로드한 part를 디스크/볼륨에 배치할 수 있도록 허용 [#8598](https://github.com/ClickHouse/ClickHouse/pull/8598) ([Vladimir Chebotarev](https://github.com/excitoon))
* 외부 MySQL 사전에서 MySQL 연결 풀을 공용으로 사용해 사전 간에 "공유"할 수 있도록 했습니다. 이 옵션은 MySQL 서버에 대한 연결 수를 크게 줄입니다. [#9409](https://github.com/ClickHouse/ClickHouse/pull/9409) ([Clément Rodriguez](https://github.com/clemrodriguez))
* `clickhouse-benchmark` 출력에서 보간된 값 대신 분위수에 가장 가까운 쿼리 실행 시간을 표시합니다. 일부 쿼리의 실제 실행 시간에 해당하는 값을 표시하는 편이 더 낫습니다. [#8712](https://github.com/ClickHouse/ClickHouse/pull/8712) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Kafka에 데이터를 삽입할 때 메시지에 key와 타임스탬프를 추가할 수 있게 되었습니다. [#7198](https://github.com/ClickHouse/ClickHouse/issues/7198) [#8969](https://github.com/ClickHouse/ClickHouse/pull/8969) 수정 ([filimonov](https://github.com/filimonov))
* 서버를 터미널에서 실행하는 경우, 스레드 번호, Query id 및 로그 우선순위를 색상으로 강조 표시합니다. 이는 개발자가 서로 연관된 로그 메시지를 더 쉽게 읽을 수 있도록 하기 위한 것입니다. [#8961](https://github.com/ClickHouse/ClickHouse/pull/8961) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `Ordinary` 데이터베이스의 테이블 로드 중 예외 메시지를 개선했습니다. [#9527](https://github.com/ClickHouse/ClickHouse/pull/9527) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 집계 함수 상태를 포함한 배열에 `arraySlice`를 구현했습니다. 이로써 [#9388](https://github.com/ClickHouse/ClickHouse/issues/9388) [#9391](https://github.com/ClickHouse/ClickHouse/pull/9391) 문제가 수정되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 상수 함수와 상수 배열을 IN 연산자의 오른쪽에 사용할 수 있도록 허용했습니다. [#8813](https://github.com/ClickHouse/ClickHouse/pull/8813) ([Anton Popov](https://github.com/CurtizJ))
* system.replicas의 데이터를 가져오는 중 ZooKeeper 예외가 발생하면, 이를 별도의 컬럼에 표시합니다. 이는 [#9137](https://github.com/ClickHouse/ClickHouse/issues/9137) [#9138](https://github.com/ClickHouse/ClickHouse/pull/9138)을 구현한 것입니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* 삭제할 때 MergeTree 데이터 파트를 원자적으로 제거합니다. [#8402](https://github.com/ClickHouse/ClickHouse/pull/8402) ([Vladimir Chebotarev](https://github.com/excitoon))
* 분산 테이블에 행 수준 보안을 지원합니다. [#8926](https://github.com/ClickHouse/ClickHouse/pull/8926) ([Ivan](https://github.com/abyss7))
* 이제 설정 값에서 KB, KiB 등의 접미사를 인식합니다. [#8072](https://github.com/ClickHouse/ClickHouse/pull/8072) ([Mikhail Korotov](https://github.com/millb))
* 대규모 JOIN 결과를 구성하는 동안 메모리 부족이 발생하는 문제를 방지했습니다. [#8637](https://github.com/ClickHouse/ClickHouse/pull/8637) ([Artem Zuikov](https://github.com/4ertus2))
* `clickhouse-client`의 대화형 모드에서 제안 목록에 클러스터 이름을 추가했습니다. [#8709](https://github.com/ClickHouse/ClickHouse/pull/8709) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 그룹의 모든 스레드에 대해 쿼리 프로파일러를 초기화해, 예를 들어 삽입 쿼리를 완전히 프로파일링할 수 있도록 했습니다 [#8820](https://github.com/ClickHouse/ClickHouse/pull/8820) ([Ivan](https://github.com/abyss7))
* `system.query_log` 테이블에 `exception_code` 컬럼이 추가되었습니다. [#8770](https://github.com/ClickHouse/ClickHouse/pull/8770) ([Mikhail Korotov](https://github.com/millb))
* 기본 서버 설정 파일에서 포트 `9004`의 MySQL 호환 서버를 활성화했습니다. 구성 예시의 비밀번호 생성 명령을 수정했습니다. [#8771](https://github.com/ClickHouse/ClickHouse/pull/8771) ([Yuriy Baranov](https://github.com/yurriy))
* 파일 시스템이 읽기 전용인 경우 종료 시 비정상 중단이 발생하지 않도록 했습니다. 이 변경으로 [#9094](https://github.com/ClickHouse/ClickHouse/issues/9094) [#9100](https://github.com/ClickHouse/ClickHouse/pull/9100)이 수정되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* HTTP POST 쿼리에서 길이 지정이 필요한 경우 Exception 메시지가 더 명확해졌습니다. [#9453](https://github.com/ClickHouse/ClickHouse/pull/9453) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `HDFS` 및 `File` 엔진과 `hdfs` 및 `file` 테이블 함수에 `_path` 및 `_file` 가상 컬럼 추가 [#8489](https://github.com/ClickHouse/ClickHouse/pull/8489) ([Olga Khvostikova](https://github.com/stavrolia))
* 뷰의 내부 테이블에 새 컬럼이 추가된 경우 `MATERIALIZED VIEW`에 삽입할 때 발생하던 `Cannot find column` 오류를 수정했습니다. [#8766](https://github.com/ClickHouse/ClickHouse/pull/8766) [#8788](https://github.com/ClickHouse/ClickHouse/pull/8788) ([vzakaznikov](https://github.com/vzakaznikov)) [#8788](https://github.com/ClickHouse/ClickHouse/issues/8788) [#8806](https://github.com/ClickHouse/ClickHouse/pull/8806) ([Nikolai Kochetov](https://github.com/KochetovNicolai)) [#8803](https://github.com/ClickHouse/ClickHouse/pull/8803) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 네이티브 클라이언트-서버 프로토콜의 Progress를 수정해, logs와 마찬가지로 최종 업데이트 후에도 Progress를 전송하도록 했습니다. 이는 네이티브 프로토콜을 사용하는 일부 서드파티 도구에만 해당될 수 있습니다. [#9495](https://github.com/ClickHouse/ClickHouse/pull/9495) ([Azat Khuzhin](https://github.com/azat))
* MySQL 프로토콜을 사용하는 클라이언트 연결 수를 추적하는 시스템 메트릭이 추가되었습니다([#9013](https://github.com/ClickHouse/ClickHouse/issues/9013)). [#9015](https://github.com/ClickHouse/ClickHouse/pull/9015) ([Eugene Klimov](https://github.com/Slach))
* 이제부터 HTTP 응답의 `X-ClickHouse-Timezone` header에는 `SELECT timezone()`이 반환하는 것과 동일한 시간대 값이 설정됩니다. [#9493](https://github.com/ClickHouse/ClickHouse/pull/9493) ([Denis Glazachev](https://github.com/traceon))

<div id="performance-improvement">
  #### 성능 개선
</div>

* IN을 사용하는 인덱스 분석의 성능을 개선했습니다. [#9261](https://github.com/ClickHouse/ClickHouse/pull/9261) ([Anton Popov](https://github.com/CurtizJ))
* Logical Functions의 코드를 더 단순하고 효율적으로 개선하고, 코드 정리도 수행했습니다. [#8718](https://github.com/ClickHouse/ClickHouse/issues/8718)의 후속 작업입니다. [#8728](https://github.com/ClickHouse/ClickHouse/pull/8728) ([Alexander Kazakov](https://github.com/Akazz))
* C++20 기능을 활용해 더 엄격한 aliasing을 보장함으로써 전반적인 성능을 개선했습니다(영향을 받는 쿼리에서 5%\~200% 범위). [#9304](https://github.com/ClickHouse/ClickHouse/pull/9304) ([Amos Bird](https://github.com/amosbird))
* 비교 함수의 내부 루프에 더 엄격한 aliasing을 적용했습니다. [#9327](https://github.com/ClickHouse/ClickHouse/pull/9327) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 산술 함수의 내부 루프에 더 엄격한 aliasing을 적용했습니다. [#9325](https://github.com/ClickHouse/ClickHouse/pull/9325) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `ColumnVector::replicate()`를 약 3배 더 빠르게 구현했습니다. 이를 통해 `ColumnConst::convertToFullColumn()`도 구현됩니다. 또한 상수를 구체화할 때 테스트에도 유용합니다. [#9293](https://github.com/ClickHouse/ClickHouse/pull/9293) ([Alexander Kazakov](https://github.com/Akazz))
* `ColumnVector::replicate()`에 대한 또 다른 소규모 성능 개선입니다(`materialize` 함수와 고차 함수의 속도를 높입니다). [#9293](https://github.com/ClickHouse/ClickHouse/issues/9293)의 추가 개선입니다. [#9442](https://github.com/ClickHouse/ClickHouse/pull/9442) ([Alexander Kazakov](https://github.com/Akazz))
* `stochasticLinearRegression` 집계 함수의 성능을 개선했습니다. 이 패치는 Intel이 기여했습니다. [#8652](https://github.com/ClickHouse/ClickHouse/pull/8652) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `reinterpretAsFixedString` 함수의 성능을 개선했습니다. [#9342](https://github.com/ClickHouse/ClickHouse/pull/9342) ([alexey-milovidov](https://github.com/alexey-milovidov))
* processors 파이프라인에서 `Null` 포맷의 경우 클라이언트에 block을 전송하지 않도록 했습니다. [#8797](https://github.com/ClickHouse/ClickHouse/pull/8797) ([Nikolai Kochetov](https://github.com/KochetovNicolai)) [#8767](https://github.com/ClickHouse/ClickHouse/pull/8767) ([Alexander Kuzmenkov](https://github.com/akuzm))

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* Windows Subsystem for Linux에서 예외 처리가 이제 정상적으로 작동합니다. [https://github.com/ClickHouse-Extras/libunwind/pull/3](https://github.com/ClickHouse-Extras/libunwind/pull/3) 을 참조하십시오. 이 수정으로 [#6480](https://github.com/ClickHouse/ClickHouse/issues/6480) [#9564](https://github.com/ClickHouse/ClickHouse/pull/9564)가 해결되었습니다. ([sobolevsv](https://github.com/sobolevsv))
* `clickhouse-client`의 대화형 줄 편집을 위해 `readline`을 `replxx`로 대체했습니다 [#8416](https://github.com/ClickHouse/ClickHouse/pull/8416) ([Ivan](https://github.com/abyss7))
* 빌드 시간이 단축되고 FunctionsComparison에서 템플릿 인스턴스화가 줄어들었습니다. [#9324](https://github.com/ClickHouse/ClickHouse/pull/9324) ([alexey-milovidov](https://github.com/alexey-milovidov))
* CI에 `clang-tidy` 통합 기능을 추가했습니다. 관련 항목: [#6044](https://github.com/ClickHouse/ClickHouse/issues/6044) [#9566](https://github.com/ClickHouse/ClickHouse/pull/9566) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 CI에서는 `gcc`를 사용할 때도 `lld`로 ClickHouse를 링크합니다. [#9049](https://github.com/ClickHouse/ClickHouse/pull/9049) ([alesapin](https://github.com/alesapin))
* `THREAD_FUZZER_*` 환경 변수가 설정되면 스레드 스케줄링을 무작위화하고 오류를 주입할 수 있도록 했습니다. 이는 테스트에 도움이 됩니다. [#9459](https://github.com/ClickHouse/ClickHouse/pull/9459) ([alexey-milovidov](https://github.com/alexey-milovidov))
* stateless tests에서 보안 소켓을 활성화 [#9288](https://github.com/ClickHouse/ClickHouse/pull/9288) ([tavplubix](https://github.com/tavplubix))
* SPLIT\_SHARED\_LIBRARIES=OFF의 안정성 강화 [#9156](https://github.com/ClickHouse/ClickHouse/pull/9156) ([Azat Khuzhin](https://github.com/azat))
* 무작위 서버 멈춤 현상에도 "performance\_introspection\_and\_logging" 테스트가 안정적으로 동작하도록 개선했습니다. 이는 CI 환경에서 발생할 수 있습니다. 관련 항목 [#9515](https://github.com/ClickHouse/ClickHouse/issues/9515) [#9528](https://github.com/ClickHouse/ClickHouse/pull/9528) ([alexey-milovidov](https://github.com/alexey-milovidov))
* style check에서 XML 유효성을 검사합니다. [#9550](https://github.com/ClickHouse/ClickHouse/pull/9550) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 테스트 `00738_lock_for_inner_table`의 경쟁 상태를 수정했습니다. 이 테스트는 sleep에 의존하고 있었습니다. [#9555](https://github.com/ClickHouse/ClickHouse/pull/9555) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `once` 유형의 성능 테스트를 제거했습니다. 이는 모든 성능 테스트를 통계 비교 모드(더 신뢰할 수 있음)로 실행하는 데 필요합니다. [#9557](https://github.com/ClickHouse/ClickHouse/pull/9557) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 산술 함수의 성능 테스트를 추가했습니다. [#9326](https://github.com/ClickHouse/ClickHouse/pull/9326) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `sumMap` 및 `sumMapWithOverflow` 집계 함수의 성능 테스트를 추가했습니다. [#8933](https://github.com/ClickHouse/ClickHouse/issues/8933)의 후속 작업입니다. [#8947](https://github.com/ClickHouse/ClickHouse/pull/8947) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Style check를 통해 ErrorCodes의 스타일을 검사하도록 했습니다. [#9370](https://github.com/ClickHouse/ClickHouse/pull/9370) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 테스트 이력용 스크립트를 추가했습니다. [#8796](https://github.com/ClickHouse/ClickHouse/pull/8796) ([alesapin](https://github.com/alesapin))
* `override` 키워드를 사용해야 하는 모든 위치를 찾아 수정할 수 있도록 GCC 경고 `-Wsuggest-override`를 추가했습니다. [#8760](https://github.com/ClickHouse/ClickHouse/pull/8760) ([kreuzerkrieg](https://github.com/kreuzerkrieg))
* 반드시 정의되어 있어야 하므로 Mac OS X에서는 weak symbol을 무시합니다 [#9538](https://github.com/ClickHouse/ClickHouse/pull/9538) ([Deleted user](https://github.com/ghost))
* 성능 테스트에서 일부 쿼리의 실행 시간을 표준화했습니다. 이는 모든 성능 테스트를 비교 모드로 실행하기 위한 준비 작업입니다. [#9565](https://github.com/ClickHouse/ClickHouse/pull/9565) ([alexey-milovidov](https://github.com/alexey-milovidov))
* pytest를 사용하는 쿼리 테스트를 지원하도록 일부 테스트 수정 [#9062](https://github.com/ClickHouse/ClickHouse/pull/9062) ([Ivan](https://github.com/abyss7))
* MSan을 사용하는 빌드에서 SSL을 활성화해 stateless tests 실행 시 server가 시작 시 실패하지 않도록 했습니다 [#9531](https://github.com/ClickHouse/ClickHouse/pull/9531) ([tavplubix](https://github.com/tavplubix))
* 테스트 결과의 데이터베이스 치환 문제 수정 [#9384](https://github.com/ClickHouse/ClickHouse/pull/9384) ([Ilya Yatsishin](https://github.com/qoega))
* 여러 플랫폼의 빌드 문제 수정 [#9381](https://github.com/ClickHouse/ClickHouse/pull/9381) ([proller](https://github.com/proller)) [#8755](https://github.com/ClickHouse/ClickHouse/pull/8755) ([proller](https://github.com/proller)) [#8631](https://github.com/ClickHouse/ClickHouse/pull/8631) ([proller](https://github.com/proller))
* stateless-with-coverage 테스트 Docker image에 disks 섹션을 추가 [#9213](https://github.com/ClickHouse/ClickHouse/pull/9213) ([Pavel Kovalenko](https://github.com/Jokser))
* GRPC로 빌드할 때 소스 트리 내 파일 제거 [#9588](https://github.com/ClickHouse/ClickHouse/pull/9588) ([Amos Bird](https://github.com/amosbird))
* Context에서 SessionCleaner를 제거해 빌드 시간을 약간 단축했습니다. SessionCleaner 코드를 더 단순하게 정리했습니다. [#9232](https://github.com/ClickHouse/ClickHouse/pull/9232) ([alexey-milovidov](https://github.com/alexey-milovidov))
* clickhouse-test 스크립트에서 응답이 없는 쿼리를 확인하는 로직을 업데이트했습니다 [#8858](https://github.com/ClickHouse/ClickHouse/pull/8858) ([Alexander Kazakov](https://github.com/Akazz))
* 리포지토리에서 불필요한 파일 일부를 제거했습니다. [#8843](https://github.com/ClickHouse/ClickHouse/pull/8843) ([alexey-milovidov](https://github.com/alexey-milovidov))
* math perftests의 타입을 `once`에서 `loop`로 변경했습니다. [#8783](https://github.com/ClickHouse/ClickHouse/pull/8783) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 코드베이스의 대화형 코드 브라우저 HTML 보고서를 생성할 수 있는 Docker image를 추가했습니다. [#8781](https://github.com/ClickHouse/ClickHouse/pull/8781) ([alesapin](https://github.com/alesapin)) [Woboq Code Browser](https://clickhouse-test-reports.s3.yandex.net/codebrowser/ClickHouse/dbms/index.html)를 참조하십시오.
* MSan 환경에서 일부 테스트 실패를 억제합니다. [#8780](https://github.com/ClickHouse/ClickHouse/pull/8780) ([Alexander Kuzmenkov](https://github.com/akuzm))
* "삽입 중 예외" 테스트를 더 빠르게 했습니다. 이 테스트는 debug-with-coverage 빌드에서 자주 시간 초과됩니다. [#8711](https://github.com/ClickHouse/ClickHouse/pull/8711) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `libcxx` 및 `libcxxabi`를 master로 업데이트했습니다. [#9304](https://github.com/ClickHouse/ClickHouse/issues/9304) [#9308](https://github.com/ClickHouse/ClickHouse/pull/9308)를 대비한 변경입니다. ([alexey-milovidov](https://github.com/alexey-milovidov))
* 간헐적으로 실패하는 테스트 `00910_zookeeper_test_alter_compression_codecs`를 수정했습니다. [#9525](https://github.com/ClickHouse/ClickHouse/pull/9525) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 중복된 링커 플래그를 정리했습니다. 링커가 예기치 않은 심볼을 조회하지 않도록 했습니다. [#9433](https://github.com/ClickHouse/ClickHouse/pull/9433) ([Amos Bird](https://github.com/amosbird))
* 테스트 이미지에 `clickhouse-odbc` 드라이버를 추가했습니다. 이를 통해 자체 ODBC 드라이버를 사용해 ClickHouse와 ClickHouse 간 상호작용을 테스트할 수 있습니다. [#9348](https://github.com/ClickHouse/ClickHouse/pull/9348) ([filimonov](https://github.com/filimonov))
* 단위 테스트의 몇 가지 버그를 수정했습니다. [#9047](https://github.com/ClickHouse/ClickHouse/pull/9047) ([alesapin](https://github.com/alesapin))
* 존재하지 않는 include를 모두 제거하기 위해 `-Wmissing-include-dirs` GCC 경고를 활성화했습니다 - 대부분 CMake 스크립팅 오류로 인한 것입니다 [#8704](https://github.com/ClickHouse/ClickHouse/pull/8704) ([kreuzerkrieg](https://github.com/kreuzerkrieg))
* 쿼리 프로파일러가 작동하지 않을 수 있는 이유를 설명합니다. 이는 [#9049](https://github.com/ClickHouse/ClickHouse/issues/9049) [#9144](https://github.com/ClickHouse/ClickHouse/pull/9144) 관련입니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* OpenSSL을 upstream master로 업데이트했습니다. `OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error` 및 `SSL Exception: error:2400006E:random number generator::error retrieving entropy` 메시지와 함께 TLS 연결이 실패할 수 있는 문제를 수정했습니다. 이 문제는 버전 20.1에 있었습니다. [#8956](https://github.com/ClickHouse/ClickHouse/pull/8956) ([alexey-milovidov](https://github.com/alexey-milovidov))
* server용 Dockerfile 업데이트 [#8893](https://github.com/ClickHouse/ClickHouse/pull/8893) ([Ilya Mazaev](https://github.com/ne-ray))
* build-gcc-from-sources 스크립트의 사소한 수정 [#8774](https://github.com/ClickHouse/ClickHouse/pull/8774) ([Michael Nacharov](https://github.com/mnach))
* perftests에서 `number` 컬럼을 사용하지 않는 경우 `numbers`를 `zeros`로 대체했습니다. 이렇게 하면 테스트 결과가 더 깔끔해집니다. [#9600](https://github.com/ClickHouse/ClickHouse/pull/9600) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* Column 생성자에서 initializer\_list 사용 시 발생하는 스택 오버플로우 문제를 수정했습니다. [#9367](https://github.com/ClickHouse/ClickHouse/pull/9367) ([삭제된 사용자](https://github.com/ghost))
* librdkafka를 v1.3.0으로 업그레이드했습니다. Mac OS X에서 번들로 포함된 `rdkafka` 및 `gsasl` 라이브러리를 활성화했습니다. [#9000](https://github.com/ClickHouse/ClickHouse/pull/9000) ([Andrew Onyshchuk](https://github.com/oandrew))
* GCC 9.2.0에서 build 문제 수정 [#9306](https://github.com/ClickHouse/ClickHouse/pull/9306) ([vxider](https://github.com/Vxider))

<div id="clickhouse-release-v201">
  ## ClickHouse 릴리스 v20.1
</div>

<div id="clickhouse-release-v20116120-stable-2020-60-26">
  ### ClickHouse 릴리스 v20.1.16.120-안정 2020-60-26
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* prewhere 조건에서 `Nullable` 컬럼을 사용할 때 드물게 발생하던 충돌을 수정했습니다. [#11608](https://github.com/ClickHouse/ClickHouse/issues/11608)의 후속 작업입니다. [#11869](https://github.com/ClickHouse/ClickHouse/pull/11869) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 고차 함수 내부에서는 arrayJoin을 사용할 수 없도록 했습니다. 이 문제로 프로토콜 동기화가 깨질 수 있었습니다. 이 변경으로 [#3933](https://github.com/ClickHouse/ClickHouse/issues/3933)가 해결됩니다. [#11846](https://github.com/ClickHouse/ClickHouse/pull/11846) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `SELECT *, xyz.*`와 같은 쿼리는 오류가 발생해야 하지만 성공하던 예기치 않은 동작을 수정했습니다. [#11753](https://github.com/ClickHouse/ClickHouse/pull/11753) ([hexiaoting](https://github.com/hexiaoting)).
* Values 입력 형식에서 복잡한 리터럴의 타입 추론이 잘못되어 발생하던 LOGICAL\_ERROR를 수정했습니다. [#11732](https://github.com/ClickHouse/ClickHouse/pull/11732) ([tavplubix](https://github.com/tavplubix)).
* 상수 컬럼에 대한 `ORDER BY ... WITH FILL` 문제를 수정했습니다. [#11697](https://github.com/ClickHouse/ClickHouse/pull/11697) ([Anton Popov](https://github.com/CurtizJ)).
* XDBC bridge와 통신할 때 올바른 timeout이 전달되도록 했습니다. 최근에는 bridge의 상태를 확인하거나 메타 정보를 받을 때 timeout이 적용되지 않았습니다. [#11690](https://github.com/ClickHouse/ClickHouse/pull/11690) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 대소문자를 구분하지 않는 플래그가 있는 정규식을 지원하도록 추가했습니다. 이 변경으로 [#11101](https://github.com/ClickHouse/ClickHouse/issues/11101) 및 [#11506](https://github.com/ClickHouse/ClickHouse/issues/11506)이 수정됩니다. [#11649](https://github.com/ClickHouse/ClickHouse/pull/11649) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* String용 블룸 필터(data skipping indices)를 수정했습니다. [#11638](https://github.com/ClickHouse/ClickHouse/pull/11638) ([Azat Khuzhin](https://github.com/azat)).
* prewhere 조건에서 `Nullable` 컬럼을 사용할 때 드물게 발생하던 충돌을 수정했습니다. ([#11572](https://github.com/ClickHouse/ClickHouse/issues/11572)와도 어느 정도 관련이 있는 것으로 보입니다). [#11608](https://github.com/ClickHouse/ClickHouse/pull/11608) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* exception.code() % 256 = 0일 때 clickhouse-client의 종료 코드가 잘못되던 문제를 수정했습니다. [#11601](https://github.com/ClickHouse/ClickHouse/pull/11601) ([filimonov](https://github.com/filimonov)).
* server 시작 시 "Mark cache size was lowered" 로그 메시지에 있던 사소한 오류를 수정했습니다. 이 변경으로 [#11399](https://github.com/ClickHouse/ClickHouse/issues/11399)가 해결됩니다. [#11589](https://github.com/ClickHouse/ClickHouse/pull/11589) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 이제 clickhouse-server docker container는 server 상태를 확인할 때 IPv6를 우선 사용합니다. [#11550](https://github.com/ClickHouse/ClickHouse/pull/11550) ([Ivan Starkov](https://github.com/istarkov)).
* -State 함수로 집계하는 도중 예외가 발생할 때 생기던 메모리 누수를 수정했습니다. 이 변경으로 [#8995](https://github.com/ClickHouse/ClickHouse/issues/8995)가 수정됩니다. [#11496](https://github.com/ClickHouse/ClickHouse/pull/11496) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 'FINAL' 수정자와 'ORDER BY' 최적화에서 함수로 감싼 프라이머리 키를 사용할 때의 문제를 수정했습니다. [#10715](https://github.com/ClickHouse/ClickHouse/pull/10715) ([Anton Popov](https://github.com/CurtizJ)).

<div id="clickhouse-release-v20115109-stable-2020-06-19">
  ### ClickHouse 릴리스 v20.1.15.109-안정 2020-06-19
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* alter 수행 중 structure에 걸리는 과도한 잠금을 수정했습니다. [#11790](https://github.com/ClickHouse/ClickHouse/pull/11790) ([alesapin](https://github.com/alesapin)).

<div id="clickhouse-release-v20114107-stable-2020-06-11">
  ### ClickHouse 릴리스 v20.1.14.107-안정 2020-06-11
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `PREWHERE column in (subquery)` 및 `ARRAY JOIN`이 포함된 쿼리에서 발생하던 `Size of offsets does not match size of column` 오류를 수정했습니다. [#11580](https://github.com/ClickHouse/ClickHouse/pull/11580) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).

<div id="clickhouse-release-v20113105-stable-2020-06-10">
  ### ClickHouse 릴리스 v20.1.13.105-안정 2020-06-10
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `min_bytes_to_use_direct_io`가 활성화된 상태에서 PREWHERE가 활성화되어 있고 SAMPLE을 사용하거나 스레드 수가 많은 경우 발생할 수 있는 `Data compressed with different methods` 오류를 수정했습니다. 이 수정은 [#11539](https://github.com/ClickHouse/ClickHouse/issues/11539)을 해결합니다. [#11540](https://github.com/ClickHouse/ClickHouse/pull/11540) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 코덱의 압축된 크기가 반환되도록 수정했습니다. [#11448](https://github.com/ClickHouse/ClickHouse/pull/11448) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 컬럼에 리터럴이 아닌 인수를 사용하는 압축 코덱이 있을 때 발생하던 server 충돌을 수정했습니다. [#11365](https://github.com/ClickHouse/ClickHouse/issues/11365)를 수정했습니다. [#11431](https://github.com/ClickHouse/ClickHouse/pull/11431) ([alesapin](https://github.com/alesapin)).
* 점을 nan으로 사용할 때의 pointInPolygon 문제를 수정했습니다. [#11375](https://github.com/ClickHouse/ClickHouse/issues/11375)를 해결했습니다. [#11421](https://github.com/ClickHouse/ClickHouse/pull/11421) ([Alexey Ilyukhov](https://github.com/livace)).
* 위도/경도 범위를 벗어나는 인수를 사용할 때 발생하던 geohashesInBox 문제를 수정했습니다. [#11403](https://github.com/ClickHouse/ClickHouse/pull/11403) ([Vasily Nemkov](https://github.com/Enmk)).
* 외부 정렬 및 limit가 있는 쿼리에서 발생할 수 있는 `Pipeline stuck` 오류를 수정했습니다. [#11359](https://github.com/ClickHouse/ClickHouse/issues/11359). [#11366](https://github.com/ClickHouse/ClickHouse/pull/11366) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `quantilesExactWeightedArray`에서 발생하던 크래시를 수정했습니다. [#11337](https://github.com/ClickHouse/ClickHouse/pull/11337) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 설정 `parallel_view_processing = 1`에서 `MATERIALIZED VIEW`에 대한 쓰기가 다시 병렬로 수행되도록 했습니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#11330](https://github.com/ClickHouse/ClickHouse/pull/11330) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 추출된 JSON에 짝이 맞지 않는 \{ 또는 \[가 들어 있는 문자열이 있을 때 발생하던 visitParamExtractRaw 문제를 수정했습니다. [#11318](https://github.com/ClickHouse/ClickHouse/pull/11318) ([Ewout](https://github.com/devwout)).
* ThreadPool에서 매우 드물게 발생하는 경쟁 상태를 수정했습니다. [#11314](https://github.com/ClickHouse/ClickHouse/pull/11314) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 변환 과정에서 발생할 수 있는 초기화되지 않은 메모리 문제를 수정했습니다. 예시: `SELECT toIntervalSecond(now64())`. [#11311](https://github.com/ClickHouse/ClickHouse/pull/11311) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 테이블의 프라이머리 키에 배열 컬럼이 포함되어 있고, 쿼리에서 `empty` 또는 `notEmpty` 함수로 이 컬럼을 필터링할 때 인덱스 분석이 작동하지 않는 문제를 수정했습니다. 이로써 [#11286](https://github.com/ClickHouse/ClickHouse/issues/11286)가 해결되었습니다. [#11303](https://github.com/ClickHouse/ClickHouse/pull/11303) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `max_network_bandwidth`, `max_execution_speed` 또는 `priority` 설정으로 인해 쿼리 속도가 제한되는 경우, 쿼리 속도 추정이 부정확해지고 `min_execution_speed` 제한이 적용되지 않거나 잘못 적용될 수 있던 버그를 수정했습니다. 또한 `timeout_before_checking_execution_speed`의 기본값을 0이 아닌 값으로 변경했습니다. 그렇지 않으면 `min_execution_speed` 및 `max_execution_speed` 설정이 아무런 효과가 없기 때문입니다. 이 수정은 [#11297](https://github.com/ClickHouse/ClickHouse/issues/11297)를 해결합니다. 이 수정은 [#5732](https://github.com/ClickHouse/ClickHouse/issues/5732)를 해결합니다. 이 수정은 [#6228](https://github.com/ClickHouse/ClickHouse/issues/6228)를 해결합니다. 사용성 개선: `clickhouse-client`에서 예외 메시지가 진행률 표시줄과 이어 붙여지지 않도록 했습니다. [#11296](https://github.com/ClickHouse/ClickHouse/pull/11296) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* Protobuf 형식의 잘못된 데이터를 읽을 때 발생하던 충돌을 수정했습니다. 이로써 [#5957](https://github.com/ClickHouse/ClickHouse/issues/5957) 및 [#11203](https://github.com/ClickHouse/ClickHouse/issues/11203)이 해결됩니다. [#11258](https://github.com/ClickHouse/ClickHouse/pull/11258) ([Vitaly Baranov](https://github.com/vitlibar)).
* `Array(Array(LowCardinality))`를 캡처된 인수로 사용하는 고차 함수에서 발생할 수 있는 `Cannot capture column` 오류를 수정했습니다. [#11185](https://github.com/ClickHouse/ClickHouse/pull/11185) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 데이터 스키핑 인덱스가 백그라운드 머지 중 변경되는 컬럼에 의존하는 경우(SummingMergeTree, AggregatingMergeTree, TTL GROUP BY) 잘못 계산되는 문제가 있었습니다. 이 문제는 인덱스 계산 시점을 머지 이후로 옮겨 머지된 데이터를 기준으로 인덱스를 계산하도록 수정해 해결했습니다. [#11162](https://github.com/ClickHouse/ClickHouse/pull/11162) ([Azat Khuzhin](https://github.com/azat)).
* 아무것도 마무리되지 않은 경우 mutation 최종화 작업에서 로깅을 제거합니다. [#11109](https://github.com/ClickHouse/ClickHouse/pull/11109) ([alesapin](https://github.com/alesapin)).
* parseDateTime64BestEffort의 인수 처리 버그를 수정했습니다. [#10925](https://github.com/ClickHouse/ClickHouse/issues/10925). [#11038](https://github.com/ClickHouse/ClickHouse/pull/11038) ([Vasily Nemkov](https://github.com/Enmk)).
* 메서드 getRawData()에서 원시 데이터 크기가 잘못 계산되던 문제를 수정했습니다. [#10964](https://github.com/ClickHouse/ClickHouse/pull/10964) ([Igr](https://github.com/ObjatieGroba)).
* 분산 테이블의 튜플에 대한 이전 버전과의 호환성 문제를 수정했습니다. [#10889](https://github.com/ClickHouse/ClickHouse/pull/10889) ([Anton Popov](https://github.com/CurtizJ)).
* StringHashTable에서 SIGSEGV를 수정했습니다(해당 키가 없을 경우). [#10870](https://github.com/ClickHouse/ClickHouse/pull/10870) ([Azat Khuzhin](https://github.com/azat)).
* 비활성 상태가 된 레플리카를 기다리느라 `OPTIMIZE` 쿼리의 일부 `ALTER`가 멈출 수 있던 `ReplicatedMergeTree` 버그를 수정했습니다. [#10849](https://github.com/ClickHouse/ClickHouse/pull/10849) ([tavplubix](https://github.com/tavplubix)).
* Block::sortColumns() 이후 컬럼 순서를 수정하고, 실제 사용 사례인 Buffer 엔진에 영향을 준다는 점을 보여주는 테스트도 추가합니다. [#10826](https://github.com/ClickHouse/ClickHouse/pull/10826) ([Azat Khuzhin](https://github.com/azat)).
* 식별자를 따옴표로 감싸지 않도록 요청한 경우 발생하던 ODBC bridge 문제를 수정했습니다. 이로써 [#7984](https://github.com/ClickHouse/ClickHouse/issues/7984)가 해결됩니다. [#10821](https://github.com/ClickHouse/ClickHouse/pull/10821) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* DateLUT에서 발생한 UBSan 및 MSan 리포트를 수정했습니다. [#10798](https://github.com/ClickHouse/ClickHouse/pull/10798) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* * 키 조건에서 올바른 유형 변환을 위해 `src_type`을 사용하도록 수정했습니다. [#6287](https://github.com/ClickHouse/ClickHouse/issues/6287)을 수정했습니다. [#10791](https://github.com/ClickHouse/ClickHouse/pull/10791) ([Andrew Onyshchuk](https://github.com/oandrew)).
* `parallel_view_processing` 동작을 수정했습니다. 이제 예외가 발생하더라도 `MATERIALIZED VIEW`에 대한 모든 삽입이 예외 없이 완료됩니다. [#10241](https://github.com/ClickHouse/ClickHouse/issues/10241)을 수정했습니다. [#10757](https://github.com/ClickHouse/ClickHouse/pull/10757) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* combinator -OrNull 및 -OrDefault를 -State와 함께 사용할 때 발생하던 문제를 수정했습니다. [#10741](https://github.com/ClickHouse/ClickHouse/pull/10741) ([hcz](https://github.com/hczhcz)).
* 합계가 사라지는 문제를 수정했습니다. 쿼리에 외부 WHERE 조건이 있는 join 또는 서브쿼리가 포함된 경우 합계가 필터링될 수 있었습니다. [#10674](https://github.com/ClickHouse/ClickHouse/issues/10674)를 해결했습니다. [#10698](https://github.com/ClickHouse/ClickHouse/pull/10698) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 하나의 쿼리에서 같은 집합에 `IN`을 여러 번 사용하는 문제를 수정했습니다. [#10686](https://github.com/ClickHouse/ClickHouse/pull/10686) ([Anton Popov](https://github.com/CurtizJ)).
* AggregateTransform 생성자의 매개변수 순서를 바로잡았습니다. [#10667](https://github.com/ClickHouse/ClickHouse/pull/10667) ([palasonic1](https://github.com/palasonic1)).
* `distributed_aggregation_memory_efficient`가 활성화된 경우 원격 쿼리가 병렬로 실행되지 않던 문제를 수정했습니다. [#10655](https://github.com/ClickHouse/ClickHouse/issues/10655)를 해결했습니다. [#10664](https://github.com/ClickHouse/ClickHouse/pull/10664) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `HAVING` 절이 있는 쿼리(즉, initiator 서버에서 필터링이 필요한 경우)에 대해 분산 쿼리의 프레디케이트 최적화(`enable_optimize_predicate_expression=1`)를 수정해 표현식의 순서를 유지하도록 했으며, 이것만으로도 문제가 해결됩니다. 또한 집계기가 인덱스 대신 컬럼 이름을 사용하도록 강제했습니다. 수정: [#10613](https://github.com/ClickHouse/ClickHouse/issues/10613), [#11413](https://github.com/ClickHouse/ClickHouse/issues/11413). [#10621](https://github.com/ClickHouse/ClickHouse/pull/10621) ([Azat Khuzhin](https://github.com/azat)).
* 오류 `the BloomFilter false positive must be a double number between 0 and 1`를 수정했습니다. [#10551](https://github.com/ClickHouse/ClickHouse/issues/10551). [#10569](https://github.com/ClickHouse/ClickHouse/pull/10569) ([Winter Zhang](https://github.com/zhang2014)).
* 컬럼 유형과 다른 기본 표현식 유형을 갖는 컬럼 ALIAS에 대한 SELECT를 수정했습니다. [#10563](https://github.com/ClickHouse/ClickHouse/pull/10563) ([Azat Khuzhin](https://github.com/azat)).
* * DateTime과 마찬가지로 DateTime64와 String 값 간 비교를 구현했습니다. [#10560](https://github.com/ClickHouse/ClickHouse/pull/10560) ([Vasily Nemkov](https://github.com/Enmk)).

<div id="clickhouse-release-v2011286-2020-05-26">
  ### ClickHouse 릴리스 v20.1.12.86, 2020-05-26
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 20.1과 그 이전 버전 간의 2단계 집계(two-level aggregation) 비호환성을 수정했습니다. 이 비호환성은 initiator 노드와 원격 노드에서 서로 다른 버전의 ClickHouse를 사용하고, GROUP BY 결과 크기가 크며, 단일 `String` 필드에 대해 집계가 수행될 때 발생합니다. 그 결과, 결과에 단일 키에 대한 머지되지 않은 여러 행이 생성됩니다. [#10952](https://github.com/ClickHouse/ClickHouse/pull/10952) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 머지 후 발생할 수 있었던 `SummingMergeTree`의 `LowCardinality(FixedString)` 키 컬럼 데이터 손상을 수정했습니다. [#10489](https://github.com/ClickHouse/ClickHouse/issues/10489)를 해결합니다. [#10721](https://github.com/ClickHouse/ClickHouse/pull/10721) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `readonly=2` 및 `cancel_http_readonly_queries_on_client_close=1`일 때 클라이언트 연결 종료 시 http 요청이 멈추는 버그를 수정했습니다. [#7939](https://github.com/ClickHouse/ClickHouse/issues/7939), [#7019](https://github.com/ClickHouse/ClickHouse/issues/7019), [#7736](https://github.com/ClickHouse/ClickHouse/issues/7736), [#7091](https://github.com/ClickHouse/ClickHouse/issues/7091)를 해결합니다. [#10684](https://github.com/ClickHouse/ClickHouse/pull/10684) ([tavplubix](https://github.com/tavplubix)).
* `SYSTEM DROP DNS CACHE` 쿼리를 실행할 때, 일부 IP 주소에서 사용자 연결이 허용되는지 확인하는 데 사용되는 캐시까지 함께 삭제되던 버그를 수정했습니다. [#10608](https://github.com/ClickHouse/ClickHouse/pull/10608) ([tavplubix](https://github.com/tavplubix)).
* 종속 테이블이 포함된 경우 `MATERIALIZED VIEW`의 내부 쿼리에서 잘못된 스칼라 결과가 반환되던 문제를 수정했습니다. [#10603](https://github.com/ClickHouse/ClickHouse/pull/10603) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* mutation이 모든 파트 처리를 완료했지만 `is_done=0` 상태에 멈춰 있던 문제를 수정했습니다. [#10526](https://github.com/ClickHouse/ClickHouse/pull/10526) ([alesapin](https://github.com/alesapin)).
* UTC 대비 분수 단위 오프셋을 사용하는 시간대에서 Unix epoch 시작 시 발생하던 오버플로우를 수정했습니다. 이로써 [#9335](https://github.com/ClickHouse/ClickHouse/issues/9335)가 해결되었습니다. [#10513](https://github.com/ClickHouse/ClickHouse/pull/10513) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 분산 스토리지의 비정상 종료 문제를 수정했습니다. [#10491](https://github.com/ClickHouse/ClickHouse/pull/10491) ([Azat Khuzhin](https://github.com/azat)).
* 큰 정수에서 `simpleLinearRegression`에 발생하던 숫자 오버플로우를 수정했습니다. [#10474](https://github.com/ClickHouse/ClickHouse/pull/10474) ([hcz](https://github.com/hczhcz)).
* ATTACH 데이터베이스 실패 시 메타데이터 디렉터리가 삭제되던 문제를 수정했습니다. [#10442](https://github.com/ClickHouse/ClickHouse/pull/10442) ([Winter Zhang](https://github.com/zhang2014)).
* `BloomFilter` 인덱스를 생성할 때 인수의 개수와 유형을 검사하는 기능을 추가했습니다 [#9623](https://github.com/ClickHouse/ClickHouse/issues/9623). [#10431](https://github.com/ClickHouse/ClickHouse/pull/10431) ([Winter Zhang](https://github.com/zhang2014)).
* `ARRAY JOIN`, `ORDER BY`, `LIMIT`가 포함된 쿼리에서 불완전한 결과가 반환될 수 있던 문제를 수정했습니다. 이 변경으로 [#10226](https://github.com/ClickHouse/ClickHouse/issues/10226)이 해결되었습니다. [#10427](https://github.com/ClickHouse/ClickHouse/pull/10427) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `skip_unavailable_shards`보다 `fallback_to_stale_replicas`를 선호합니다. [#10422](https://github.com/ClickHouse/ClickHouse/pull/10422) ([Azat Khuzhin](https://github.com/azat)).
* `Array(Tuple(...))` 데이터 타입의 잘못된 평탄화를 수정했습니다. 이로써 [#10259](https://github.com/ClickHouse/ClickHouse/issues/10259)가 해결되었습니다. [#10390](https://github.com/ClickHouse/ClickHouse/pull/10390) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* 버퍼에서 `HashMap`을 읽으려 할 때 컴파일 오류를 발생시키던 `HashTable`의 잘못된 동작을 수정했습니다. [#10386](https://github.com/ClickHouse/ClickHouse/pull/10386) ([palasonic1](https://github.com/palasonic1)).
* 원격 쿼리에서 발생할 수 있던 `ConcatProcessor`의 `Pipeline stuck` 오류를 수정했습니다. [#10381](https://github.com/ClickHouse/ClickHouse/pull/10381) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `max_rows_to_group_by` 및 `group_by_overflow_mode = 'break'` 사용 시 발생하던 `Pipeline stuck` 오류를 수정했습니다. [#10279](https://github.com/ClickHouse/ClickHouse/pull/10279) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 일부 데이터가 quorum으로 삽입된 뒤 어떤 방식으로든 삭제되면(DROP PARTITION, TTL) INSERT가 멈추거나 SELECT에서 false positive 예외가 발생하던 여러 버그를 수정했습니다. 이 수정으로 [#9946](https://github.com/ClickHouse/ClickHouse/issues/9946)가 해결됩니다. [#10188](https://github.com/ClickHouse/ClickHouse/pull/10188) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov)).
* 원격 서버에서는 18.12.17 이전 버전을 사용하고 요청을 시작한 서버에서는 더 최신 버전을 사용하는 환경에서, `GROUP BY`가 고정 키와 비고정 키를 모두 포함하며 2단계 `GROUP BY` 방식이 활성화된 경우 발생하던 비호환성을 수정했습니다. [#3254](https://github.com/ClickHouse/ClickHouse/pull/3254) ([alexey-milovidov](https://github.com/alexey-milovidov)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* clickhouse-server Docker 이미지에 CA 인증서를 추가했습니다. [#10476](https://github.com/ClickHouse/ClickHouse/pull/10476) ([filimonov](https://github.com/filimonov)).

<div id="clickhouse-release-v2011070-2020-04-17">
  ### ClickHouse 릴리스 v20.1.10.70, 2020-04-17
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 드물게 발생할 수 있는 `Cannot drain connections: cancel first` 예외를 수정했습니다. [#10239](https://github.com/ClickHouse/ClickHouse/pull/10239) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `ENGINE = Replicated*`인 테이블에서 사용자가 `ALTER UPDATE/DELETE`를 실행하려고 할 때 ClickHouse가 `'Unknown function lambda.'` 오류를 발생시키던 버그를 수정했습니다. 이제 비결정적 함수 검사에서 lambda 표현식을 올바르게 처리합니다. [#10237](https://github.com/ClickHouse/ClickHouse/pull/10237) ([Alexander Kazakov](https://github.com/Akazz)).
* 요일이 화요일이나 목요일인 RFC-2822 형식 문자열에 대한 `parseDateTimeBestEffort` 문제를 수정했습니다. 이로써 [#10082](https://github.com/ClickHouse/ClickHouse/issues/10082)가 해결됩니다. [#10214](https://github.com/ClickHouse/ClickHouse/pull/10214) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `JOIN` 외부 상수 이름과 충돌할 수 있는 `JOIN` 내부 상수의 컬럼 이름 문제를 수정했습니다. [#10207](https://github.com/ClickHouse/ClickHouse/pull/10207) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `system.numbers` 또는 `system.zeros`처럼 무한한 소스에서 읽을 때, 실제로는 LIMIT에서 중지되어야 하는 쿼리가 무한히 실행될 수 있는 문제를 수정했습니다. [#10206](https://github.com/ClickHouse/ClickHouse/pull/10206) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* `arrayJoin` 함수가 있는 경우(일부 사례) `move-to-prewhere` 최적화가 올바르게 동작하지 않던 문제를 수정했습니다. 이로써 [#10092](https://github.com/ClickHouse/ClickHouse/issues/10092)가 해결되었습니다. [#10195](https://github.com/ClickHouse/ClickHouse/pull/10195) ([alexey-milovidov](https://github.com/alexey-milovidov)).
* `allow_nondeterministic_mutations` 설정으로 뮤테이션에서 비결정적 함수 사용 제한을 완화할 수 있는 기능이 추가되었습니다. [#10186](https://github.com/ClickHouse/ClickHouse/pull/10186) ([filimonov](https://github.com/filimonov)).
* `Distributed` 엔진 테이블에 `INSERT`할 때 구조가 일치하지 않으면 블록을 변환합니다. [#10135](https://github.com/ClickHouse/ClickHouse/pull/10135) ([Azat Khuzhin](https://github.com/azat)).
* `Distributed` 테이블의 구조가 하위 테이블과 다를 때 `INSERT` 시 발생하던 `SIGSEGV`를 수정했습니다. [#10105](https://github.com/ClickHouse/ClickHouse/pull/10105) ([Azat Khuzhin](https://github.com/azat)).
* `JOIN` 및 `UNION ALL`이 포함된 쿼리에서 발생할 수 있는 행 손실 문제를 수정했습니다. [#9826](https://github.com/ClickHouse/ClickHouse/issues/9826), [#10113](https://github.com/ClickHouse/ClickHouse/issues/10113)을 해결합니다. [#10099](https://github.com/ClickHouse/ClickHouse/pull/10099) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* MySQL 데이터베이스 엔진에 인수 검사 기능을 추가하고 식별자 인수를 지원합니다. [#10077](https://github.com/ClickHouse/ClickHouse/pull/10077) ([Winter Zhang](https://github.com/zhang2014)).
* localhost의 ClickHouse 서버를 딕셔너리 소스로 사용할 때 발생하는 버그를 수정했습니다. 이 버그는 딕셔너리와 소스의 타입이 호환되지 않으면 메모리 손상을 초래할 수 있습니다. [#10071](https://github.com/ClickHouse/ClickHouse/pull/10071) ([alesapin](https://github.com/alesapin)).
* 오류 `Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform`를 수정했습니다. 이 오류는 `distributed_aggregation_memory_efficient` 설정이 활성화되어 있을 때, 분산 쿼리가 서로 다른 세그먼트에서 서로 다른 수준으로 집계된 데이터를 읽는 경우(단일 수준 집계와 2단계 집계가 혼재된 경우) 발생했습니다. [#10063](https://github.com/ClickHouse/ClickHouse/pull/10063) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 문자열 키에 후행 0 바이트가 포함된 상태에서 `GROUP BY`를 수행할 때 발생할 수 있던 segmentation fault를 수정했습니다 ([#8636](https://github.com/ClickHouse/ClickHouse/issues/8636), [#8925](https://github.com/ClickHouse/ClickHouse/issues/8925)). [#10025](https://github.com/ClickHouse/ClickHouse/pull/10025) ([Alexander Kuzmenkov](https://github.com/akuzm)).
* 일부 데이터베이스의 쿼리를 처리하는 단계 중 하나에서 필요한 테이블을 가져오지 못하던 버그를 수정했습니다. 이로써 [#9699](https://github.com/ClickHouse/ClickHouse/issues/9699)가 수정되었습니다. [#9949](https://github.com/ClickHouse/ClickHouse/pull/9949) ([achulkov2](https://github.com/achulkov2)).
* `JOIN`이 `TOTALS`와 함께 사용될 때 발생하는 `'Not found column in block'` 오류를 수정했습니다. [#9839](https://github.com/ClickHouse/ClickHouse/issues/9839)을 해결했습니다. [#9939](https://github.com/ClickHouse/ClickHouse/pull/9939) ([Artem Zuikov](https://github.com/4ertus2)).
* `ON CLUSTER` DDL 쿼리가 서버 시작 시 멈추는 버그를 수정했습니다. [#9927](https://github.com/ClickHouse/ClickHouse/pull/9927) ([Gagan Arneja](https://github.com/garneja)).
* Join 테이블 엔진의 `TRUNCATE` 문제 수정 ([#9917](https://github.com/ClickHouse/ClickHouse/issues/9917)). [#9920](https://github.com/ClickHouse/ClickHouse/pull/9920) ([Amos Bird](https://github.com/amosbird)).
* ALTER 쿼리에서 발생하는 `'scalar does not exist'` 오류 수정 ([#9878](https://github.com/ClickHouse/ClickHouse/issues/9878)). [#9904](https://github.com/ClickHouse/ClickHouse/pull/9904) ([Amos Bird](https://github.com/amosbird)).
* `ReplicatedMergeTree`에서 삭제와 optimize 간의 경쟁 상태 문제를 수정했습니다. [#9901](https://github.com/ClickHouse/ClickHouse/pull/9901) ([alesapin](https://github.com/alesapin)).
* `ATTACH PART`의 `DeleteOnDestroy` 로직을 수정해, ATTACH된 part가 자동으로 제거될 수 있던 문제를 해결하고 테스트 몇 건을 추가했습니다. [#9410](https://github.com/ClickHouse/ClickHouse/pull/9410) ([Vladimir Chebotarev](https://github.com/excitoon)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 단위 테스트 `collapsing_sorted_stream`를 수정했습니다. [#9367](https://github.com/ClickHouse/ClickHouse/pull/9367) ([Deleted user](https://github.com/ghost)).

<div id="clickhouse-release-v201954-2020-03-28">
  ### ClickHouse 릴리스 v20.1.9.54, 2020-03-28
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* 쿼리에 `PREWHERE`와 `WHERE`가 분산 테이블에서 함께 사용되고 `SET distributed_product_mode = 'local'`일 때 발생하던 `'Different expressions with the same alias'` 오류를 수정했습니다. [#9871](https://github.com/ClickHouse/ClickHouse/pull/9871) ([Artem Zuikov](https://github.com/4ertus2)).
* 복합 프라이머리 키가 있는 테이블에서 뮤테이션의 과도한 메모리 사용량을 수정했습니다. 이 수정은 [#9850](https://github.com/ClickHouse/ClickHouse/issues/9850)을 해결합니다. [#9860](https://github.com/ClickHouse/ClickHouse/pull/9860) ([alesapin](https://github.com/alesapin)).
* 이제 `INSERT` 쿼리에서는 세그먼트가 initiator로부터 받은 설정을 예외를 발생시키는 대신 해당 세그먼트의 제약 조건에 맞게 제한합니다. 이 수정으로 서로 다른 제약 조건을 가진 세그먼트에도 `INSERT` 쿼리를 보낼 수 있습니다. 이 변경은 [#9447](https://github.com/ClickHouse/ClickHouse/issues/9447) 수정 사항을 개선합니다. [#9852](https://github.com/ClickHouse/ClickHouse/pull/9852) ([Vitaly Baranov](https://github.com/vitlibar)).
* 클라이언트에서 발생할 수 있던 `Got 0 in totals chunk, expected 1` 예외를 수정했습니다. 이 문제는 오른쪽에 조인된 테이블의 행이 0개일 때 `JOIN`이 포함된 쿼리에서 발생했습니다. 예시: `select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;`. [#9777](https://github.com/ClickHouse/ClickHouse/issues/9777)을 해결합니다. [#9823](https://github.com/ClickHouse/ClickHouse/pull/9823) ([Nikolai Kochetov](https://github.com/KochetovNicolai)).
* 타입을 변환할 수 없을 때 `optimize_skip_unused_shards`에서 발생하던 `SIGSEGV`를 수정했습니다. [#9804](https://github.com/ClickHouse/ClickHouse/pull/9804) ([Azat Khuzhin](https://github.com/azat)).
* 함수 인수의 시간대가 올바르게 적용되지 않던 몇 가지 경우를 수정했습니다. [#9574](https://github.com/ClickHouse/ClickHouse/pull/9574) ([Vasily Nemkov](https://github.com/Enmk)).

<div id="improvement">
  #### 개선 사항
</div>

* 단일 스레드에서 정렬된 단일 part만 읽으므로 뮤테이션에서 `ORDER BY` 단계를 제거했습니다. 또한 뮤테이션의 행이 정렬 키 순서대로 정렬되어 있으며, 이 순서가 깨지지 않는지 확인하는 검사도 추가했습니다. [#9886](https://github.com/ClickHouse/ClickHouse/pull/9886) ([alesapin](https://github.com/alesapin)).

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 중복된 링커 플래그를 정리했습니다. 링커가 예기치 않은 심볼을 찾지 않도록 했습니다. [#9433](https://github.com/ClickHouse/ClickHouse/pull/9433) ([Amos Bird](https://github.com/amosbird)).

<div id="clickhouse-release-v201841-2020-03-20">
  ### ClickHouse 릴리스 v20.1.8.41, 2020-03-20
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `ParallelAggregatingBlockInputStream::Handler::onFinish/onFinishThread`에서 처리되지 않은 예외로 인해 `Cannot schedule a task` 오류가 지속적으로 발생할 수 있는 문제를 수정했습니다. 이 수정은 [#6833](https://github.com/ClickHouse/ClickHouse/issues/6833)을 해결합니다. [#9154](https://github.com/ClickHouse/ClickHouse/pull/9154) ([Azat Khuzhin](https://github.com/azat))
* `ALTER` 쿼리(뮤테이션)에서 메모리를 과도하게 사용하는 문제를 수정했습니다. 이 수정은 [#9533](https://github.com/ClickHouse/ClickHouse/issues/9533) 및 [#9670](https://github.com/ClickHouse/ClickHouse/issues/9670)을 해결합니다. [#9754](https://github.com/ClickHouse/ClickHouse/pull/9754) ([alesapin](https://github.com/alesapin))
* 외부 딕셔너리 DDL의 백쿼트 처리 버그를 수정했습니다. 이 수정은 [#9619](https://github.com/ClickHouse/ClickHouse/issues/9619)을 해결합니다. [#9734](https://github.com/ClickHouse/ClickHouse/pull/9734) ([alesapin](https://github.com/alesapin))

<div id="clickhouse-release-v201738-2020-03-18">
  ### ClickHouse 릴리스 v20.1.7.38, 2020-03-18
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `sumKahan` 및 `sumWithOverflow`의 잘못된 내부 함수 이름을 수정했습니다. 이로 인해 원격 쿼리에서 이러한 함수를 사용할 때 예외가 발생했습니다. [#9636](https://github.com/ClickHouse/ClickHouse/pull/9636) ([Azat Khuzhin](https://github.com/azat)). 이 문제는 모든 ClickHouse 릴리스에 존재했습니다.
* 내부 복제를 사용하는 `Distributed` 테이블에서 `ALTER ON CLUSTER`를 허용합니다. 이 변경으로 [#3268](https://github.com/ClickHouse/ClickHouse/issues/3268)이 수정되었습니다. [#9617](https://github.com/ClickHouse/ClickHouse/pull/9617) ([shinoi2](https://github.com/shinoi2)). 이 문제는 모든 ClickHouse 릴리스에 존재했습니다.
* `MergeTreeRangeReader`에서 발생할 수 있는 예외 `Size of filter does not match size of column` 및 `Invalid number of rows in Chunk`를 수정했습니다. 이러한 예외는 일부 상황에서 `PREWHERE`를 실행하는 동안 발생할 수 있었습니다. [#9132](https://github.com/ClickHouse/ClickHouse/issues/9132)를 수정합니다. [#9612](https://github.com/ClickHouse/ClickHouse/pull/9612) ([Anton Popov](https://github.com/CurtizJ))
* 다음 문제가 수정되었습니다. `time + 1`과 같은 단순한 산술 표현식을 작성할 경우(`time + INTERVAL 1 SECOND`와 같은 표현식과 달리) 시간대가 유지되지 않았습니다. 이 수정으로 [#5743](https://github.com/ClickHouse/ClickHouse/issues/5743)가 해결됩니다. [#9323](https://github.com/ClickHouse/ClickHouse/pull/9323) ([alexey-milovidov](https://github.com/alexey-milovidov)). 이 문제는 모든 ClickHouse 릴리스에 존재했습니다.
* 이제 `a DEFAULT b, b DEFAULT a`와 같은 단순한 순환 별칭(alias)을 사용하는 컬럼은 생성하거나 추가할 수 없습니다. [#9603](https://github.com/ClickHouse/ClickHouse/pull/9603) ([alesapin](https://github.com/alesapin))
* base64로 인코딩된 값 끝의 패딩이 잘못될 수 있던 문제를 수정했습니다. base64 라이브러리를 업데이트했습니다. 이 변경으로 [#9491](https://github.com/ClickHouse/ClickHouse/issues/9491)을 수정하고, [#9492](https://github.com/ClickHouse/ClickHouse/issues/9492)와 [#9500](https://github.com/ClickHouse/ClickHouse/pull/9500)을 종료했습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* `Poco::HTTPServer`가 소멸될 때 발생하는 데이터 레이스를 수정했습니다. 이 문제는 서버가 시작된 직후 즉시 종료될 때 발생할 수 있었습니다. [#9468](https://github.com/ClickHouse/ClickHouse/pull/9468) ([Anton Popov](https://github.com/CurtizJ))
* `LIMIT n WITH TIES`에서 n번째 행과 같은 값을 가진 행이 매우 많을 때 발생할 수 있는 충돌 또는 행 수가 잘못 계산되는 문제를 수정했습니다. [#9464](https://github.com/ClickHouse/ClickHouse/pull/9464) ([tavplubix](https://github.com/tavplubix))
* 컬럼 TTL로 인해 발생할 수 있는 체크섬 불일치를 수정했습니다. [#9451](https://github.com/ClickHouse/ClickHouse/pull/9451) ([Anton Popov](https://github.com/CurtizJ))
* 사용자가 이전 형식의 `MergeTree` 테이블 엔진 계열에 대해 `ALTER MODIFY SETTING`을 시도할 때 발생하는 충돌을 수정했습니다. [#9435](https://github.com/ClickHouse/ClickHouse/pull/9435) ([alesapin](https://github.com/alesapin))
* 이제 뮤테이션을 더 자주 최종 반영하도록 합니다. [#9427](https://github.com/ClickHouse/ClickHouse/pull/9427) ([alesapin](https://github.com/alesapin))
* [#8598](https://github.com/ClickHouse/ClickHouse/issues/8598)에서 도입된 복제 프로토콜 비호환성 문제를 수정했습니다. [#9412](https://github.com/ClickHouse/ClickHouse/pull/9412) ([alesapin](https://github.com/alesapin))
* 배열 타입에 대한 bloom\_filter 인덱스의 not(has())를 수정했습니다. [#9407](https://github.com/ClickHouse/ClickHouse/pull/9407) ([achimbab](https://github.com/achimbab))
* haystack의 바이트 수가 0일 때 `match` 및 `extract` 함수의 동작을 수정했습니다. haystack이 상수인 경우 동작이 잘못되었습니다. 이 수정은 [#9160](https://github.com/ClickHouse/ClickHouse/issues/9160) [#9163](https://github.com/ClickHouse/ClickHouse/pull/9163) ([alexey-milovidov](https://github.com/alexey-milovidov)) [#9345](https://github.com/ClickHouse/ClickHouse/pull/9345) ([alexey-milovidov](https://github.com/alexey-milovidov))를 해결합니다.

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* 이제 Windows Subsystem for Linux에서 예외 처리가 정상적으로 작동합니다. 자세한 내용은 [https://github.com/ClickHouse-Extras/libunwind/pull/3](https://github.com/ClickHouse-Extras/libunwind/pull/3) 을 참조하십시오. 이 변경으로 [#6480](https://github.com/ClickHouse/ClickHouse/issues/6480) 문제가 해결되었으며, [#9564](https://github.com/ClickHouse/ClickHouse/pull/9564)에 반영되었습니다. ([sobolevsv](https://github.com/sobolevsv))

<div id="clickhouse-release-v201630-2020-03-05">
  ### ClickHouse 릴리스 v20.1.6.30, 2020-03-05
</div>

<div id="bug-fix">
  #### 버그 수정
</div>

* `T64` 코덱으로 압축할 때 발생하던 데이터 비호환성 문제를 수정했습니다.
  [#9039](https://github.com/ClickHouse/ClickHouse/pull/9039) [(abyss7)](https://github.com/abyss7)
* 단일 스레드에서 MergeTree 테이블을 읽을 때 range의 순서를 수정했습니다. [#8964](https://github.com/ClickHouse/ClickHouse/issues/8964)를 해결했습니다.
  [#9050](https://github.com/ClickHouse/ClickHouse/pull/9050) [(CurtizJ)](https://github.com/CurtizJ)
* `PREWHERE` 실행 중 `MergeTreeRangeReader`에서 발생할 수 있는 세그멘테이션 오류를 수정했습니다. [#9064](https://github.com/ClickHouse/ClickHouse/issues/9064)를 해결합니다.
  [#9106](https://github.com/ClickHouse/ClickHouse/pull/9106) [(CurtizJ)](https://github.com/CurtizJ)
* `reinterpretAsFixedString`가 `String`이 아니라 `FixedString`을 반환하도록 수정했습니다.
  [#9052](https://github.com/ClickHouse/ClickHouse/pull/9052) [(oandrew)](https://github.com/oandrew)
* 널 허용 반환 타입 관련 `joinGet` 문제를 수정했습니다. [#8919](https://github.com/ClickHouse/ClickHouse/issues/8919)을 수정했습니다
  [#9014](https://github.com/ClickHouse/ClickHouse/pull/9014) [(amosbird)](https://github.com/amosbird)
* fuzz 테스트 및 bitTestAll/bitTestAny 함수의 잘못된 동작을 수정했습니다.
  [#9143](https://github.com/ClickHouse/ClickHouse/pull/9143) [(alexey-milovidov)](https://github.com/alexey-milovidov)
* haystack의 바이트 수가 0일 때 match 및 extract 함수의 동작을 수정했습니다. haystack가 상수인 경우 동작이 잘못되었습니다. [#9160](https://github.com/ClickHouse/ClickHouse/issues/9160) 수정
  [#9163](https://github.com/ClickHouse/ClickHouse/pull/9163) [(alexey-milovidov)](https://github.com/alexey-milovidov)
* 엄격한 단조성이 없는 함수형 인덱스를 사용할 때 역전된 프레디케이트가 실행되는 문제를 수정했습니다. [#9034](https://github.com/ClickHouse/ClickHouse/issues/9034)
  [#9223](https://github.com/ClickHouse/ClickHouse/pull/9223) [(Akazz)](https://github.com/Akazz)
* `WHERE` 절에 `[NOT] LIKE` 연산자가 있으면 `CROSS`를 `INNER JOIN`으로 재작성할 수 있도록 합니다. [#9191](https://github.com/ClickHouse/ClickHouse/issues/9191)을 수정했습니다.
  [#9229](https://github.com/ClickHouse/ClickHouse/pull/9229) [(4ertus2)](https://github.com/4ertus2)
* Log 엔진을 사용하는 테이블에서 첫 번째 컬럼(또는 컬럼들)을 별칭으로 지정할 수 있도록 허용합니다.
  [#9231](https://github.com/ClickHouse/ClickHouse/pull/9231) [(abyss7)](https://github.com/abyss7)
* `IN()` 내부에서 쉼표 join을 사용할 수 있도록 했습니다. [#7314](https://github.com/ClickHouse/ClickHouse/issues/7314)을 수정했습니다.
  [#9251](https://github.com/ClickHouse/ClickHouse/pull/9251) [(4ertus2)](https://github.com/4ertus2)
* `ALTER MODIFY/ADD` 쿼리 로직을 개선했습니다. 이제 타입 없이 컬럼을 `ADD`할 수 없으며, `MODIFY`로 기본 표현식을 변경해도 컬럼의 타입은 바뀌지 않고, `MODIFY`로 타입을 변경해도 기본 표현식 값은 유지됩니다. [#8669](https://github.com/ClickHouse/ClickHouse/issues/8669)을 수정했습니다.
  [#9227](https://github.com/ClickHouse/ClickHouse/pull/9227)  [(alesapin)](https://github.com/alesapin)
* 뮤테이션 완료 처리 문제를 수정하여, 이미 완료된 뮤테이션의 상태가 is\_done=0으로 표시될 수 있던 문제를 해결했습니다.
  [#9217](https://github.com/ClickHouse/ClickHouse/pull/9217) [(alesapin)](https://github.com/alesapin)
* system.numbers 및 system.numbers\_mt에서 "Processors" pipeline을 지원합니다. 또한 `max_execution_time`이 적용되지 않던 버그도 수정했습니다.
  [#7796](https://github.com/ClickHouse/ClickHouse/pull/7796)  [(KochetovNicolai)](https://github.com/KochetovNicolai)
* `DictCacheKeysRequestedFound` 메트릭의 잘못된 카운팅을 수정했습니다.
  [#9411](https://github.com/ClickHouse/ClickHouse/pull/9411) [(nikitamikhaylov)](https://github.com/nikitamikhaylov)
* 그렇지 않으면 재시작 후 part 데이터에 접근할 수 없게 되어 ClickHouse가 시작되지 않을 수 있으므로, `ATTACH PARTITION FROM`, `REPLACE PARTITION`, `MOVE TO TABLE`에 storage policy 확인을 추가했습니다.
  [#9383](https://github.com/ClickHouse/ClickHouse/pull/9383) [(excitoon)](https://github.com/excitoon)
* `MergeTreeIndexSet`의 UBSan 보고를 수정했습니다. 이로써 [#9250](https://github.com/ClickHouse/ClickHouse/issues/9250) 문제가 해결됩니다.
  [#9365](https://github.com/ClickHouse/ClickHouse/pull/9365) [(alexey-milovidov)](https://github.com/alexey-milovidov)
* BlockIO에서 발생할 수 있는 데이터 레이스를 수정했습니다.
  [#9356](https://github.com/ClickHouse/ClickHouse/pull/9356) [(KochetovNicolai)](https://github.com/KochetovNicolai)
* JSON 관련 함수에서 Int64 범위에 맞지 않는 `UInt64` 숫자를 지원합니다. `SIMDJSON`을 master로 업데이트했습니다. 이로써 [#9209](https://github.com/ClickHouse/ClickHouse/issues/9209) 문제가 수정되었습니다.
  [#9344](https://github.com/ClickHouse/ClickHouse/pull/9344) [(alexey-milovidov)](https://github.com/alexey-milovidov)
* 데이터 디렉터리가 별도의 장치에 마운트된 경우 여유 공간이 올바르게 계산되지 않던 문제를 수정했습니다. 기본 디스크의 경우 데이터 하위 디렉터리의 여유 공간을 기준으로 계산합니다. 이 수정은 [#7441](https://github.com/ClickHouse/ClickHouse/issues/7441)
  [#9257](https://github.com/ClickHouse/ClickHouse/pull/9257) [(millb)](https://github.com/millb)
* `OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error and SSL Exception: error:2400006E:random number generator::error retrieving entropy.` 메시지와 함께 TLS 연결이 실패할 수 있던 문제를 수정했습니다. OpenSSL을 upstream master로 업데이트했습니다.
  [#8956](https://github.com/ClickHouse/ClickHouse/pull/8956) [(alexey-milovidov)](https://github.com/alexey-milovidov)
* `CREATE` 쿼리를 실행할 때 스토리지 엔진 인수의 상수 표현식을 미리 계산합니다. 비어 있는 데이터베이스 이름을 현재 데이터베이스로 대체합니다. [#6508](https://github.com/ClickHouse/ClickHouse/issues/6508), [#3492](https://github.com/ClickHouse/ClickHouse/issues/3492)를 수정했습니다. 또한 ClickHouseDictionarySource에서 로컬 주소를 확인하는 로직도 수정했습니다.
  [#9262](https://github.com/ClickHouse/ClickHouse/pull/9262) [(tabplubix)](https://github.com/tavplubix)
* `StorageFile`에서 읽을 때 발생할 수 있던 `StorageMerge` segfault를 수정했습니다.
  [#9387](https://github.com/ClickHouse/ClickHouse/pull/9387) [(tabplubix)](https://github.com/tavplubix)
* `Kafka`에서 suffix를 읽은 후 커밋하기 전에 예외가 발생하는 드문 경우 데이터가 손실되지 않도록 했습니다. [#9378](https://github.com/ClickHouse/ClickHouse/issues/9378)을 해결합니다. 관련: [#7175](https://github.com/ClickHouse/ClickHouse/issues/7175)
  [#9507](https://github.com/ClickHouse/ClickHouse/pull/9507) [(filimonov)](https://github.com/filimonov)
* 잘못된 매개변수로 생성된 `Kafka` 테이블을 사용하거나 삭제하려고 할 때 서버가 비정상 종료되는 버그를 수정했습니다. [#9494](https://github.com/ClickHouse/ClickHouse/issues/9494)를 해결합니다. [#9507](https://github.com/ClickHouse/ClickHouse/issues/9507)을 반영했습니다.
  [#9513](https://github.com/ClickHouse/ClickHouse/pull/9513) [(filimonov)](https://github.com/filimonov)

<div id="new-feature-2">
  #### 새 기능
</div>

* materialized view가 있는 테이블에 대한 멱등 삽입의 동작을 제어하는 `deduplicate_blocks_in_dependent_materialized_views` 옵션을 추가했습니다. 이 새 기능은 Altinity의 특별 요청으로 버그 수정 릴리스에 추가되었습니다.
  [#9070](https://github.com/ClickHouse/ClickHouse/pull/9070) [(urykhy)](https://github.com/urykhy)

<div id="clickhouse-release-v20124-2020-01-22">
  ### ClickHouse 릴리스 v20.1.2.4, 2020-01-22
</div>

<div id="backward-incompatible-change">
  #### 하위 호환되지 않는 변경 사항
</div>

* 설정 `merge_tree_uniform_read_distribution`은 이제 더 이상 사용되지 않습니다. 서버는 여전히 이 설정을 인식하지만 효과는 없습니다. [#8308](https://github.com/ClickHouse/ClickHouse/pull/8308) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 계산 결과가 `Float32`이므로 함수 `greatCircleDistance`의 반환 유형도 `Float32`로 변경했습니다. [#7993](https://github.com/ClickHouse/ClickHouse/pull/7993) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 쿼리 매개변수는 "escaped" 포맷으로 표현해야 합니다. 예를 들어 문자열 `a<tab>b`를 전달하려면 `a\tb` 또는 `a\<tab>b`로 써야 하며, URL에서는 각각 `a%5Ctb` 또는 `a%5C%09b`로 전달해야 합니다. 이는 `\N`으로 NULL을 전달할 수 있게 하기 위해 필요합니다. 이 변경으로 [#7488](https://github.com/ClickHouse/ClickHouse/issues/7488)이 수정됩니다. [#8517](https://github.com/ClickHouse/ClickHouse/pull/8517) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `ReplicatedMergeTree`에서는 이제 기본적으로 `use_minimalistic_part_header_in_zookeeper` 설정이 활성화됩니다. 이렇게 하면 ZooKeeper에 저장되는 데이터 양이 크게 줄어듭니다. 이 설정은 19.1 버전부터 지원되며, 이미 6개월 이상 여러 서비스의 프로덕션 환경에서 문제 없이 사용하고 있습니다. 19.1보다 오래된 버전으로 다운그레이드할 가능성이 있다면 이 설정을 비활성화하십시오. [#6850](https://github.com/ClickHouse/ClickHouse/pull/6850) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 데이터 스킵 인덱스는 이제 프로덕션 환경에서 사용할 준비가 되었으며 기본적으로 활성화됩니다. 설정 `allow_experimental_data_skipping_indices`, `allow_experimental_cross_to_join_conversion`, `allow_experimental_multiple_joins_emulation`은 이제 더 이상 사용되지 않으며 아무 동작도 하지 않습니다. [#7974](https://github.com/ClickHouse/ClickHouse/pull/7974) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `JOIN` 연산과 일관되게 동작하는 새로운 `StorageJoin`용 `ANY JOIN` 로직을 추가했습니다. 동작 변경 없이 업그레이드하려면 Engine Join tables 메타데이터에 `SETTINGS any_join_distinct_right_table_keys = 1`을 추가하거나, 업그레이드 후 해당 테이블을 다시 생성해야 합니다. [#8400](https://github.com/ClickHouse/ClickHouse/pull/8400) ([Artem Zuikov](https://github.com/4ertus2))
* 로깅 구성의 변경 사항을 적용하려면 서버를 다시 시작해야 합니다. 이는 서버가 삭제된 로그 파일에 계속 로그를 기록하는 버그를 피하기 위한 임시 우회책입니다([#8696](https://github.com/ClickHouse/ClickHouse/issues/8696) 참조). [#8707](https://github.com/ClickHouse/ClickHouse/pull/8707) ([Alexander Kuzmenkov](https://github.com/akuzm))

<div id="new-feature-2">
  #### 새 기능
</div>

* `system.merges`에 part 경로 정보가 추가되었습니다. [#8043](https://github.com/ClickHouse/ClickHouse/pull/8043) ([Vladimir Chebotarev](https://github.com/excitoon))
* `ON CLUSTER` 모드에서 `SYSTEM RELOAD DICTIONARY` 쿼리를 실행할 수 있는 기능을 추가했습니다. [#8288](https://github.com/ClickHouse/ClickHouse/pull/8288) ([Guillaume Tassery](https://github.com/YiuRULE))
* `ON CLUSTER` 모드에서 `CREATE DICTIONARY` 쿼리를 실행할 수 있도록 지원이 추가되었습니다. [#8163](https://github.com/ClickHouse/ClickHouse/pull/8163) ([alesapin](https://github.com/alesapin))
* 이제 `users.xml`의 사용자 profile은 여러 profile을 상속받을 수 있습니다. [#8343](https://github.com/ClickHouse/ClickHouse/pull/8343) ([Mikhail f. Shiryaev](https://github.com/Felixoid))
* 모든 서버 스레드의 스택 트레이스를 확인할 수 있는 `system.stack_trace` 테이블이 추가되었습니다. 이는 개발자가 서버 상태를 자세히 들여다보는 데 유용합니다. 이 변경으로 [#7576](https://github.com/ClickHouse/ClickHouse/issues/7576)이 해결되었습니다. [#8344](https://github.com/ClickHouse/ClickHouse/pull/8344) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 설정 가능한 초 미만 정밀도를 지원하는 `DateTime64` 데이터 형식을 추가했습니다. [#7170](https://github.com/ClickHouse/ClickHouse/pull/7170) ([Vasily Nemkov](https://github.com/Enmk))
* 클러스터의 모든 노드에 쿼리할 수 있는 테이블 함수 `clusterAllReplicas`를 추가했습니다. [#8493](https://github.com/ClickHouse/ClickHouse/pull/8493) ([kiran sunkari](https://github.com/kiransunkari))
* 이산 특성의 정보값을 계산하는 집계 함수 `categoricalInformationValue`를 추가했습니다. [#8117](https://github.com/ClickHouse/ClickHouse/pull/8117) ([hcz](https://github.com/hczhcz))
* 병렬 처리로 `CSV`, `TSV` 및 `JSONEachRow` 포맷의 데이터 파일 파싱 속도를 높였습니다. [#7780](https://github.com/ClickHouse/ClickHouse/pull/7780) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 은행가 반올림을 수행하는 `bankerRound` 함수를 추가했습니다. [#8112](https://github.com/ClickHouse/ClickHouse/pull/8112) ([hcz](https://github.com/hczhcz))
* 지역 이름용 내장 딕셔너리에서 더 많은 언어를 지원합니다: 'ru', 'en', 'ua', 'uk', 'by', 'kz', 'tr', 'de', 'uz', 'lv', 'lt', 'et', 'pt', 'he', 'vi'. [#8189](https://github.com/ClickHouse/ClickHouse/pull/8189) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `ANY JOIN` 로직의 일관성이 향상되었습니다. 이제 `t1 ANY LEFT JOIN t2`는 `t2 ANY RIGHT JOIN t1`과 동일하게 동작합니다. [#7665](https://github.com/ClickHouse/ClickHouse/pull/7665) ([Artem Zuikov](https://github.com/4ertus2))
* 기존 `ANY INNER JOIN` 동작을 활성화하는 설정 `any_join_distinct_right_table_keys`를 추가했습니다. [#7665](https://github.com/ClickHouse/ClickHouse/pull/7665) ([Artem Zuikov](https://github.com/4ertus2))
* 새로운 `SEMI` 및 `ANTI JOIN`이 추가되었습니다. 기존 `ANY INNER JOIN` 동작은 이제 `SEMI LEFT JOIN`으로 사용할 수 있습니다. [#7665](https://github.com/ClickHouse/ClickHouse/pull/7665) ([Artem Zuikov](https://github.com/4ertus2))
* `File` 엔진과 `file` 테이블 함수에 `Distributed` 포맷이 추가되어, `Distributed` 테이블에 비동기 삽입을 수행할 때 생성되는 `.bin` 파일을 읽을 수 있게 되었습니다. [#8535](https://github.com/ClickHouse/ClickHouse/pull/8535) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `runningAccumulate`에 선택적 reset 컬럼 인수를 추가해, 새 키 값마다 집계 결과를 재설정할 수 있게 했습니다. [#8326](https://github.com/ClickHouse/ClickHouse/pull/8326) ([Sergey Kononenko](https://github.com/kononencheg))
* ClickHouse를 Prometheus 엔드포인트로 사용할 수 있도록 기능 추가. [#7900](https://github.com/ClickHouse/ClickHouse/pull/7900) ([vdimir](https://github.com/Vdimir))
* `config.xml`에 원격 테이블 엔진과 테이블 함수 `URL`, `S3`, `HDFS`에 허용되는 호스트를 제한하는 `<remote_url_allow_hosts>` 섹션을 추가했습니다. [#7154](https://github.com/ClickHouse/ClickHouse/pull/7154) ([Mikhail Korotov](https://github.com/millb))
* 구면에서의 거리를 도 단위로 계산하는 함수 `greatCircleAngle`이 추가되었습니다. [#8105](https://github.com/ClickHouse/ClickHouse/pull/8105) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 지구 반경이 H3 라이브러리와 일치하도록 변경했습니다. [#8105](https://github.com/ClickHouse/ClickHouse/pull/8105) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 입출력을 위한 `JSONCompactEachRow` 및 `JSONCompactEachRowWithNamesAndTypes` 포맷이 추가되었습니다. [#7841](https://github.com/ClickHouse/ClickHouse/pull/7841) ([Mikhail Korotov](https://github.com/millb))
* 추가 엔진 매개변수 또는 파일 확장자에 따라 `gzip` 파일을 읽고 쓸 수 있는 기능이 파일 관련 테이블 엔진 및 테이블 함수(`File`, `S3`, `URL`, `HDFS`)에 추가되었습니다. [#7840](https://github.com/ClickHouse/ClickHouse/pull/7840) ([Andrey Bodrov](https://github.com/apbodrov))
* 무작위 [ASCII](https://en.wikipedia.org/wiki/ASCII#Printable_characters) 출력 가능 문자들로 이루어진 문자열을 생성하는 `randomASCII(length)` 함수를 추가했습니다. [#8401](https://github.com/ClickHouse/ClickHouse/pull/8401) ([BayoNet](https://github.com/BayoNet))
* `JSON` 문자열에서 파싱되지 않은 JSON 배열 요소의 배열을 반환하는 함수 `JSONExtractArrayRaw`가 추가되었습니다. [#8081](https://github.com/ClickHouse/ClickHouse/pull/8081) ([Oleg Matrokhin](https://github.com/errx))
* 동일한 길이의 여러 배열을 하나의 튜플 배열로 결합할 수 있게 해주는 `arrayZip` 함수를 추가했습니다. [#8149](https://github.com/ClickHouse/ClickHouse/pull/8149) ([Winter Zhang](https://github.com/zhang2014))
* 구성된 `TTL` 표현식에 따라 `*MergeTree` 테이블 엔진 계열에서 디스크 간 데이터 이동 기능이 추가되었습니다. [#8140](https://github.com/ClickHouse/ClickHouse/pull/8140) ([Vladimir Chebotarev](https://github.com/excitoon))
* 가중 평균을 계산할 수 있는 새 집계 함수 `avgWeighted`를 추가했습니다. [#7898](https://github.com/ClickHouse/ClickHouse/pull/7898) ([Andrey Bodrov](https://github.com/apbodrov))
* 이제 `TSV`, `TSKV`, `CSV`, `JSONEachRow` 포맷에서는 병렬 파싱이 기본적으로 활성화되어 있습니다. [#7894](https://github.com/ClickHouse/ClickHouse/pull/7894) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* `H3` 라이브러리의 여러 지리공간 함수인 `h3GetResolution`, `h3EdgeAngle`, `h3EdgeLength`, `h3IsValid`, `h3kRing`를 추가했습니다. [#8034](https://github.com/ClickHouse/ClickHouse/pull/8034) ([Konstantin Malanchev](https://github.com/hombit))
* 파일 관련 스토리지 및 테이블 함수에 brotli (`br`) 압축 지원이 추가되었습니다. 이로써 [#8156](https://github.com/ClickHouse/ClickHouse/issues/8156)가 수정되었습니다. [#8526](https://github.com/ClickHouse/ClickHouse/pull/8526) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `SimpleAggregationFunction` 타입에 `groupBit*` 함수를 추가했습니다. [#8485](https://github.com/ClickHouse/ClickHouse/pull/8485) ([Guillaume Tassery](https://github.com/YiuRULE))

<div id="bug-fix">
  #### 버그 수정
</div>

* `Distributed` 엔진을 사용하는 테이블의 이름 변경 문제를 수정했습니다. 이로써 이슈 [#7868](https://github.com/ClickHouse/ClickHouse/issues/7868)을 해결했습니다. [#8306](https://github.com/ClickHouse/ClickHouse/pull/8306) ([tavplubix](https://github.com/tavplubix))
* 이제 Dictionaries는 ClickHouse가 아닌 SQL 방언에서 임의 문자열 속성에 `EXPRESSION`을 지원합니다. [#8098](https://github.com/ClickHouse/ClickHouse/pull/8098) ([alesapin](https://github.com/alesapin))
* 문제가 있던 `INSERT SELECT FROM mysql(...)` 쿼리를 수정했습니다. 이로써 [#8070](https://github.com/ClickHouse/ClickHouse/issues/8070) 및 [#7960](https://github.com/ClickHouse/ClickHouse/issues/7960) 문제가 해결되었습니다. [#8234](https://github.com/ClickHouse/ClickHouse/pull/8234) ([tavplubix](https://github.com/tavplubix))
* `JSONEachRow`에서 기본 `Tuple`을 삽입할 때 발생하던 오류 "Mismatch column sizes"를 수정했습니다. 이로써 [#5653](https://github.com/ClickHouse/ClickHouse/issues/5653)가 해결됩니다. [#8606](https://github.com/ClickHouse/ClickHouse/pull/8606) ([tavplubix](https://github.com/tavplubix))
* 이제 `LIMIT BY`와 함께 `WITH TIES`를 사용하면 예외가 발생합니다. 또한 `LIMIT BY`와 함께 `TOP`도 사용할 수 있게 되었습니다. 이 변경으로 [#7472](https://github.com/ClickHouse/ClickHouse/issues/7472)가 수정되었습니다. [#7637](https://github.com/ClickHouse/ClickHouse/pull/7637) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* `clickhouse-odbc-bridge` 실행 파일이 최신 glibc 버전에 의도치 않게 의존하던 문제를 수정했습니다. [#8046](https://github.com/ClickHouse/ClickHouse/pull/8046) ([Amos Bird](https://github.com/amosbird))
* `*MergeTree` 엔진 계열의 check 함수 버그를 수정했습니다. 이제 마지막 granule과 마지막 mark(최종 아님)의 행 수가 같아도 실패하지 않습니다. [#8047](https://github.com/ClickHouse/ClickHouse/pull/8047) ([alesapin](https://github.com/alesapin))
* `ALTER` 쿼리 후 기본 숫자 유형이 테이블에 지정된 유형과 같을 때 `Enum*` 컬럼에 삽입되지 않던 문제를 수정했습니다. 이로써 [#7836](https://github.com/ClickHouse/ClickHouse/issues/7836) 문제가 해결됩니다. [#7908](https://github.com/ClickHouse/ClickHouse/pull/7908) ([Anton Popov](https://github.com/CurtizJ))
* 함수 `substring`에서 상수가 아닌 음수 "size" 인수를 허용하도록 했습니다. 이전에는 실수로 이를 허용하지 않았습니다. 이로써 [#4832](https://github.com/ClickHouse/ClickHouse/issues/4832)가 수정되었습니다. [#7703](https://github.com/ClickHouse/ClickHouse/pull/7703) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `(O|J)DBC` 테이블 엔진에 잘못된 수의 인수가 전달될 때 발생하는 구문 분석 버그를 수정했습니다. [#7709](https://github.com/ClickHouse/ClickHouse/pull/7709) ([alesapin](https://github.com/alesapin))
* syslog로 logs를 전송할 때 실행 중인 ClickHouse 프로세스의 명령 이름을 사용하도록 변경했습니다. 이전 버전에서는 명령 이름 대신 빈 문자열을 사용했습니다. [#8460](https://github.com/ClickHouse/ClickHouse/pull/8460) ([Michael Nacharov](https://github.com/mnach))
* `localhost`에 대한 허용 호스트 확인을 수정했습니다. 이 PR은 [#8241](https://github.com/ClickHouse/ClickHouse/pull/8241)에서 제시된 해결 방법을 수정합니다. [#8342](https://github.com/ClickHouse/ClickHouse/pull/8342) ([Vitaly Baranov](https://github.com/vitlibar))
* `runningAccumulate` 함수에서 결과를 사용할 때 긴 문자열 인수에 대해 `argMin` 및 `argMax` 함수에서 드물게 발생하던 충돌을 수정했습니다. 이 변경으로 [#8325](https://github.com/ClickHouse/ClickHouse/issues/8325) [#8341](https://github.com/ClickHouse/ClickHouse/pull/8341)이 해결되었습니다 ([dinosaur](https://github.com/769344359))
* `Buffer` 엔진을 사용하는 테이블의 메모리 오버커밋 문제를 수정했습니다. [#8345](https://github.com/ClickHouse/ClickHouse/pull/8345) ([Azat Khuzhin](https://github.com/azat))
* 인수 중 하나로 `NULL`을 받을 수 있고 `NULL`이 아닌 값을 반환하는 함수에서 발생할 수 있는 잠재적 버그를 수정했습니다. [#8196](https://github.com/ClickHouse/ClickHouse/pull/8196) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `MergeTree` 테이블 엔진의 백그라운드 프로세스용 스레드 풀에서 메트릭 계산을 개선했습니다. [#8194](https://github.com/ClickHouse/ClickHouse/pull/8194) ([Vladimir Chebotarev](https://github.com/excitoon))
* 행 수준 테이블 필터가 있을 때 `WHERE` 문 내 `IN` 함수 문제 수정. [#6687](https://github.com/ClickHouse/ClickHouse/issues/6687) [#8357](https://github.com/ClickHouse/ClickHouse/pull/8357) ([Ivan](https://github.com/abyss7))
* 이제 설정 값으로 사용되는 정수 값이 완전히 파싱되지 않으면 예외가 발생합니다. [#7678](https://github.com/ClickHouse/ClickHouse/pull/7678) ([Mikhail Korotov](https://github.com/millb))
* 로컬 세그먼트가 3개 이상인 분산 테이블에 대한 쿼리에서 집계 함수를 사용할 때 발생하던 예외를 수정했습니다. [#8164](https://github.com/ClickHouse/ClickHouse/pull/8164) ([小路](https://github.com/nicelulu))
* 이제 블룸 필터는 길이가 0인 배열도 처리할 수 있으며, 중복 계산을 수행하지 않습니다. [#8242](https://github.com/ClickHouse/ClickHouse/pull/8242) ([achimbab](https://github.com/achimbab))
* `users.xml`에 지정된 `host_regexp`와 클라이언트 호스트를 대조해 해당 클라이언트 호스트의 허용 여부를 확인하는 로직을 수정했습니다. [#8241](https://github.com/ClickHouse/ClickHouse/pull/8241) ([Vitaly Baranov](https://github.com/vitlibar))
* 여러 `JOIN ON` 절에서 오탐을 유발하던 모호한 컬럼 검사 완화. [#8385](https://github.com/ClickHouse/ClickHouse/pull/8385) ([Artem Zuikov](https://github.com/4ertus2))
* `String` 데이터 타입 값이 포함된 `JSON` 또는 `XML` 포맷의 데이터를 서버가 전송하거나 기록하지 못할 때(`UTF-8` 검증이 필요한 경우), 또는 결과 데이터를 Brotli 알고리즘으로 압축할 때, 그 밖의 드문 일부 경우에 발생할 수 있던 서버 충돌(`std::terminate`) 문제를 수정했습니다. 이 수정으로 [#7603](https://github.com/ClickHouse/ClickHouse/issues/7603) [#8384](https://github.com/ClickHouse/ClickHouse/pull/8384)가 해결되었습니다 ([alexey-milovidov](https://github.com/alexey-milovidov))
* CI에서 발견된 `StorageDistributedDirectoryMonitor`의 경쟁 조건(race condition)을 수정했습니다. 이 수정으로 [#8364](https://github.com/ClickHouse/ClickHouse/issues/8364)가 해결됩니다. [#8383](https://github.com/ClickHouse/ClickHouse/pull/8383) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 이제 `*MergeTree` 테이블 엔진 계열에서는 백그라운드 머지가 스토리지 정책의 볼륨 순서를 더 정확하게 유지합니다. [#8549](https://github.com/ClickHouse/ClickHouse/pull/8549) ([Vladimir Chebotarev](https://github.com/excitoon))
* 이제 테이블 엔진 `Kafka`가 `Native` 포맷에서 정상적으로 작동합니다. 이로써 [#6731](https://github.com/ClickHouse/ClickHouse/issues/6731), [#7337](https://github.com/ClickHouse/ClickHouse/issues/7337), [#8003](https://github.com/ClickHouse/ClickHouse/issues/8003) 문제가 수정되었습니다. [#8016](https://github.com/ClickHouse/ClickHouse/pull/8016) ([filimonov](https://github.com/filimonov))
* 테이블 엔진 `Kafka`에서 EOF 관련 예외를 발생시키던 헤더 포함 포맷(`CSVWithNames` 등)의 문제를 수정했습니다. [#8016](https://github.com/ClickHouse/ClickHouse/pull/8016) ([filimonov](https://github.com/filimonov))
* `IN` 절의 오른쪽 부분에서 서브쿼리로 Set을 생성할 때 발생하던 버그를 수정했습니다. 이 수정으로 [#5767](https://github.com/ClickHouse/ClickHouse/issues/5767) 및 [#2542](https://github.com/ClickHouse/ClickHouse/issues/2542)가 해결됩니다. [#7755](https://github.com/ClickHouse/ClickHouse/pull/7755) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 스토리지 `File`에서 읽는 도중 발생할 수 있는 비정상 종료 문제를 수정했습니다. [#7756](https://github.com/ClickHouse/ClickHouse/pull/7756) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `list` 유형 컬럼이 포함된 `Parquet` 포맷 파일을 읽는 문제를 수정했습니다. [#8334](https://github.com/ClickHouse/ClickHouse/pull/8334) ([maxulan](https://github.com/maxulan))
* `max_parallel_replicas > 1`일 때 샘플링 키에 종속된 `PREWHERE` 조건이 있는 분산 쿼리에서 발생하는 `Not found column` 오류를 수정했습니다. [#7913](https://github.com/ClickHouse/ClickHouse/pull/7913) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 쿼리에서 테이블 별칭을 참조하는 `PREWHERE`를 사용하고 프라이머리 키(primary key) 조건으로 인해 결과 집합(result set)이 비어 있을 때 발생하던 `Not found column` 오류를 수정했습니다. [#7911](https://github.com/ClickHouse/ClickHouse/pull/7911) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `널 허용` 인수인 경우 `rand` 및 `randConstant` 함수의 반환 유형을 수정했습니다. 이제 이 함수들은 항상 `UInt32`를 반환하며, `Nullable(UInt32)`는 반환하지 않습니다. [#8204](https://github.com/ClickHouse/ClickHouse/pull/8204) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `WITH FILL` 표현식에서는 프레디케이트 푸시다운을 비활성화했습니다. 이로써 [#7784](https://github.com/ClickHouse/ClickHouse/issues/7784)가 수정되었습니다. [#7789](https://github.com/ClickHouse/ClickHouse/pull/7789) ([Winter Zhang](https://github.com/zhang2014))
* `FINAL` 절 사용 시 `SummingMergeTree`에서 `count()` 결과가 잘못 계산되던 문제를 수정했습니다. [#3280](https://github.com/ClickHouse/ClickHouse/issues/3280) [#7786](https://github.com/ClickHouse/ClickHouse/pull/7786) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 원격 서버에서의 상수 함수로 인해 잘못된 결과가 반환될 수 있는 문제를 수정했습니다. 이 문제는 서버별로 서로 다른 상수 값을 반환하는 `version()`, `uptime()` 등의 함수를 포함한 쿼리에서 발생했습니다. 이 수정으로 [#7666](https://github.com/ClickHouse/ClickHouse/issues/7666) 문제가 해결됩니다. [#7689](https://github.com/ClickHouse/ClickHouse/pull/7689) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 잘못된 결과를 일으키던 푸시다운 프레디케이트 최적화의 복잡한 버그를 수정했습니다. 이로써 푸시다운 프레디케이트 최적화와 관련된 많은 문제가 해결됩니다. [#8503](https://github.com/ClickHouse/ClickHouse/pull/8503) ([Winter Zhang](https://github.com/zhang2014))
* `CREATE TABLE .. AS dictionary` 쿼리에서 발생하던 크래시를 수정했습니다. [#8508](https://github.com/ClickHouse/ClickHouse/pull/8508) ([Azat Khuzhin](https://github.com/azat))
* `.g4` 파일의 ClickHouse 문법이 여러 가지 개선되었습니다. [#8294](https://github.com/ClickHouse/ClickHouse/pull/8294) ([taiyang-li](https://github.com/taiyang-li))
* engine `Join`을 사용하는 테이블과의 `JOIN`에서 충돌을 일으키던 버그를 수정했습니다. 이 수정으로 [#7556](https://github.com/ClickHouse/ClickHouse/issues/7556) [#8254](https://github.com/ClickHouse/ClickHouse/issues/8254) [#7915](https://github.com/ClickHouse/ClickHouse/issues/7915) [#8100](https://github.com/ClickHouse/ClickHouse/issues/8100)이 해결됩니다. [#8298](https://github.com/ClickHouse/ClickHouse/pull/8298) ([Artem Zuikov](https://github.com/4ertus2))
* `CREATE DATABASE` 시 불필요하게 딕셔너리를 다시 로드하던 문제를 수정했습니다. [#7916](https://github.com/ClickHouse/ClickHouse/pull/7916) ([Azat Khuzhin](https://github.com/azat))
* `StorageFile` 및 `StorageHDFS`에서 읽을 때의 최대 스트림 수를 제한합니다. [#7650](https://github.com/ClickHouse/ClickHouse/issues/7650)을 수정했습니다. [#7981](https://github.com/ClickHouse/ClickHouse/pull/7981) ([alesapin](https://github.com/alesapin))
* 사용자가 기본 표현식과 코덱을 모두 지정했을 때 발생하던 `ALTER ... MODIFY ... CODEC` 쿼리의 버그를 수정했습니다. [8593](https://github.com/ClickHouse/ClickHouse/issues/8593)을 해결했습니다. [#8614](https://github.com/ClickHouse/ClickHouse/pull/8614) ([alesapin](https://github.com/alesapin))
* `SimpleAggregateFunction(LowCardinality)` 유형 컬럼의 백그라운드 머지에서 발생하던 오류를 수정했습니다. [#8613](https://github.com/ClickHouse/ClickHouse/pull/8613) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 함수 `toDateTime64`의 타입 검사를 수정했습니다. [#8375](https://github.com/ClickHouse/ClickHouse/pull/8375) ([Vasily Nemkov](https://github.com/Enmk))
* 이제 지원되지 않는 `join_use_nulls` 설정과 Join engine을 함께 사용할 때 `LEFT` 또는 `FULL JOIN`으로 인해 서버가 크래시되지 않습니다. [#8479](https://github.com/ClickHouse/ClickHouse/pull/8479) ([Artem Zuikov](https://github.com/4ertus2))
* 이제 `db`가 존재하지 않더라도 `DROP DICTIONARY IF EXISTS db.dict` 쿼리는 예외를 발생시키지 않습니다. [#8185](https://github.com/ClickHouse/ClickHouse/pull/8185) ([Vitaly Baranov](https://github.com/vitlibar))
* 제거된 `IStorage` 객체에 대한 참조 사용으로 인해 테이블 함수(`file`, `mysql`, `remote`)에서 발생할 수 있던 충돌 문제를 수정했습니다. 테이블 함수에 삽입할 때 지정된 컬럼을 잘못 파싱하던 문제를 수정했습니다. [#7762](https://github.com/ClickHouse/ClickHouse/pull/7762) ([tavplubix](https://github.com/tavplubix))
* `clickhouse-server`를 시작하기 전에 네트워크가 준비되었는지 확인합니다. 이 문제는 [#7507](https://github.com/ClickHouse/ClickHouse/issues/7507)에서 수정되었습니다. [#8570](https://github.com/ClickHouse/ClickHouse/pull/8570) ([Zhichang Yu](https://github.com/yuzhichang))
* 보안 연결에서 timeout 처리를 수정하여 쿼리가 무기한 대기 상태에 빠지지 않도록 했습니다. 이 변경으로 [#8126](https://github.com/ClickHouse/ClickHouse/issues/8126) 문제가 해결되었습니다. [#8128](https://github.com/ClickHouse/ClickHouse/pull/8128) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `clickhouse-copier`에서 동시 실행되는 worker 간의 불필요한 경합을 수정했습니다. [#7816](https://github.com/ClickHouse/ClickHouse/pull/7816) ([Ding Xiang Fei](https://github.com/dingxiangfei2009))
* 이제 뮤테이션은 attached 상태인 파트의 뮤테이션 버전이 현재 뮤테이션 버전보다 크더라도 해당 파트를 건너뛰지 않습니다. [#7812](https://github.com/ClickHouse/ClickHouse/pull/7812) ([Zhichang Yu](https://github.com/yuzhichang)) [#8250](https://github.com/ClickHouse/ClickHouse/pull/8250) ([alesapin](https://github.com/alesapin))
* 다른 디스크로 이동한 후 서버를 재시작해도 중복된 `*MergeTree` 데이터 파트 복사본을 무시합니다. [#7810](https://github.com/ClickHouse/ClickHouse/pull/7810) ([Vladimir Chebotarev](https://github.com/excitoon))
* `JOIN` 키의 `LowCardinality` 사용 시 발생하는 `FULL JOIN` 크래시를 수정했습니다. [#8252](https://github.com/ClickHouse/ClickHouse/pull/8252) ([Artem Zuikov](https://github.com/4ertus2))
* `INSERT INTO tbl (x, y, x)`와 같은 삽입 쿼리에서는 동일한 컬럼 이름을 두 번 이상 사용할 수 없도록 했습니다. 이 수정으로 [#5465](https://github.com/ClickHouse/ClickHouse/issues/5465), [#7681](https://github.com/ClickHouse/ClickHouse/issues/7681)이 해결되었습니다. [#7685](https://github.com/ClickHouse/ClickHouse/pull/7685) ([alesapin](https://github.com/alesapin))
* 알 수 없는 CPU의 물리적 CPU 코어 수를 감지할 때, 논리적 CPU 코어 수를 사용하는 폴백을 추가했습니다. 이로써 [#5239](https://github.com/ClickHouse/ClickHouse/issues/5239) 문제가 수정되었습니다. [#7726](https://github.com/ClickHouse/ClickHouse/pull/7726) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 구체화된 컬럼과 별칭 컬럼에서 발생하던 `There's no column` 오류를 수정했습니다. [#8210](https://github.com/ClickHouse/ClickHouse/pull/8210) ([Artem Zuikov](https://github.com/4ertus2))
* `TABLE` 또는 `DICTIONARY` 한정자 없이 `EXISTS` 쿼리를 사용할 때 발생하던 심각한 충돌 문제를 수정했습니다. 예: `EXISTS t`. 이 수정으로 [#8172](https://github.com/ClickHouse/ClickHouse/issues/8172)가 해결되었습니다. 이 버그는 버전 19.17에서 처음 발생했습니다. [#8213](https://github.com/ClickHouse/ClickHouse/pull/8213) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `SimpleAggregateFunction` 컬럼을 사용할 때 발생할 수 있는 `"Sizes of columns does not match"` 오류와 관련된 드문 버그를 수정했습니다. [#7790](https://github.com/ClickHouse/ClickHouse/pull/7790) ([Boris Granveaud](https://github.com/bgranvea))
* `allow_databases`가 비어 있는 사용자에게 모든 데이터베이스에 대한 접근 권한이 부여되던 버그를 수정했습니다(`allow_dictionaries`도 동일). [#7793](https://github.com/ClickHouse/ClickHouse/pull/7793) ([DeifyTheGod](https://github.com/DeifyTheGod))
* server가 이미 client와의 연결을 종료한 경우 발생하던 client 충돌을 수정했습니다. [#8071](https://github.com/ClickHouse/ClickHouse/pull/8071) ([Azat Khuzhin](https://github.com/azat))
* 기본 키(primary key) 접두사와 기본 키가 아닌 접미사로 정렬할 때의 `ORDER BY` 동작을 수정했습니다. [#7759](https://github.com/ClickHouse/ClickHouse/pull/7759) ([Anton Popov](https://github.com/CurtizJ))
* 테이블에 한정자가 지정된 컬럼이 있는지 확인합니다. 이로써 [#6836](https://github.com/ClickHouse/ClickHouse/issues/6836)가 수정되었습니다. [#7758](https://github.com/ClickHouse/ClickHouse/pull/7758) ([Artem Zuikov](https://github.com/4ertus2))
* `ALTER MOVE`가 머지 완료 직후 지정된 superpart에 대해 즉시 이동 작업을 실행하던 동작을 수정했습니다. [#8103](https://github.com/ClickHouse/ClickHouse/issues/8103)을 수정했습니다. [#8104](https://github.com/ClickHouse/ClickHouse/pull/8104) ([Vladimir Chebotarev](https://github.com/excitoon))
* 컬럼 수가 서로 다른 `UNION`을 사용할 때 발생할 수 있는 서버 충돌 문제를 수정했습니다. [#7279](https://github.com/ClickHouse/ClickHouse/issues/7279) 문제를 수정했습니다. [#7929](https://github.com/ClickHouse/ClickHouse/pull/7929) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 음수 크기를 지정한 경우 함수 `substr`의 결과 부분 문자열 크기를 수정했습니다. [#8589](https://github.com/ClickHouse/ClickHouse/pull/8589) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 이제 background pool에 여유 스레드가 충분하지 않으면 서버는 `MergeTree`에서 part mutation을 실행하지 않습니다.  [#8588](https://github.com/ClickHouse/ClickHouse/pull/8588) ([tavplubix](https://github.com/tavplubix))
* `UNION ALL` AST 포맷팅의 사소한 오타를 수정했습니다. [#7999](https://github.com/ClickHouse/ClickHouse/pull/7999) ([litao91](https://github.com/litao91))
* 음수에서 발생하던 잘못된 블룸 필터 결과를 수정했습니다. 이 수정으로 [#8317](https://github.com/ClickHouse/ClickHouse/issues/8317) 문제가 해결되었습니다. [#8566](https://github.com/ClickHouse/ClickHouse/pull/8566) ([Winter Zhang](https://github.com/zhang2014))
* decompress에서 발생할 수 있는 잠재적인 버퍼 오버플로우를 수정했습니다. 악의적인 사용자가 조작된 압축 데이터를 전달해 버퍼 경계를 벗어난 읽기를 유발할 수 있습니다. 이 문제는 Yandex 정보 보안 팀의 Eldar Zaitov가 발견했습니다. [#8404](https://github.com/ClickHouse/ClickHouse/pull/8404) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 정수 오버플로우로 인해 `arrayIntersect`에서 잘못된 결과가 반환되던 문제를 수정했습니다. [#7777](https://github.com/ClickHouse/ClickHouse/pull/7777) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 이제 `OPTIMIZE TABLE` 쿼리는 오프라인 레플리카의 작업 완료를 기다리지 않습니다. [#8314](https://github.com/ClickHouse/ClickHouse/pull/8314) ([javi santana](https://github.com/javisantana))
* `Replicated*MergeTree` 테이블의 `ALTER TTL` 파서를 수정했습니다. [#8318](https://github.com/ClickHouse/ClickHouse/pull/8318) ([Vladimir Chebotarev](https://github.com/excitoon))
* 서버와 클라이언트 간 통신을 수정해, 쿼리 실패 후에도 서버가 임시 테이블 정보를 읽을 수 있도록 했습니다. [#8084](https://github.com/ClickHouse/ClickHouse/pull/8084) ([Azat Khuzhin](https://github.com/azat))
* 집계된 비트맵과 스칼라 비트맵의 교집합을 수행할 때 발생하던 `bitmapAnd` 함수 오류를 수정했습니다. [#8082](https://github.com/ClickHouse/ClickHouse/pull/8082) ([Yue Huang](https://github.com/moon03432))
* ZooKeeper Programmer's Guide에 따라 `ZXid`의 정의를 다듬어 `clickhouse-cluster-copier`의 버그를 수정했습니다. [#8088](https://github.com/ClickHouse/ClickHouse/pull/8088) ([Ding Xiang Fei](https://github.com/dingxiangfei2009))
* `odbc` 테이블 함수가 이제 `external_table_functions_use_nulls` 설정을 따릅니다. [#7506](https://github.com/ClickHouse/ClickHouse/pull/7506) ([Vasily Nemkov](https://github.com/Enmk))
* 드물게 데이터 레이스를 일으키던 버그를 수정했습니다. [#8143](https://github.com/ClickHouse/ClickHouse/pull/8143) ([Alexander Kazakov](https://github.com/Akazz))
* 이제 `SYSTEM RELOAD DICTIONARY`는 `update_field`를 무시하고 딕셔너리를 전체적으로 다시 로드합니다. 이 변경으로 [#7440](https://github.com/ClickHouse/ClickHouse/issues/7440) 문제가 수정되었습니다. [#8037](https://github.com/ClickHouse/ClickHouse/pull/8037) ([Vitaly Baranov](https://github.com/vitlibar))
* CREATE 쿼리에서 딕셔너리 존재 여부를 확인하는 기능을 추가했습니다. [#8032](https://github.com/ClickHouse/ClickHouse/pull/8032) ([alesapin](https://github.com/alesapin))
* `Values` 포맷의 `Float*` 파싱을 수정했습니다. 이로써 [#7817](https://github.com/ClickHouse/ClickHouse/issues/7817) 문제가 해결되었습니다. [#7870](https://github.com/ClickHouse/ClickHouse/pull/7870) ([tavplubix](https://github.com/tavplubix))
* 일부 백그라운드 작업에서 공간을 예약할 수 없을 때 `*MergeTree` 테이블 엔진 계열에서 발생하는 충돌을 수정했습니다. [#7873](https://github.com/ClickHouse/ClickHouse/pull/7873) ([Vladimir Chebotarev](https://github.com/excitoon))
* `SimpleAggregateFunction(LowCardinality)` 컬럼이 포함된 테이블에서 머지 작업 수행 시 발생하던 크래시를 수정했습니다. 이 변경으로 [#8515](https://github.com/ClickHouse/ClickHouse/issues/8515)가 해결되었습니다. [#8522](https://github.com/ClickHouse/ClickHouse/pull/8522) ([Azat Khuzhin](https://github.com/azat))
* 모든 ICU 로캘 지원을 복원하고 상수 표현식에 콜레이션을 적용할 수 있는 기능을 추가했습니다. 또한 `system.collations` 테이블에 언어 이름을 추가했습니다. [#8051](https://github.com/ClickHouse/ClickHouse/pull/8051) ([alesapin](https://github.com/alesapin))
* 최소 lifetime 값이 0인 외부 딕셔너리(`LIFETIME(MIN 0 MAX N)`, `LIFETIME(N)`)가 백그라운드에서 업데이트되지 않는 버그를 수정했습니다. [#7983](https://github.com/ClickHouse/ClickHouse/pull/7983) ([alesapin](https://github.com/alesapin))
* ClickHouse를 소스로 사용하는 외부 딕셔너리의 쿼리에 서브쿼리가 있을 때 발생하던 충돌을 수정했습니다. [#8351](https://github.com/ClickHouse/ClickHouse/pull/8351) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `URL` 엔진을 사용하는 테이블에서 파일 확장자를 잘못 파싱하는 문제를 수정했습니다. 이 수정으로 [#8157](https://github.com/ClickHouse/ClickHouse/issues/8157) 문제가 해결되었습니다. [#8419](https://github.com/ClickHouse/ClickHouse/pull/8419) ([Andrey Bodrov](https://github.com/apbodrov))
* 키가 없는 `*MergeTree` 테이블의 `CHECK TABLE` 쿼리 문제를 수정했습니다. [#7543](https://github.com/ClickHouse/ClickHouse/issues/7543)를 수정했습니다. [#7979](https://github.com/ClickHouse/ClickHouse/pull/7979) ([alesapin](https://github.com/alesapin))
* `Float64`를 MySQL 타입으로 변환하는 문제를 수정했습니다. [#8079](https://github.com/ClickHouse/ClickHouse/pull/8079) ([Yuriy Baranov](https://github.com/yurriy))
* 이제 서버 충돌로 인해 테이블(table)이 완전히 삭제되지 않은 경우, 서버는 이를 복원해 로드하려고 시도합니다. [#8176](https://github.com/ClickHouse/ClickHouse/pull/8176) ([tavplubix](https://github.com/tavplubix))
* 존재하지 않는 파일에 삽입할 때 테이블 함수 `file`에서 발생하던 충돌을 수정했습니다. 이제는 이 경우 파일을 먼저 생성한 후 삽입을 처리합니다. [#8177](https://github.com/ClickHouse/ClickHouse/pull/8177) ([Olga Khvostikova](https://github.com/stavrolia))
* `trace_log`가 활성화된 상태일 때 발생할 수 있는 드문 교착 상태를 수정했습니다. [#7838](https://github.com/ClickHouse/ClickHouse/pull/7838) ([filimonov](https://github.com/filimonov))
* DDL 쿼리로 생성된 `RangeHashed` 외부 딕셔너리에서 `Date`뿐만 아니라 다른 타입도 사용할 수 있도록 했습니다. [7899](https://github.com/ClickHouse/ClickHouse/issues/7899)를 수정했습니다. [#8275](https://github.com/ClickHouse/ClickHouse/pull/8275) ([alesapin](https://github.com/alesapin))
* 다른 함수의 결과를 인수로 `now64()`를 호출할 때 발생하던 크래시를 수정했습니다. [#8270](https://github.com/ClickHouse/ClickHouse/pull/8270) ([Vasily Nemkov](https://github.com/Enmk))
* MySQL wire protocol을 통한 연결에서 클라이언트 IP를 감지하는 버그를 수정했습니다. [#7743](https://github.com/ClickHouse/ClickHouse/pull/7743) ([Dmitry Muzyka](https://github.com/dmitriy-myz))
* `arraySplit` 함수의 빈 배열 처리 문제를 해결했습니다. 이로써 [#7708](https://github.com/ClickHouse/ClickHouse/issues/7708) 문제가 수정되었습니다. [#7747](https://github.com/ClickHouse/ClickHouse/pull/7747) ([hcz](https://github.com/hczhcz))
* 실행 중인 다른 `clickhouse-server`의 `pid-file`이 삭제될 수 있는 문제를 수정했습니다. [#8487](https://github.com/ClickHouse/ClickHouse/pull/8487) ([Weiqing Xu](https://github.com/weiqxu))
* `invalidate_query`가 있는 딕셔너리의 재로드를 수정해, 이전 업데이트 시도에서 업데이트가 중단되고 일부 예외가 발생하던 문제를 해결했습니다. [#8029](https://github.com/ClickHouse/ClickHouse/pull/8029) ([alesapin](https://github.com/alesapin))
* `arrayReduce` 함수에서 발생하던, "double free"를 유발할 수 있는 오류와 집계 함수 조합자 `Resample`에서 발생하던, 메모리 누수를 유발할 수 있는 오류를 수정했습니다. 집계 함수 `aggThrow`를 추가했습니다. 이 함수는 테스트 목적으로 사용할 수 있습니다. [#8446](https://github.com/ClickHouse/ClickHouse/pull/8446) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="improvement">
  #### 개선 사항
</div>

* `S3` 테이블 엔진 사용 시 로깅이 개선되었습니다. [#8251](https://github.com/ClickHouse/ClickHouse/pull/8251) ([Grigory Pervakov](https://github.com/GrigoryPervakov))
* `clickhouse-local` 호출 시 인수가 전달되지 않으면 도움말 메시지가 출력되도록 했습니다. 이로써 [#5335](https://github.com/ClickHouse/ClickHouse/issues/5335)가 수정되었습니다. [#8230](https://github.com/ClickHouse/ClickHouse/pull/8230) ([Andrey Nagorny](https://github.com/Melancholic))
* 설정 `mutations_sync`를 추가하여 `ALTER UPDATE/DELETE` 쿼리가 동기적으로 완료될 때까지 기다릴 수 있도록 했습니다. [#8237](https://github.com/ClickHouse/ClickHouse/pull/8237) ([alesapin](https://github.com/alesapin))
* `config.xml`에서 상대 경로의 `user_files_path`를 설정할 수 있도록 했습니다 (`format_schema_path`와 유사한 방식). [#7632](https://github.com/ClickHouse/ClickHouse/pull/7632) ([hcz](https://github.com/hczhcz))
* `-OrZero` 접미사가 있는 변환 함수에 유효하지 않은 타입에 대한 예외를 추가했습니다. [#7880](https://github.com/ClickHouse/ClickHouse/pull/7880) ([Andrey Konyaev](https://github.com/akonyaev90))
* 분산 쿼리에서 세그먼트로 전송하는 데이터 헤더의 포맷을 단순화했습니다. [#8044](https://github.com/ClickHouse/ClickHouse/pull/8044) ([Vitaly Baranov](https://github.com/vitlibar))
* `Live View` 테이블 엔진 리팩터링. [#8519](https://github.com/ClickHouse/ClickHouse/pull/8519) ([vzakaznikov](https://github.com/vzakaznikov))
* DDL 쿼리로 생성된 외부 딕셔너리에 대한 검사 항목을 추가했습니다. [#8127](https://github.com/ClickHouse/ClickHouse/pull/8127) ([alesapin](https://github.com/alesapin))
* `FINAL`과 `SAMPLE`을 함께 사용할 때 발생하던 `Column ... already exists` 오류를 수정했습니다. 예: `select count() from table final sample 1/2`. [#5186](https://github.com/ClickHouse/ClickHouse/issues/5186)을 해결했습니다. [#7907](https://github.com/ClickHouse/ClickHouse/pull/7907) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 이제 `joinGet` 함수의 첫 번째 인수로 테이블 식별자를 사용할 수 있습니다. [#7707](https://github.com/ClickHouse/ClickHouse/pull/7707) ([Amos Bird](https://github.com/amosbird))
* 서브쿼리가 있는 `Kafka` 테이블에서 `MaterializedView`를 사용할 수 있도록 했습니다. [#8197](https://github.com/ClickHouse/ClickHouse/pull/8197) ([filimonov](https://github.com/filimonov))
* 이제 디스크 간 백그라운드 이동 작업이 별도의 스레드 풀에서 실행됩니다. [#7670](https://github.com/ClickHouse/ClickHouse/pull/7670) ([Vladimir Chebotarev](https://github.com/excitoon))
* `SYSTEM RELOAD DICTIONARY`가 이제 동기 방식으로 실행됩니다. [#8240](https://github.com/ClickHouse/ClickHouse/pull/8240) ([Vitaly Baranov](https://github.com/vitlibar))
* 이제 스택 트레이스에는 가상 메모리 주소(객체 파일이 로드된 위치) 대신 객체 파일 내 실제 주소(오프셋)가 표시됩니다. 따라서 실행 파일이 위치 독립적이고 ASLR이 활성화된 경우에도 `addr2line`을 사용할 수 있습니다. 이 변경으로 [#8360](https://github.com/ClickHouse/ClickHouse/issues/8360)이 해결되었습니다. [#8387](https://github.com/ClickHouse/ClickHouse/pull/8387) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 행 수준 보안 필터를 위한 새 구문 `<table name='table_name'>...</table>`을 지원합니다. [#5779](https://github.com/ClickHouse/ClickHouse/issues/5779)를 수정했습니다. [#8381](https://github.com/ClickHouse/ClickHouse/pull/8381) ([Ivan](https://github.com/abyss7))
* 이제 `cityHash` 함수는 `Decimal` 및 `UUID` 타입에서도 작동합니다. [#5184](https://github.com/ClickHouse/ClickHouse/issues/5184)를 해결했습니다. [#7693](https://github.com/ClickHouse/ClickHouse/pull/7693) ([Mikhail Korotov](https://github.com/millb))
* 적응형 세분화 수준이 구현된 이후에는 더 이상 의미가 없어 system 로그에서 고정 인덱스 세분화 수준(기존 값 1024)을 제거했습니다. [#7698](https://github.com/ClickHouse/ClickHouse/pull/7698) ([alexey-milovidov](https://github.com/alexey-milovidov))
* ClickHouse를 SSL 없이 컴파일한 경우 MySQL 호환 서버를 활성화했습니다. [#7852](https://github.com/ClickHouse/ClickHouse/pull/7852) ([Yuriy Baranov](https://github.com/yurriy))
* 이제 서버가 분산 배치의 체크섬을 검사하므로, 배치 데이터가 손상된 경우 더 자세한 오류 메시지를 제공합니다. [#7914](https://github.com/ClickHouse/ClickHouse/pull/7914) ([Azat Khuzhin](https://github.com/azat))
* `MySQL` 데이터베이스 엔진에서 `DROP DATABASE`, `DETACH TABLE`, `DROP TABLE`, `ATTACH TABLE`을 지원합니다. [#8202](https://github.com/ClickHouse/ClickHouse/pull/8202) ([Winter Zhang](https://github.com/zhang2014))
* S3 테이블 함수와 테이블 엔진에 인증 기능을 추가했습니다. [#7623](https://github.com/ClickHouse/ClickHouse/pull/7623) ([Vladimir Chebotarev](https://github.com/excitoon))
* 정의되지 않은 디스크에서 데이터 파트가 누락되지 않도록, 서로 다른 디스크에 있는 `MergeTree`의 추가 파트를 확인하는 검사를 추가했습니다. [#8118](https://github.com/ClickHouse/ClickHouse/pull/8118) ([Vladimir Chebotarev](https://github.com/excitoon))
* Mac 클라이언트 및 서버의 SSL 지원을 활성화했습니다. [#8297](https://github.com/ClickHouse/ClickHouse/pull/8297) ([Ivan](https://github.com/abyss7))
* 이제 ClickHouse를 MySQL federated server로 사용할 수 있습니다([https://dev.mysql.com/doc/refman/5.7/en/federated-create-server.html](https://dev.mysql.com/doc/refman/5.7/en/federated-create-server.html) 참조). [#7717](https://github.com/ClickHouse/ClickHouse/pull/7717) ([Maxim Fedotov](https://github.com/MaxFedotov))
* `clickhouse-client`는 이제 multiquery가 켜져 있고 multiline이 꺼져 있을 때에만 `bracketed-paste`를 활성화합니다. 이로써 [#7757](https://github.com/ClickHouse/ClickHouse/issues/7757) 문제가 수정되었습니다. [#7761](https://github.com/ClickHouse/ClickHouse/pull/7761) ([Amos Bird](https://github.com/amosbird))
* `if` 함수에서 `Array(Decimal)`을 지원하도록 개선했습니다. [#7721](https://github.com/ClickHouse/ClickHouse/pull/7721) ([Artem Zuikov](https://github.com/4ertus2))
* `arrayDifference`, `arrayCumSum` 및 `arrayCumSumNegative` 함수에서 Decimal 형식을 지원합니다. [#7724](https://github.com/ClickHouse/ClickHouse/pull/7724) ([Artem Zuikov](https://github.com/4ertus2))
* `system.dictionaries` 테이블에 `lifetime` 컬럼이 추가되었습니다. [#6820](https://github.com/ClickHouse/ClickHouse/issues/6820) [#7727](https://github.com/ClickHouse/ClickHouse/pull/7727) ([kekekekule](https://github.com/kekekekule))
* 서로 다른 디스크에 있는 기존 파트에 대해 `*MergeTree` 테이블 엔진의 확인 기능을 개선했습니다. [#7660](https://github.com/ClickHouse/ClickHouse/issues/7660)을 해결했습니다. [#8440](https://github.com/ClickHouse/ClickHouse/pull/8440) ([Vladimir Chebotarev](https://github.com/excitoon))
* `AWS SDK`와의 `S3` 통합으로 별도 설정 없이 모든 S3 기능을 즉시 사용할 수 있습니다. [#8011](https://github.com/ClickHouse/ClickHouse/pull/8011) ([Pavel Kovalenko](https://github.com/Jokser))
* `Live View` 테이블에서 서브쿼리 지원이 추가되었습니다. [#7792](https://github.com/ClickHouse/ClickHouse/pull/7792) ([vzakaznikov](https://github.com/vzakaznikov))
* `TTL` 표현식에서 `Date` 또는 `DateTime` 컬럼 사용 여부를 확인하는 검사가 제거되었습니다. [#7920](https://github.com/ClickHouse/ClickHouse/pull/7920) ([Vladimir Chebotarev](https://github.com/excitoon))
* `system.detached_parts` 테이블에 디스크 정보가 추가되었습니다. [#7833](https://github.com/ClickHouse/ClickHouse/pull/7833) ([Vladimir Chebotarev](https://github.com/excitoon))
* 이제 설정 `max_(table|partition)_size_to_drop`은 재시작하지 않고도 변경할 수 있습니다. [#7779](https://github.com/ClickHouse/ClickHouse/pull/7779) ([Grigory Pervakov](https://github.com/GrigoryPervakov))
* 오류 메시지의 사용성이 약간 더 개선되었습니다. 사용자에게 `Stack trace:` 아래의 줄을 제거하지 말라고 요청합니다. [#7897](https://github.com/ClickHouse/ClickHouse/pull/7897) ([alexey-milovidov](https://github.com/alexey-milovidov))
* [#7935](https://github.com/ClickHouse/ClickHouse/issues/7935) 이후 다양한 포맷의 `Kafka` 엔진 메시지를 더 잘 읽을 수 있게 개선되었습니다. [#8035](https://github.com/ClickHouse/ClickHouse/pull/8035) ([Ivan](https://github.com/abyss7))
* `sha2_password` 인증 플러그인을 지원하지 않는 MySQL 클라이언트와의 호환성이 개선되었습니다. [#8036](https://github.com/ClickHouse/ClickHouse/pull/8036) ([Yuriy Baranov](https://github.com/yurriy))
* MySQL 호환 서버에서 더 많은 컬럼 타입을 지원합니다. [#7975](https://github.com/ClickHouse/ClickHouse/pull/7975) ([Yuriy Baranov](https://github.com/yurriy))
* 기반 `MergeTree` 테이블을 사용하는 `Merge`, `Buffer`, `Materilized View` 스토리지에 `ORDER BY` 최적화를 구현했습니다. [#8130](https://github.com/ClickHouse/ClickHouse/pull/8130) ([Anton Popov](https://github.com/CurtizJ))
* 이제는 구형 커널(\< 3.17)과의 호환성을 높이기 위해 `getrandom`에 대해 항상 POSIX 구현을 사용합니다. [#7940](https://github.com/ClickHouse/ClickHouse/pull/7940) ([Amos Bird](https://github.com/amosbird))
* move TTL 규칙의 대상 유효성을 더 잘 확인합니다. [#8410](https://github.com/ClickHouse/ClickHouse/pull/8410) ([Vladimir Chebotarev](https://github.com/excitoon))
* `Distributed` 테이블 엔진에서 손상된 삽입 배치에 대한 검사 개선. [#7933](https://github.com/ClickHouse/ClickHouse/pull/7933) ([Azat Khuzhin](https://github.com/azat))
* 향후 뮤테이션에서 처리해야 할 파트 이름의 배열이 담긴 컬럼을 `system.mutations` 테이블에 추가했습니다. [#8179](https://github.com/ClickHouse/ClickHouse/pull/8179) ([alesapin](https://github.com/alesapin))
* 프로세서를 위한 병렬 머지 정렬 최적화. [#8552](https://github.com/ClickHouse/ClickHouse/pull/8552) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 설정 `mark_cache_min_lifetime`은 이제 더 이상 사용되지 않으며 아무 동작도 하지 않습니다. 이전 버전에서는 `mark_cache_min_lifetime`초 동안의 데이터를 수용하기 위해 마크 캐시가 메모리에서 `mark_cache_size`보다 더 커질 수 있었습니다. 이로 인해 혼란이 발생하고 예상보다 메모리 사용량이 높아졌으며, 특히 메모리가 제한된 시스템에서는 더욱 문제가 되었습니다. 이 릴리스를 설치한 후 성능이 저하되면 `mark_cache_size`를 늘려야 합니다. [#8484](https://github.com/ClickHouse/ClickHouse/pull/8484) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `tid`를 모든 곳에서 사용할 수 있도록 준비했습니다. 이는 [#7477](https://github.com/ClickHouse/ClickHouse/issues/7477)에 필요합니다. [#8276](https://github.com/ClickHouse/ClickHouse/pull/8276) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="performance-improvement">
  #### 성능 개선
</div>

* processors 파이프라인 성능 최적화. [#7988](https://github.com/ClickHouse/ClickHouse/pull/7988) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 기존 값을 계속 읽을 수 있는 상태에서 cache 딕셔너리의 만료된 키를 비차단 방식으로 업데이트합니다. [#8303](https://github.com/ClickHouse/ClickHouse/pull/8303) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 레지스터를 하나 더 확보하기 위해 ClickHouse 전체를 `-fno-omit-frame-pointer` 없이 컴파일합니다. [#8097](https://github.com/ClickHouse/ClickHouse/pull/8097) ([Amos Bird](https://github.com/amosbird))
* `greatCircleDistance` 함수의 성능을 개선하고 이에 대한 성능 테스트를 추가했습니다. [#7307](https://github.com/ClickHouse/ClickHouse/pull/7307) ([Olga Khvostikova](https://github.com/stavrolia))
* 함수 `roundDown`의 성능을 개선했습니다. [#8465](https://github.com/ClickHouse/ClickHouse/pull/8465) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `DateTime64` 데이터 타입에서 `max`, `min`, `argMin`, `argMax`의 성능이 개선되었습니다. [#8199](https://github.com/ClickHouse/ClickHouse/pull/8199) ([Vasily Nemkov](https://github.com/Enmk))
* LIMIT이 없거나 LIMIT 값이 큰 경우의 정렬과 외부 정렬 성능을 개선했습니다. [#8545](https://github.com/ClickHouse/ClickHouse/pull/8545) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 부동소수점 수를 포맷하는 성능을 최대 6배까지 개선했습니다. [#8542](https://github.com/ClickHouse/ClickHouse/pull/8542) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `modulo` 함수 성능을 개선했습니다. [#7750](https://github.com/ClickHouse/ClickHouse/pull/7750) ([Amos Bird](https://github.com/amosbird))
* 단일 컬럼 키에 대한 `ORDER BY` 및 병합을 최적화했습니다. [#8335](https://github.com/ClickHouse/ClickHouse/pull/8335) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `arrayReduce`, `-Array`, `-State` 컴비네이터 구현이 개선되었습니다.  [#7710](https://github.com/ClickHouse/ClickHouse/pull/7710) ([Amos Bird](https://github.com/amosbird))
* 이제 `PREWHERE`는 최소한 `WHERE`만큼 효율적이도록 최적화되었습니다. [#7769](https://github.com/ClickHouse/ClickHouse/pull/7769) ([Amos Bird](https://github.com/amosbird))
* `round` 및 `roundBankers`의 음수 처리 방식을 개선했습니다. [#8229](https://github.com/ClickHouse/ClickHouse/pull/8229) ([hcz](https://github.com/hczhcz))
* `DoubleDelta` 및 `Gorilla` 코덱의 디코딩 성능이 약 30\~40% 향상되었습니다. 이 변경으로 [#7082](https://github.com/ClickHouse/ClickHouse/issues/7082)가 해결되었습니다. [#8019](https://github.com/ClickHouse/ClickHouse/pull/8019) ([Vasily Nemkov](https://github.com/Enmk))
* `base64` 관련 함수 성능이 개선되었습니다. [#8444](https://github.com/ClickHouse/ClickHouse/pull/8444) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 함수 `geoDistance`를 추가했습니다. 이 함수는 `greatCircleDistance`와 유사하지만 WGS-84 타원체 모델의 근사값을 사용합니다. 두 함수의 성능은 거의 동일합니다. [#8086](https://github.com/ClickHouse/ClickHouse/pull/8086) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `Decimal` 데이터 타입용 `min` 및 `max` 집계 함수가 더 빨라졌습니다. [#8144](https://github.com/ClickHouse/ClickHouse/pull/8144) ([Artem Zuikov](https://github.com/4ertus2))
* `arrayReduce` 처리를 벡터화했습니다. [#7608](https://github.com/ClickHouse/ClickHouse/pull/7608) ([Amos Bird](https://github.com/amosbird))
* `if` 체인은 이제 `multiIf`로 최적화되어 처리됩니다. [#8355](https://github.com/ClickHouse/ClickHouse/pull/8355) ([kamalov-ruslan](https://github.com/kamalov-ruslan))
* 19.15에서 발생한 `Kafka` 테이블 엔진의 성능 회귀를 수정했습니다. 이로써 [#7261](https://github.com/ClickHouse/ClickHouse/issues/7261)이 해결됩니다. [#7935](https://github.com/ClickHouse/ClickHouse/pull/7935) ([filimonov](https://github.com/filimonov))
* Debian 패키지의 `gcc`가 간혹 기본적으로 적용하는 "pie" 코드 생성을 제거했습니다. [#8483](https://github.com/ClickHouse/ClickHouse/pull/8483) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 데이터 포맷 병렬 파싱 [#6553](https://github.com/ClickHouse/ClickHouse/pull/6553) ([Nikita Mikhaylov](https://github.com/nikitamikhaylov))
* 표현식이 포함된 `Values`에 대한 최적화된 파서를 기본적으로 활성화했습니다 (`input_format_values_deduce_templates_of_expressions=1`). [#8231](https://github.com/ClickHouse/ClickHouse/pull/8231) ([tavplubix](https://github.com/tavplubix))

<div id="buildtestingpackaging-improvement">
  #### 빌드/테스트/패키징 개선
</div>

* `ARM` 및 최소 모드 빌드 수정. [#8304](https://github.com/ClickHouse/ClickHouse/pull/8304) ([proller](https://github.com/proller))
* `clickhouse-server`에서 `std::atexit`가 호출되지 않을 때 커버리지 파일 플러시를 추가했습니다. 또한 커버리지를 사용하는 상태 비저장 테스트의 로깅도 약간 개선했습니다. [#8267](https://github.com/ClickHouse/ClickHouse/pull/8267) ([alesapin](https://github.com/alesapin))
* contrib의 LLVM 라이브러리를 업데이트했습니다. OS 패키지의 LLVM을 사용하지 않도록 했습니다. [#8258](https://github.com/ClickHouse/ClickHouse/pull/8258) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 번들된 `curl` build가 완전히 조용히 수행되도록 합니다. [#8232](https://github.com/ClickHouse/ClickHouse/pull/8232) [#8203](https://github.com/ClickHouse/ClickHouse/pull/8203) ([Pavel Kovalenko](https://github.com/Jokser))
* 몇 가지 `MemorySanitizer` 경고를 수정했습니다. [#8235](https://github.com/ClickHouse/ClickHouse/pull/8235) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `CMakeLists.txt`에서 `add_warning` 및 `no_warning` 매크로를 사용하도록 했습니다. [#8604](https://github.com/ClickHouse/ClickHouse/pull/8604) ([Ivan](https://github.com/abyss7))
* 통합 테스트를 개선하기 위해 Minio S3 호환 객체 스토리지([https://min.io/](https://min.io/)) 지원을 추가했습니다. [#7863](https://github.com/ClickHouse/ClickHouse/pull/7863) [#7875](https://github.com/ClickHouse/ClickHouse/pull/7875) ([Pavel Kovalenko](https://github.com/Jokser))
* `libc` 헤더를 contrib에 추가했습니다. 이를 통해 다양한 시스템에서 빌드를 더 일관되게 만들 수 있습니다(`x86_64-linux-gnu`에만 해당). [#5773](https://github.com/ClickHouse/ClickHouse/pull/5773) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 일부 라이브러리에서 `-fPIC`을 제거했습니다. [#8464](https://github.com/ClickHouse/ClickHouse/pull/8464) ([alexey-milovidov](https://github.com/alexey-milovidov))
* curl용 `CMakeLists.txt`를 정리했습니다. [https://github.com/ClickHouse/ClickHouse/pull/8011#issuecomment-569478910을(를)](https://github.com/ClickHouse/ClickHouse/pull/8011#issuecomment-569478910을\(를\)) 참조하십시오. [#8459](https://github.com/ClickHouse/ClickHouse/pull/8459) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `CapNProto` 라이브러리의 경고를 숨기도록 했습니다. [#8220](https://github.com/ClickHouse/ClickHouse/pull/8220) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 짧은 문자열에 최적화된 해시 테이블용 성능 테스트를 추가했습니다. [#7679](https://github.com/ClickHouse/ClickHouse/pull/7679) ([Amos Bird](https://github.com/amosbird))
* 이제 `MADV_FREE`를 사용할 수 없어도 ClickHouse가 `AArch64`에서 빌드됩니다. 이 변경으로 [#8027](https://github.com/ClickHouse/ClickHouse/issues/8027)이 수정되었습니다. [#8243](https://github.com/ClickHouse/ClickHouse/pull/8243) ([Amos Bird](https://github.com/amosbird))
* 메모리 새니타이저 관련 문제를 해결하기 위해 `zlib-ng`를 업데이트했습니다. [#7182](https://github.com/ClickHouse/ClickHouse/pull/7182) [#8206](https://github.com/ClickHouse/ClickHouse/pull/8206) ([Alexander Kuzmenkov](https://github.com/akuzm))
* OS 패키지 사용은 매우 불안정하고 대개 거의 전혀 작동하지 않으므로, Linux 이외의 시스템에서는 내부 MySQL 라이브러리를 활성화합니다. 이 변경으로 [#5765](https://github.com/ClickHouse/ClickHouse/issues/5765)가 해결됩니다. [#8426](https://github.com/ClickHouse/ClickHouse/pull/8426) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 일부 시스템에서 `libc++` 활성화 후 발생하던 빌드 문제가 수정되었습니다. 이는 [#8374](https://github.com/ClickHouse/ClickHouse/issues/8374)를 대체합니다. [#8380](https://github.com/ClickHouse/ClickHouse/pull/8380) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 더 많은 오류를 발견할 수 있도록 `Field` 메서드의 타입 안정성을 높였습니다. [#7386](https://github.com/ClickHouse/ClickHouse/pull/7386) [#8209](https://github.com/ClickHouse/ClickHouse/pull/8209) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `libc-headers` submodule에 누락된 파일을 추가했습니다. [#8507](https://github.com/ClickHouse/ClickHouse/pull/8507) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 성능 테스트 출력에서 `JSON` 따옴표 처리가 잘못되던 문제를 수정했습니다. [#8497](https://github.com/ClickHouse/ClickHouse/pull/8497) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 이제 `std::exception` 및 `Poco::Exception`에 대해서도 stack trace가 표시됩니다. 이전 버전에서는 `DB::Exception`에 대해서만 표시되었습니다. 이로써 진단 기능이 개선됩니다. [#8501](https://github.com/ClickHouse/ClickHouse/pull/8501) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 최신 glibc 버전을 지원하도록 `clock_gettime` 및 `clock_nanosleep`을 이식했습니다. [#8054](https://github.com/ClickHouse/ClickHouse/pull/8054) ([Amos Bird](https://github.com/amosbird))
* 개발자용 예시 구성에서 `part_log`를 활성화했습니다. [#8609](https://github.com/ClickHouse/ClickHouse/pull/8609) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `01036_no_superfluous_dict_reload_on_create_database*`에서 reload의 비동기 동작을 수정했습니다. [#8111](https://github.com/ClickHouse/ClickHouse/pull/8111) ([Azat Khuzhin](https://github.com/azat))
* 코덱 성능 테스트를 수정했습니다. [#8615](https://github.com/ClickHouse/ClickHouse/pull/8615) ([Vasily Nemkov](https://github.com/Enmk))
* `.tgz` 빌드용 설치 스크립트와 관련 문서를 추가했습니다. [#8612](https://github.com/ClickHouse/ClickHouse/pull/8612) [#8591](https://github.com/ClickHouse/ClickHouse/pull/8591) ([alesapin](https://github.com/alesapin))
* 오래된 `ZSTD` 테스트를 제거했습니다(이 테스트는 1.0 이전 버전의 ZSTD에 있던 버그를 재현하기 위해 2016년에 작성되었습니다). 이로써 [#8618](https://github.com/ClickHouse/ClickHouse/issues/8618)가 해결되었습니다. [#8619](https://github.com/ClickHouse/ClickHouse/pull/8619) ([alexey-milovidov](https://github.com/alexey-milovidov))
* Mac OS Catalina에서의 빌드 문제가 수정되었습니다. [#8600](https://github.com/ClickHouse/ClickHouse/pull/8600) ([meo](https://github.com/meob))
* 결과가 더 눈에 띄도록 코덱 성능 테스트의 행 수를 늘렸습니다. [#8574](https://github.com/ClickHouse/ClickHouse/pull/8574) ([Vasily Nemkov](https://github.com/Enmk))
* 디버그 빌드에서는 `LOGICAL_ERROR` 예외를 어설션 실패로 처리해 더 쉽게 발견할 수 있도록 했습니다. [#8475](https://github.com/ClickHouse/ClickHouse/pull/8475) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 포맷 관련 성능 테스트의 재현성을 높입니다. [#8477](https://github.com/ClickHouse/ClickHouse/pull/8477) ([alexey-milovidov](https://github.com/alexey-milovidov))
* MemorySanitizer 오류를 해결하기 위해 `lz4`를 업데이트했습니다. [#8181](https://github.com/ClickHouse/ClickHouse/pull/8181) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 예외 처리에서 알려진 MemorySanitizer 오탐(false positive)을 억제했습니다. [#8182](https://github.com/ClickHouse/ClickHouse/pull/8182) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `build/docker/build.sh`에서 `gcc`와 `g++`를 버전 9로 업데이트 [#7766](https://github.com/ClickHouse/ClickHouse/pull/7766) ([TLightSky](https://github.com/tlightsky))
* `PREWHERE`가 `WHERE`보다 성능이 더 나쁨을 검증하는 성능 테스트 케이스를 추가했습니다.  [#7768](https://github.com/ClickHouse/ClickHouse/pull/7768) ([Amos Bird](https://github.com/amosbird))
* 불안정한 테스트 하나를 수정하는 작업이 진전되었습니다. [#8621](https://github.com/ClickHouse/ClickHouse/pull/8621) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `libunwind`에서 가져온 데이터로 인해 MemorySanitizer 보고가 발생하지 않도록 했습니다. [#8539](https://github.com/ClickHouse/ClickHouse/pull/8539) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `libc++`를 최신 버전으로 업데이트했습니다. [#8324](https://github.com/ClickHouse/ClickHouse/pull/8324) ([alexey-milovidov](https://github.com/alexey-milovidov))
* ICU 라이브러리를 소스 코드에서 직접 빌드합니다. 이로써 [#6460](https://github.com/ClickHouse/ClickHouse/issues/6460) 문제가 해결됩니다. [#8219](https://github.com/ClickHouse/ClickHouse/pull/8219) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `libressl`에서 `openssl`로 전환했습니다. 이 변경 후 ClickHouse는 TLS 1.3과 SNI를 지원합니다. 이로써 [#8171](https://github.com/ClickHouse/ClickHouse/issues/8171)이 해결됩니다. [#8218](https://github.com/ClickHouse/ClickHouse/pull/8218) ([alexey-milovidov](https://github.com/alexey-milovidov))
* SSL의 `chacha20_poly1305`를 사용할 때 발생하는 UBSan 경고를 수정했습니다([https://yandex.ru/에](https://yandex.ru/에) 연결할 때 발생). [#8214](https://github.com/ClickHouse/ClickHouse/pull/8214) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `.deb` Linux 배포판의 기본 비밀번호 파일의 권한 모드를 수정했습니다. [#8075](https://github.com/ClickHouse/ClickHouse/pull/8075) ([proller](https://github.com/proller))
* `clickhouse-test`에서 `clickhouse-server` PID를 가져오는 표현식을 개선했습니다. [#8063](https://github.com/ClickHouse/ClickHouse/pull/8063) ([Alexander Kazakov](https://github.com/Akazz))
* contrib/googletest를 v1.10.0으로 업데이트했습니다. [#8587](https://github.com/ClickHouse/ClickHouse/pull/8587) ([Alexander Burmak](https://github.com/Alex-Burmak))
* `base64` 라이브러리의 ThreadSaninitizer 보고서 관련 문제를 수정했습니다. 또한 이 라이브러리를 최신 버전으로 업데이트했지만, 이는 중요하지 않습니다. 이로써 [#8397](https://github.com/ClickHouse/ClickHouse/issues/8397) 문제가 수정됩니다. [#8403](https://github.com/ClickHouse/ClickHouse/pull/8403) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `00600_replace_running_query`의 processors 관련 문제를 수정했습니다. [#8272](https://github.com/ClickHouse/ClickHouse/pull/8272) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* `CMakeLists.txt`를 간소화하기 위해 `tcmalloc` 지원을 제거했습니다. [#8310](https://github.com/ClickHouse/ClickHouse/pull/8310) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 릴리스용 gcc 빌드에서는 이제 `libstdc++` 대신 `libc++`를 사용합니다. 최근까지 `libc++`는 clang에서만 사용되었습니다. 이 변경으로 빌드 구성의 일관성과 이식성이 향상됩니다. [#8311](https://github.com/ClickHouse/ClickHouse/pull/8311) ([alexey-milovidov](https://github.com/alexey-milovidov))
* MemorySanitizer 빌드에서 ICU 라이브러리를 사용할 수 있도록 했습니다. [#8222](https://github.com/ClickHouse/ClickHouse/pull/8222) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `CapNProto` 라이브러리 경고를 억제했습니다. [#8224](https://github.com/ClickHouse/ClickHouse/pull/8224) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `tcmalloc`는 더 이상 지원되지 않으므로 관련 코드의 예외 처리를 제거했습니다. [#8225](https://github.com/ClickHouse/ClickHouse/pull/8225) ([alexey-milovidov](https://github.com/alexey-milovidov))
* CI 커버리지 작업에서 커버리지 보고서를 저장할 수 있도록 server를 정상적으로 종료합니다. 이렇게 하면 최근 발생하던 불완전한 커버리지 보고서 문제가 해결됩니다. [#8142](https://github.com/ClickHouse/ClickHouse/pull/8142) ([alesapin](https://github.com/alesapin))
* `Float64` 및 `UInt64` 값에 대한 모든 코덱의 성능 테스트. [#8349](https://github.com/ClickHouse/ClickHouse/pull/8349) ([Vasily Nemkov](https://github.com/Enmk))
* `termcap`은 사실상 Deprecated 상태이며 여러 문제(예: "up" cap 누락, 여러 줄 대신 `^J`가 에코되는 문제)를 일으켰습니다. `terminfo` 또는 함께 제공되는 `ncurses`를 사용하십시오. [#7737](https://github.com/ClickHouse/ClickHouse/pull/7737) ([Amos Bird](https://github.com/amosbird))
* `test_storage_s3` 통합 테스트를 수정했습니다. [#7734](https://github.com/ClickHouse/ClickHouse/pull/7734) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* 실제로 디스크에 쓰지 않고도 지정된 포맷 파일에 block을 삽입할 수 있도록 `StorageFile(<format>, null) `을 지원합니다. 이는 성능 테스트에 필요합니다. [#8455](https://github.com/ClickHouse/ClickHouse/pull/8455) ([Amos Bird](https://github.com/amosbird))
* 테스트별 실행 시간을 출력하는 인수 `--print-time`을 기능 테스트에 추가했습니다. [#8001](https://github.com/ClickHouse/ClickHouse/pull/8001) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* RPN을 평가하는 동안 `KeyCondition`에 assert를 추가했습니다. 이로써 gcc-9에서 발생하던 경고가 해결됩니다. [#8279](https://github.com/ClickHouse/ClickHouse/pull/8279) ([alexey-milovidov](https://github.com/alexey-milovidov))
* CI 빌드에서 cmake 옵션을 출력하도록 했습니다. [#8273](https://github.com/ClickHouse/ClickHouse/pull/8273) ([Alexander Kuzmenkov](https://github.com/akuzm))
* 일부 용량이 큰 라이브러리의 디버그 정보를 생성하지 않도록 했습니다. [#8271](https://github.com/ClickHouse/ClickHouse/pull/8271) ([alexey-milovidov](https://github.com/alexey-milovidov))
* `log_to_console.xml`이 대화형인지 여부와 관계없이 항상 stderr로 로그를 기록하도록 변경했습니다. [#8395](https://github.com/ClickHouse/ClickHouse/pull/8395) ([Alexander Kuzmenkov](https://github.com/akuzm))
* `clickhouse-performance-test` 도구에서 미사용 기능 일부를 제거했습니다. [#8555](https://github.com/ClickHouse/ClickHouse/pull/8555) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 이제 해당 `clang-X` 버전에 맞는 `lld-X`도 함께 검색하도록 했습니다. [#8092](https://github.com/ClickHouse/ClickHouse/pull/8092) ([alesapin](https://github.com/alesapin))
* Parquet 빌드 개선. [#8421](https://github.com/ClickHouse/ClickHouse/pull/8421) ([maxulan](https://github.com/maxulan))
* GCC 경고 추가 [#8221](https://github.com/ClickHouse/ClickHouse/pull/8221) ([kreuzerkrieg](https://github.com/kreuzerkrieg))
* 이제 Arch Linux용 패키지로 클라이언트뿐만 아니라 ClickHouse 서버도 실행할 수 있습니다. [#8534](https://github.com/ClickHouse/ClickHouse/pull/8534) ([Vladimir Chebotarev](https://github.com/excitoon))
* processors 관련 테스트를 수정했습니다. 사소한 성능 개선을 적용했습니다. [#7672](https://github.com/ClickHouse/ClickHouse/pull/7672) ([Nikolai Kochetov](https://github.com/KochetovNicolai))
* contrib/protobuf를 업데이트했습니다. [#8256](https://github.com/ClickHouse/ClickHouse/pull/8256) ([Matwey V. Kornilov](https://github.com/matwey))
* 새해를 기념해 c++20으로 전환할 준비를 했습니다. "C++의 포스가 ClickHouse와 함께하기를." [#8447](https://github.com/ClickHouse/ClickHouse/pull/8447) ([Amos Bird](https://github.com/amosbird))

<div id="experimental-feature">
  #### 실험적 기능
</div>

* 실험적 설정 `min_bytes_to_use_mmap_io`를 추가했습니다. 이 설정을 사용하면 커널에서 사용자 공간으로 데이터를 복사하지 않고 큰 파일을 읽을 수 있습니다. 기본적으로는 비활성화되어 있습니다. mmap/munmap은 느리므로 권장 임계값은 약 64 MB입니다. [#8520](https://github.com/ClickHouse/ClickHouse/pull/8520) ([alexey-milovidov](https://github.com/alexey-milovidov))
* 액세스 제어 시스템의 일부로 쿼터를 개편했습니다. 새 테이블 `system.quotas`, 새 함수 `currentQuota`, `currentQuotaKey`, 새 SQL 구문 `CREATE QUOTA`, `ALTER QUOTA`, `DROP QUOTA`, `SHOW QUOTA`를 추가했습니다. [#7257](https://github.com/ClickHouse/ClickHouse/pull/7257) ([Vitaly Baranov](https://github.com/vitlibar))
* 예외를 발생시키는 대신 경고를 표시하고 알 수 없는 설정은 건너뛸 수 있도록 했습니다. [#7653](https://github.com/ClickHouse/ClickHouse/pull/7653) ([Vitaly Baranov](https://github.com/vitlibar))
* 액세스 제어 시스템의 일부로 행 정책을 개편했습니다. 새 테이블 `system.row_policies`, 새 함수 `currentRowPolicies()`, 새 SQL 구문 `CREATE POLICY`, `ALTER POLICY`, `DROP POLICY`, `SHOW CREATE POLICY`, `SHOW POLICIES`를 추가했습니다. [#7808](https://github.com/ClickHouse/ClickHouse/pull/7808) ([Vitaly Baranov](https://github.com/vitlibar))

<div id="security-fix">
  #### 보안 수정
</div>

* `File` 테이블 엔진을 사용하는 테이블에서 디렉터리 구조를 읽을 수 있는 취약점을 수정했습니다. 이 수정으로 [#8536](https://github.com/ClickHouse/ClickHouse/issues/8536) 문제가 해결되었습니다. [#8537](https://github.com/ClickHouse/ClickHouse/pull/8537) ([alexey-milovidov](https://github.com/alexey-milovidov))

<div id="changelog-for-2019">
  ## [2019년 변경 로그](/ko/resources/changelogs/oss/2019)
</div>
