회사에서 개발을 하던 도중 한 테이블의 특정 컬럼이 잘못되었다는 것을 발견했었다. 해당 컬럼이 잘못 들어간 것을 확인하고 나서 바로잡기 위해서 migration 스크립트를 만들어서 별도의 프로세스로 돌렸는데 DEAD_LOCK이 발생하면서 트랜잭션이 깨지는 문제가 발생하였다. 프로세스 A : 초단위로 a, b, c 테이블에 insert or update 하는 역할 + temp table 을 create 하고 데이터를 insert 했다가 d 테이블에 insert 하는 역할 프로세스 B : a 테이블을 처음부터 N개씩 읽고 필요한 데이터를 b에 insert or update 하는 역할 -> b 테이블에서 잘못 들어간 특정 컬럼을 바로잡기 위해서 프로세스 B를 돌리다가 DEAD_LOCK이 발생하면서 프로세스 A..