728x90
반응형
목적
카프카 브로커의 버전 업그레이드 시 발생할 수 있는 사이드 이펙트를 사전파악 및 대응, 신기술에 대한 도입 검토하기 위함
Release note Clause
3.1.0
Notable Changes
- 아파치 카프카가 자바 17 버전을 지원함
- 아래 메트릭이 만료되어 다음으로 사용해야 함
- bufferpool-wait-time-total > bufferpool-wait-time-ns-total
- io-waittime-total > io-wait-time-ns-total
- iotime-total > io-time-ns-total
- eager 리밸런싱 프로토콜이 이제 제거됨. 따라서, 카프카 브로커 2.4 이전 버전을 사용하는 유저는 2.4 - 3.1 사이 버전을 한번 경우해야 함
New Feature
- OIDC에 대한 지원으로 SASL/OAUTHBEARER를 확장함
Improvement
- 톰스톤이 영원히 생존할 수 있도록함
- release 스크립트를 Python3로 업그레이드함
- 미러메이커2 내부 토픽 네이밍 변환을 제어하기 위해 추가적인 설정을 추가함
- 클래스 변환 예외에 대해 에러 메시지를 개선함
- kafka-acls.sh 내 --authorizer 옵션을 만료하고 제거함
- 토픽ID를 사용할 때 Fetch Sessions를 다시 평가함
- millis와 nanos로 측정된 메트릭 지연을 구분함
- 카프카 스트림즈 내 EAGER 리밸런싱을 만료함
Bug
- 커넥터에 대해 생성된 타스크가 없는 버그가 수정됨
- 컨슈머가 같은 이름으로 토픽을 삭제하고 재생성하는 것을 잘못 처리하는 버그가 수정됨
- 싱크 타스크 역직렬화 에러에 대한 과도한 로깅이 발생하는 버그가 수정됨
- Fetch requests 내 forgotten Topics가 토픽ID를 잘못 사용할 수 있는 버그가 수정됨
- Fetch path에 대해 토픽ID가 메타데이터 캐시로 충분히 빠르게 전파되지 않는 버그가 수정됨
- 인스턴스를 구현한 KeyValueIterator가 닫아지지 않아 리소스 누수가 발생하는 버그가 수정됨
- 토픽이 삭제처리 되고 같은 이름으로 생성시 토픽이 이미 있다고 발생하는 버그가 수정됨
- LogCleaner가 과거의 HWM을 클린할 수 있는 버그가 수정됨
- 할당자명이 동일하면 잘못된 할당자가 선택될 수 있는 버그가 수정됨
- 일부 파티션을 사용할 때 KTable과 KTAble의 외래키 조인이 이벤트를 잃어버리는 버그가 수정됨
- 컨트롤러에 의해 더 보낼게 없어도 PartitionFetchState로부터 토픽ID가 지워지지 않는 버그가 수정됨
- 미러메이커2가 커넥트의 내부토픽을 미러링하는 버그가 수정됨
- KRaft createTopics와 incrementalAlterConfigs의 일부 문제가 수정됨
- topicIdsToNames와 TopicNamesToIds가 불필요하게 맵을 할당하는 버그가 수정됨
Task
- RocksDB를 6.22.1.1로 업그레이드함
Test
- stickyAssignor에 대한 테스트 범위 개선
Sub-task
- RemoteLogMetadataManager에 대한 토픽 기반 구현 수행
- 토픽ID를 사용하여 토픽 설명을 지원함
- Log Layer를 Log와 LocalLog로 나눔
- 각 파티션에 대해 소비된 원격 로그 메타데이터에 대한 파일 기반 캐시를 추가하여, 브로커 재시작 시 다시 소비되는 것을 방지함
- Log를 UnifiedLog로 개명함
- ActiveBrokerCount와 FencedBrokerCount 메트릭을 주키퍼 컨트롤러에 추가함
- ActiveBorkerCount와 FencedBorkerCount 메트릭을 KRaft 컨트롤러에 추가함
3.1.1
Notable Changes
- 충돌하는 설정이 없다면 프로듀서의 idempotence가 기본적으로 활성화됨
- 광범위한 브로커 버전을 균일하게 지원하기 위해 기본적으로 모든 프로듀서에 대해 idempotent 동작이 비활성화됨. 사용자는 일부 혹은 모든 프로듀서에 이 기능을 활성화할 수 있고 향후에는 기본적으로 활성화되게 할 것임
- 카프카는 보안 요건으로 인해 log4j 와 slf4j-log4j12를 reload4j와 slf4j-reload4j로 교체함
New Feature
- -
Improvement
- 자바에서 uuid 비교를 할 때 '==' 대신 'equals'를 사용하도록 함
Bug
- CHECKING_API_VERSIONS 내에서 카프카 프로듀서 노드가 멈추는 버그가 수정됨
- 타임아웃 후에 initTransactions의 재시도가 잘못된 전환을 야기할 수 있는 버그가 수정됨
- TLS1.3 버전에서 브로커가 간헐적으로 연결이 끊어지는 버그가 수정됨
- 토픽 파티션 추가에 KRaft가 잘못된 권한을 사용하는 버그가 수정됨
- 커넥터 재시작이 중복된 타스크를 야기하는 버그가 수정됨
- left join이 경우에 따라 stream-stream 조인에서 여전히 잘못된 결과를 생성하는 버그가 수정됨
- 프로듀서가 올바른 파티션을 트랜잭션에 추가하는 것을 실패할 수도 있는 버그가 수정됨
Task
- -
Test
- -
Sub-task
- -
3.1.2
Notable Changes
- -
New Feature
- -
Improvement
- -
Bug
- OAuth 클라이언트 토큰 리프레쉬가 SASL 확장에서 실패할 수 있는 버그가 수정됨
Task
- -
Test
- -
Sub-task
- -
참고
- 3.1.0 Release note doc
archive.apache.org/dist/kafka/3.1.0/RELEASE_NOTES.html - 3.1.1 Release note doc
archive.apache.org/dist/kafka/3.1.1/RELEASE_NOTES.html - 3.1.2 Release note doc
archive.apache.org/dist/kafka/3.1.2/RELEASE_NOTES.html - 3.1.0 - 3.1.1 Notable Changes doc
Apache Kafka
728x90
반응형
'Data PipeLine > Kafka' 카테고리의 다른 글
[Kafka] 3.4.x Release note 주요 내용 정리 (0) | 2024.02.17 |
---|---|
[Kafka] 3.3.x Release note 주요 내용 정리 (0) | 2024.02.16 |
[Kafka] 3.2.x Release note 주요 내용 정리 (0) | 2024.02.14 |
[Kafka] 3.0.x Release note 주요 내용 정리 (0) | 2024.02.12 |
[Kafka] 2.8.x Release note 주요 내용 정리 (0) | 2024.02.11 |