'2019/07/03'에 해당되는 글 2건

  1. 2019.07.03 mysql gtid 공부
  2. 2019.07.03 JPA 사용시 debezium에서의 null 출력 현상

mysql gtid 공부

분류없음 2019.07.03 17:29

gtid = source id : transaction id로 구성


source id는 서버 식별자(server_uuid)
transaction_id는 해당 서버에서 커밋된 트랜잭션의 순서에 따라 순차적인 숫자로 결정된다.
예로 첫 번째 트랜잭션은 transaction_id=1이 되고, 동일한 서버에서 열 번째 트랜잭션은 transaction_id=10이 된다.



gtid 설명한 좋은 블로그 : https://minsugamin.tistory.com/entry/MySQL-57-GTID


MySQL 5.7 GTID

GTID(Global Transaction Identifiers) GTID를 사용하게 되면, 각각의 트렌젝션들은 고유한 전역식별자를 갖게 된다 master 서버에서 수행된(commited) 트랜젝션들이 slave 서버(들)에 적용되어 지는 것에대한 추..

minsugamin.tistory.com



Posted by 김용환 '김용환'


JPA를 사용하는 애플리케이션에서 

debezium에 저장된 데이터를 kafka consume할 때 null이 나오는 경우를 확인했다. 


JPA에서 delete 쿼리를 보낼 때 delete record와 null이 나옴



JPA에서 

 update hibernate_sequence set next_val= 501367 where next_val=501366 실행되지만, 

debezium에서 읽을 수 있는 데이터가 아니라 카프카 토픽에 null이 저장된다.

이런 쿼리가 DB에 실행되고 transaction id가 늘어난다.

Posted by 김용환 '김용환'