JPA 실패는 보이는 시점이 서로 다르다

persist method가 정상 반환됐어도 flush·commit에서 constraint가 발생할 수 있다.

실패시점의미
uniqueflush·commitintegrity violation
stale versionflush·commitoptimistic conflict
lazy accesscontext 종료 후loading boundary