배치 템플릿+mysql 애러 관련
- 작성자 :
- 최*훈
- 작성일 :
- 2015-06-12 16:41:20
- 조회수 :
- 1,390
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
전자정부프레임워크 배치+ mysql 로해서 만들고 있는데 애러가 발생하여 문의드립니다.
프로젝트 생성시 첨부 되어 있는 mysql ddl 로 테이블을 만들고 가이드를 참고하여
mysql 연동하여 테스트를 진행하는데 애러가 발생합니다..ㅠ
2015-06-12 15:12:40,106 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2015-06-12 15:12:40,137 INFO [org.springframework.jdbc.support.SQLErrorCodesFactory] SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
2015-06-12 15:12:40,152 ERROR [org.quartz.core.JobRunShell] Job quartz-batch.jobDetail threw an unhandled Exception:
org.springframework.dao.DuplicateKeyException: PreparedStatementCallback; SQL [INSERT into BATCH_JOB_INSTANCE(JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION) values (?, ?, ?, ?)]; Duplicate entry '0' for key 'PRIMARY'; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '0' for key 'PRIMARY'
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:245) ~[spring-jdbc-3.2.9.RELEASE.jar:3.2.9.RELEASE]
2번째에 배치가 실행될때 BATCH_JOB_INSTANCE 테이블에 중복된 값을 insert 해서 발생하는
애러라고 생각되는데 이것을 해결하려면 어떻게 해야하나요..ㅠ
그리고 혹시 표준프레임워크로 배치를 구축할때 BATCH_JOB_INSTANCE, BATCH_JOB_EXECUTION 등 몇개 테이블을 꼭 생성해야 하나요? 만약 커스트마이징이 된다면 어느부분을 고쳐야하나요??
프로젝트 생성시 첨부 되어 있는 mysql ddl 로 테이블을 만들고 가이드를 참고하여
mysql 연동하여 테스트를 진행하는데 애러가 발생합니다..ㅠ
2015-06-12 15:12:40,106 INFO [org.springframework.beans.factory.xml.XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2015-06-12 15:12:40,137 INFO [org.springframework.jdbc.support.SQLErrorCodesFactory] SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
2015-06-12 15:12:40,152 ERROR [org.quartz.core.JobRunShell] Job quartz-batch.jobDetail threw an unhandled Exception:
org.springframework.dao.DuplicateKeyException: PreparedStatementCallback; SQL [INSERT into BATCH_JOB_INSTANCE(JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION) values (?, ?, ?, ?)]; Duplicate entry '0' for key 'PRIMARY'; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '0' for key 'PRIMARY'
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:245) ~[spring-jdbc-3.2.9.RELEASE.jar:3.2.9.RELEASE]
2번째에 배치가 실행될때 BATCH_JOB_INSTANCE 테이블에 중복된 값을 insert 해서 발생하는
애러라고 생각되는데 이것을 해결하려면 어떻게 해야하나요..ㅠ
그리고 혹시 표준프레임워크로 배치를 구축할때 BATCH_JOB_INSTANCE, BATCH_JOB_EXECUTION 등 몇개 테이블을 꼭 생성해야 하나요? 만약 커스트마이징이 된다면 어느부분을 고쳐야하나요??
A
안녕하세요. 최세훈님
표준프레임워크 센터 입니다.
1)2번째에 배치가 실행될때 BATCH_JOB_INSTANCE 테이블에 중복된 값을 i^nsert 해서 발생하는
애러라고 생각되는데 이것을 해결하려면 어떻게 해야하나요..ㅠ
> 제공되는 셈플 소스의 로그와 상이 한걸로 봐서는 커스텀 마이징 중 이신걸로 사료 됩니다.
> quartz-batch를 이용하여 작업도중 I^NSERT int0 BATCH_JOB_INSTANCE 실행중 해당 PRIMARY의 데이터가 있어서 에러가 발생하는거 같습니다.
> 2번째 배치가 돌때 중복이 안되도록 로직을 넣어서 처리를 하여야 될꺼 같습니다.
2)그리고 혹시 표준프레임워크로 배치를 구축할때 BATCH_J0B_^INSTANCE, BATCH_J0B_EXECUTION 등 몇개 테이블을 꼭 생성해야 하나요? 만약 커스트마이징이 된다면 어느부분을 고쳐야하나요??
>표준프레임워크의 배치 용도에 따라서 생성 하시면 됩니다.
>커스텀마이징 정책에 따라서 구성하는 부분이 달라질꺼 같습니다.
표준프레임워크 센터 입니다.
1)2번째에 배치가 실행될때 BATCH_JOB_INSTANCE 테이블에 중복된 값을 i^nsert 해서 발생하는
애러라고 생각되는데 이것을 해결하려면 어떻게 해야하나요..ㅠ
> 제공되는 셈플 소스의 로그와 상이 한걸로 봐서는 커스텀 마이징 중 이신걸로 사료 됩니다.
> quartz-batch를 이용하여 작업도중 I^NSERT int0 BATCH_JOB_INSTANCE 실행중 해당 PRIMARY의 데이터가 있어서 에러가 발생하는거 같습니다.
> 2번째 배치가 돌때 중복이 안되도록 로직을 넣어서 처리를 하여야 될꺼 같습니다.
2)그리고 혹시 표준프레임워크로 배치를 구축할때 BATCH_J0B_^INSTANCE, BATCH_J0B_EXECUTION 등 몇개 테이블을 꼭 생성해야 하나요? 만약 커스트마이징이 된다면 어느부분을 고쳐야하나요??
>표준프레임워크의 배치 용도에 따라서 생성 하시면 됩니다.
>커스텀마이징 정책에 따라서 구성하는 부분이 달라질꺼 같습니다.