saveAll을 썼는데 insert가 1,000번 나간 이유
정산 배치에서 수천 건을 saveAll로 한 번에 저장하도록 짰습니다. 코드는 한 줄이라 당연히 묶어서 나갈 줄 알았는데, 쿼리 로그를 켜 보니 insert가 건수만큼 개별로 나가고 있었습니다. 1천 건이면 1천 번이었죠. List<Settlement> rows = build(…); // 1,000건 settlementRepository.saveAll(rows); // insert가 1,000번 saveAll은 배치를 보장하지 않는다 saveAll은 그냥 반복해서 저장을 호출하는 편의 메서드일 뿐, 그 자체로 JDBC … 더 읽기