본문 바로가기
Data PipeLine/Debezium

[Debezium] 1.9 Release Note 주요 내용 정리

by 연습장이 2024. 1. 21.
728x90
반응형

목적

  최신 버전 업그레이드 전, 영향도 평가하기 위함

 

툴별 버전별 호환성 표

Java 11+
Kafka Connect 1.x, 2.x, 3.x
MySQL Database: 5.7, 8.0.x
Driver: 8.0.28
MongoDB Database: 3.2, 3.4, 3.6, 4.0, 4.2, 4.4, 5.0
Driver: 4.3.3
PostgreSQL Database: 10, 11, 12, 13, 14
Plug-ins: decoderbufs, pgoutput
Driver: 42.3.5
Oracle Database: 12c, 19c, 21c
Driver: 12.2.0.1, 19.8.0.0, 21.1.0.0
SQL Server Database: 2017, 2019
Driver: 9.4.1.jre8
Cassandra 3 Database: 3.11.12
Driver: 3.11.12
Cassandra 4 Database: 4.0.2
Driver: 4.14.0
Db2 Database: 11.5
Driver: 11.5.0.0
Vitess Database: 12.0.x
Driver: 12.0.0*
* See the Vitess Connector documentation for limitations when using the connector with earlier Vitess versions

 

Release Note 요약

Release 1.9.8.Final

Kafka 호환성

  • 카프카 커넥트 3.2.0, 카프카 브로커 3.2.0와 호환됨

Breaking changes

  • -

New Features 

  • 새로운 테이블로 pg에 존재하는 publication은 갱신되지 않음
  • REGEXP_LIKE 합연산을 감소하여 LogMiner 쿼리 성능이 개선됨
  • "Cannot continue the execution because the session is in the kill state" 예외에 대해 SQL Server 타스크를 재시작함
  • Pg 16 stand-by로부터 로지컬 디코딩을 지원함

Fixes

  • 다른 컬렉션에 있지만 같은 네임인 필드에 대해 MongoDB 커넥터의 필드 예외 설정이 제대로 동작하지 않는 버그가 수정됨
  • 오라클 소스 커넥터 내 테이블의 스냅샷 동안 NullPointerException 예외가 발생하는 버그가 수정됨

Other changes

  • -


Release 1.9.7.Final

Kafka 호환성

  • 카프카 커넥트 3.2.0, 카프카 브로커 3.2.0와 호환됨

Breaking changes

  • -

New Features 

  • MySql 에러핸들러가 SocketException을 처리하도록 함

Fixes

  • ORA-01289: cannot add duplicate logfile 버그가 수정됨
  • 보류중인 트랜잭션에 대해 스냅샷을 누락하는 버그가 수정됨
  • lob.enabled가 true일 때 Null값으로 된 unique index가 예외를 던지는 버그가 수정됨
  • MySQL 커넥터가 create view 구문을 파싱하는데 실패하는 버그가 수정됨
  • 디비지움 서버 1.9.6이 9.4.1 대신 MSSQL JDBC 7.2.2 버전을 사용하는 버그가 수정됨
  • index hints 관련하여 DDL 문 파싱 예외가 발생하는 버그가 수정됨
  • collation을 사용할 때 오라클 SQL 파싱 에러가 발생하는 버그가 수정됨

Other changes

  • SQL Server 커넥터 doc가 다중 타스크 지원을 언급하도록 함


Release 1.9.6.Final

Kafka 호환성

  • 카프카 커넥트 3.2.0, 카프카 브로커 3.2.0와 호환됨

Breaking changes

  • -

New Features 

  • 디비지움 서버 컨슈머로부터 디비지움 메트릭을 읽음
  • DB2 스냅샷 모드에 INITIAL_ONLY를 추가함
  • 스트리밍 중에 커넥터에 의해 지원되지  않는비관계형 테이블은 자연스럽게 건너뛰도록 함
  • alter table 구문에서 stats_sample_pages=default 세팅이 지원됨
  • kill 구문에서 any 표현을 사용할 수 있는 지원이 추가됨

