2010-06-09 4 views
1

HI, 기록의 내가 함정에 그 기록을 필요로하고 나의 실패 기록 maintanance 테이블에 그 로그 삽입 실패 할 때 한 번에 기록의 배치를 삽입하려고는 삽입을 계속

스피 삽입을 계속해야합니다. 이 작업을 수행하는 방법에 대해 친절하게 도움을주십시오.

+0

어떤 프로그래밍 언어를 사용하고 있습니까? –

+0

java 및 db는 SAVEPOINT에 대해 postgresql – apn

답변

0

스프링 또는 EJB 컨테이너를 사용하는 경우 아주 잘 작동하는 간단한 트릭이 있습니다. logWarning (String message) 메소드를 사용하여 LogService를 제공하십시오. 이 메소드는 REQUIRES_NEW 트랜잭션 설정으로 주석을 달고 구성해야합니다.

그렇다면 API 호출을 사용하여 시뮬레이션해야합니다. 트랜잭션을 커밋하기 전에 트랜잭션을 시작하는 메소드를 입력 할 때 로깅에 대한 다른 연결을 엽니 다.

삽입을 위해 트랜잭션을 사용하지 않을 때 기본적으로 대부분의 데이터베이스가 자동 커밋으로 실행되고 모든 명령문이 끝나면 커밋하기 때문에 실제로 수행해야 할 특별한 작업은 없습니다.

1

This 관심을 가질만한 곳.

+0

+1입니다. 또한, 당신은 이것을 보길 원할 것입니다 : http://stackoverflow.com/questions/2370328/continuing-a-transaction-after-primary-key-violation-error/2372997#2372997 제 의사 코드가 당신이 설명하는 유스 케이스. –

관련 문제