인프런 커뮤니티 질문&답변

jwleesh님의 프로필 이미지
jwleesh

작성한 질문수

카프카 완벽 가이드 - 코어편

텍스트 추가시 메시지 전송하는 Producer 및 FileToDBConsumer의 통합 구동 테스트

OrderDBHandler 에서 데이터가 다 안들어가고 누락이 됩니다.

작성

·

251

0

원인을 찾아보니

insertOrders 메소드에서

pstmt.executeUpdate();

이 부분이 문제입니다.

대신에

pstmt.executeBatch();

이렇게 하니

누락된 데이터가 없이

다 들어갑니다.

 

 

 

답변 2

0

jwleesh님의 프로필 이미지
jwleesh
질문자

무조건 누락이 생기길래 혹시나 프로듀서에서 누락된게

있나 봤더니 아니었고, 컨슈머에서도 누락이 된거는

아니었습니다.

그래서 DB에 등록할때 누락이 된거를 찾았구요

여러번 DROP 도 해보고 하면서 테스트를 해봤었습니다.

 

PreparedStatement 에서

executeUpdate() 는 단일 업데이트에 사용되고,

executeBatch() 는 배치로 추가된 여러 명령을 실행하는 데

적합하다고 알고 있습니다.

그래서 그런거 같습니다.

 

jdbc 도 저는 현재 최신버전인

org.postgresql:postgresql:42.7.3 버전을 사용하고 있는데요

혹시나 그래서 차이가 있는건가 싶습니다.

권 철민님의 프로필 이미지
권 철민
지식공유자

잘 알겠습니다.

일단 저도 해당 버전으로 다시 테스트 해볼께요

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

음, 좋은 정보 감사합니다. 근데 저는 기존 코드로 별 문제없이 잘 수행이 됩니다.. 기존 데이터를 다 DB에서 DROP 해보시고 다시 해보시면 어떨까 싶습니다.

감사합니다.

jwleesh님의 프로필 이미지
jwleesh

작성한 질문수

질문하기