Fixes

  • 증분 스냅샷 이벤트의 소스 정보가 잘못된 데이터를 추출하는 버그가 수정됨
  • 레디스 싱크 config 속성이 DB history를 전달할 수 없는 버그가 수정됨
  • tableMapEventByTableId에 의해 야기된 EventDeserializer 내 메모리 누수가 수정됨
  • pg에서 파티션된 부모 테이블에 대한 증분 스냅샷이 동작하지 않는 버그가 수정됨
  • pk가 수정된 후 소스와 싱크 사이에 lob 타입 데이터가 일관적이지 않는 버그가 수정됨
  • MySQL 8.x에서 부호가 없는 tinyint 변환이 실패하는 버그가 수정됨
  • 시스템과 비시스템을 기반으로 unique 인덱스가 컬럼을 생성하면 NullPointerException 예외가 발생하는 버그가 수정됨
  • (MongoDB과 호환되는) AWS 다큐먼트DB 연결이 실패하는 버그가 수정됨
  • 카산드라 4 커넥터가 1.9.4 릴리즈로 동작하지 않고 1.9.2 릴리즈로 동작하는 버그가 수정됨
  • CURRENT_TIMESTAMP에 대해 timestamp/date/time 타입에 대해 부정확한 값을 반환한다는 org.postgresql.util.PGSQLException  예외가 수정됨
  • 카프카 history 토픽 내 rename 문을 파싱할 때 "previousid" 속성을 누락하는 버그가 수정됨
  • plugable DB 지원으로 오라클을 사용할 때 signal.data.collection를 사용하여 DB명을 명확하게 함
  • OffsetStore가 완전히 시작하는데 실패하면 중지 되지 않는 버그가 수정됨
  • 중첩된 배열이 아무 엘리먼트가 없을 경우 mongodb 다큐먼트에서 kafka 커넥트 스키마로의 변환이 실패하는 버그가 수정됨
  • 오라클 RAC 모드의 같은 스레드에 대해 중복된 SCN이 올바르게 처리되지 않는 버그가 수정됨
  • sqlserver 문서에 오타를 수정함
  • postgresql 문서에 오타를 수정함
  • 따옴표를 포함하여 TABLESPACE 항목을 사용하여 파싱하면 인덱스 생성문이 실패하는 버그가 수정됨
  • 몽고DB 5에서 페일오버가 일어났을 때 디비지움 커넥터 타스크가 재시도 하지 않는 버그가 수정됨
  • "buckets" 키워드를 포함한 DDL 문을 MySQL 커넥터 파서가 파싱하지 못하는 버그가 수정됨
  • MySQL 커넥터 DDL 파서가 모든 권한을 파싱할 수 없는 버그가 수정됨
  • JSON 기반의 Check 제약 조건이 포함된 CREATE TABLE 문이 MultipleParsingExceptions 예외를 던지는 버그가 수정됨
  • max.queue.size.in.bytes가 유효하지 않는 버그가 수정됨
  • 오라클 커넥터가 unavailable.value.placeholder 상수를 누락하여 SELECT_LOB_LOCATOR 이벤트를 파싱하는 버그가 수정됨
  • 오라클 DDL이 MV에 대한 코멘트를 지원하지 않는 버그가 수정됨

Other changes

  • 사용하지 않는 doc 변수를 제거함
  • 오라클 SCAN VIP 지원
  • SMT doc와 예시에 대한 필터를 개선함
  • 오라클 커넥터에 대한 유저 가이드 리뷰 코멘트를 등록함
  • binary log client를 0.27.2 버전으로 업그레이드함


Release 1.9.5.Final

Kafka 호환성

  • 카프카 커넥트 3.2.0, 카프카 브로커 3.2.0와 호환됨

Breaking changes

  • -

New Features 

  • expand.json 모드 내 이벤트 라우터의 문서를 올바르게 함

Fixes

  • 디비지움 서버에서 pg 소스를 사용하여 데이터 중복 문제가 발생하는 버그가 수정됨
  • 오라클 rac 설치에 대한 SCN 중복이 잘못 처리되는 버그가 수정됨 
  • 오라클 커넥터가 새로운 lob 데이터를 얻게되어도 commit_scn이 변화하지 않는 버그가 수정됨
  • database.history.store.only.captured.tables.ddl 파라미터가 로그를 억제하지 못하는 버그가 수정됨
  • 디비지움 서버가 에저 이벤트 허브에 연결을 실패하는 버그가 수정됨
  • unique 인덱스로서 추상적인 데이터 타입을 사용하여 생성된 테이블의 관계형 모델에 대해 스냅샷이 실패하는 버그가 수정됨
  • MySQL 커넥터 컬럼 해쉬 v2가 동작하지 않는 버그가 수정됨

Other changes

  • maven 프로파일 없이 기본적으로 오라클 커넥터를 빌드함
  • 아파치 카프카를 3.2.0로 업그레이드함


Release 1.9.4.Final

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • 오라클 레코드에 이벤트 scn을 포함함

Fixes

  • offsets로부터 LSN의 잘못된 로딩을 수정함
  • 리네임된 후에도 DB history recovery가 이전 테이블을 유지하고 있는 버그가 수정됨
  • 주어진 Decimal 스키마에 대해 BigDecimal이 scale 값을 잘못 매칭하는 버그가 수정됨
  • 디비지움이 LSN으로 전혀 시작하지 못하는 버그가 수정됨
  • fk로 컬럼을 추가하는 ALTER TABLE 문에 대해 오라클 커넥터가 실패하는 버그가 수정됨
  • 부호가 없는 tinyint(1) 데이터 타입을 boolean으로 형변환할 수 없는 버그가 수정됨
  • charcater set influencers가 default 값을 적절히 파싱할 수 없는 버그가 수정됨
  • 오라클 LogMiner가 삭제된 아카이브 로그 내 진행중인 트랜잭션에서 실패할 수도 있는 버그가 수정됨
  • 노드가 다운되면 디비지움이 replicaset에 연결을 실패할 수 있는 버그가 수정됨
  • 몽고DB 커넥터로 스냅샷을 뜨는 동안 데드락이 발생되는 버그가 수정됨

Other changes

  • -


Release 1.9.3.Final

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • mongodb 커넥터가 binary payloads를 디코딩할 수 있도록 함
  • 디비지움 오라클 커넥터 내 하트비트 프로세스에 하트비트 테이블을 포함함
  • default 값 스키마 항목을 빌드하면서 더 유용한 예외를 노출하도록 함

Fixes

  • 리밸런싱 후에 커넥터가 스트리밍을 멈추는 버그가 수정됨
  • "snapshot.fetch.size": 20000 으로 커넥터 설정을 하면 MySQL 커넥터 증분 스냅샷이 datetime 컬럼 길이 파싱에 실패하는 버그가 수정됨
  • Postgres 포트를 변경할 때 디비지움 MCS 에러가 발생하는 버그가 수정됨
  • LongMiner로 ffffffff로 끝나는 트랜잭션 id 때문에 디비지움이 변경 이벤트를 되돌리는데 실패하는 버그가 수정됨
  • bingint 컬럼에 대해 0.000000000000000000 기본 값을 파싱할 수 없는 버그가 수정됨

Other changes

  • 커스텀 컨버터에 대한 doc를 재설계함
  • pg 커넥터에 대한 xmin.fetch.interval.ms 속성을 문서화함


Release 1.9.2.Final

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • 현재 사용중인 배치 사이즈를 비교하여 LogMiner 배치 사이즈를 조정함

Fixes

  • 커넥터가 java.lang.ArrayIndexOutOfBoundsException 예외를 던지는 버그가 수정됨
  • 디비지움 서버 설정 속성이 올바르게 반영되지 않는 버그가 수정됨

Other changes

  • -


Release 1.9.1.Final

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • -

Fixes

  • 디비지움이 오라클 12.1 버전에 대해 잘못된 LCR 포맷을 사용하는 버그가 수정됨
  • 서버 시작이 성공적이지 못한 후에 멈추면 오라클 커넥터가 NullPointerException 예외를 던지는 버그가 수정됨
  • BySQL 커넥터가 CTE 문을 파싱할 수 없는 버그가 수정됨
  • 홑따옴표로 된 clob가 파서 예외를 던지는 버그가 수정됨
  • 컬럼 목록이 없이 references_cluase에 대해 오라클 DDL 파서가 실패하는 버그가 수정됨

Other changes

  • 커넥터 잡에 대해 트리거 잡을 생성함
  • OracleOffsetContextTest가 LogMiner에 의해서만 범위가 지정되도록 함


Release 1.9.0.Final

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • 모든 레디스 연결 구조에 대한 지원을 추가함
  • OffsetStore와 DatabaseHistory 어댑터에 대한 SINK 설정 속성을 전달함

Fixes

  • MySQL 커넥터가 default 정수형 값을 decimal로 표현하는 것을 파싱하는 것에 실패하는 버그가 수정됨
  • 카프카 토픽 목록이 예외를 던지는 버그가 수정됨
  • 오라클 메트릭에 대한 doc 내 스펠링에 대한 오타를 수정함
  • 디비지움 서버 1.9가 1.8 offset을 전달받을 때 시작에 실패하는 버그가 수정됨

Other changes

  • SQL Server 커넥터에 대한 "schema.include.list"/"schema.exclude.list"를 문서화함
  • 다른 커넥터와 같이 오라클에 대한 decimal_handling.mode doc를 정렬함
  • postgres 드라이버 버전을 42.3.3으로 업그레이드함


Release 1.9.0.CR1

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • 카산드라 4.x 버전에 대한 지원이 추가됨
  • database history로부터 더미 이벤트는 제외함
  • 속성과 관련된 kafka-connect-offset을 문서화함
  • 레디스 내 database hstory를 저장하고 로드함
  • 다중 파티션 커넥터에 대해 로깅 내용에 task id와 파티션을 추가함
  • 일부 테이블을 필터하면 tatbleId는 null로 로깅되도록 함
  • pg 커넥터가 스냅샷 단계에서 유익하지 않은 로그도 프린트함

Fixes

  • DROP 컬럼 쿼리를 처리하는 동안 java.lang.NullPointerException 에러가 발생하는 버그가 수정됨
  • MySQL SSL 인증을 활성화할 때 keystore/truststore를 읽을 수 없는 버그가 수정됨
  • 존재하는 오라클 커넥터에 새로운 테이블을 추가하면 ParsingException이 발생하는 버그가 수정됨

Other changes

  • 에러를 던지는 대신 DML 복제 이벤트를 로깅함
  • SQL Server 커넥터 속성을 검토함
  • 예시 가이드에서 이전에 사용하던 --zookeeper 옵션을 제거함
  • JDBC 설정 값에 대해 Configuration 대신 JdbcConfiguration을 사용함
  • 시스템 변수에 truststore/keystore 파라미터를 설정하지 않음


Release 1.9.0.Beta1

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • -

New Features 

  • 트랜잭션 시작 이벤트 오류를 처리함

Fixes

  • "log.mining.view.fetch.size" 속성이 작동하지 않는 버그가 수정됨
  • DB2에 대해 연결 유효성 검사가 실패하는 버그가 수정됨

Other changes

  • 오라클 커넥터에 대한 내부적인 FAQ를 생성함
  • max_replication_slots에 대한 doc를 개선함
  • MySQL JDBC 드라이버를 8.0.28 버전으로 업그레이드함


Release 1.9.0.Alpha2

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • 인큐베이팅 중인 Vitess 커넥터에 대해 BLOBK, BINARY 컬럼 타입의 매핑이 문자열에서 바이트로 변경됨

New Features 

  • KAFKA_QUERY_TIMEOUT을 설정할 수 있도록 함
  • 클러스터 레벨에서 MySQL history topic 생성 시 DESCRIBE_CONFIGS를 필요로 하게 됨
  • 디비지움 스키마 생성기를 확장함

Fixes

  • 테이블 내 Database.include.list 결과가 두번 반환되는 버그가 수정됨
  • update 이벤트 내 JSON 데이터가 손상되는 버그가 수정됨

Other changes

  • postgres 드라이버를 42.3.2 버전으로 업그레이드함


Release 1.9.0.Alpha1

Kafka 호환성

  • 카프카 커넥트 3.1.0, 카프카 브로커 3.1.0와 호환됨

Breaking changes

  • pg 커넥터에서 사용되는 wal2json 논리적 디코딩 플러그인에 대한 지원이 만료됨. 따라서 사용자는 pgoutput이나 decoderbufs 플러그인으로 이동해야 함. 디비지움 2.0에서 wal2json 플러그인이 사라질 예정임

New Features 

  • 디비지움 서버 PubSub 커넥터에 대해 추가적인 설정 옵션을 허용함
  • chagne event source 메트릭에 대한 인터페이스와 default implementations를 도입함
  • 로그에 대해 커넥터 타스크 파티션을 읽을 수 있도록 함
  • MySqlParser 내에 사용하지 않는 괄호를 제거함
  • 오라클 커넥터에 대한 DB 허용 권한을 문서화함

Fixes

  • 활성화할 수 있어도 JSON Payload가 확장될 수 없는 버그가 수정됨
  • 캐시명 내에 "_"가 있으면 Ifinispan이 동작하지 않는 버거그가 수정됨

Other changes

  • Pg 10버전을 기본적으로 사용함
  • Pg JDBC 드라이버를 42.3.1로 업데이트함
  • log.mining.log.file.query.max.retries 설정 속성을 제거함
  • SQL Server 드라이버를 9.4로 업그레이드함
  • 카프카를 3.1.0 버전으로 업그레이드함
  • 서버 변환 속성이 class 보다 type을 참조하도록 함

 

참고

 
728x90
반응형