배치처리 4.0 cubrid DB 설정 시 스케줄러 DB오류
- 작성자 :
- 김*희
- 작성일 :
- 2023-06-16 11:12:22
- 조회수 :
- 768
- 구분 :
- 실행환경 / 4.0
- 진행상태 :
- 완료
Q
배치처리 4.0 을 가지고 작업 진행중입니다.
mariadb와 mysql db로 1차 테스트를 진행하였는데.. DB가 cubrid 로 변경될 예정이라..
cubrid 를 로컬에 설치하여 테스트 진행중입니다.
mariadb와 mysql db에서는 정상적으로 진행되던 배치 스케줄러가 cubrid로 변경 시 오류가 발생합니다.
Job 온라인실행 및 스케줄러시에만 오류가 발생하고, 나머지 기능 CRUD은 모두 정상인거 같습니다.
아래부분도 정상적으로 적용되어 있습니다.
spring batch 에서 cubrid를 지원하지 않기 때문에 유사한 oracle을 databseType으로 지정하는 것으로 알고 있는데..
확인 부탁드립니다.
<!-- cubrid일 경우 다음 jobRepository 사용 -->
<bean id="jobRepository" class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"
p:dataSource-ref="egov.dataSource" p:transactionManager-ref="transactionManager" p:lobHandler-ref="lobHandler"
p:incrementerFactory-ref="cubridDatabaseTypeFactory" p:databaseType="oracle" />
<bean id="cubridDatabaseTypeFactory" class="egovframework.bopr.jdbc.cubrid.incrementer.CubridDataFieldMaxValueIncrementerFactory">
<constructor-arg index="0" ref="egov.dataSource"/>
</bean>
배치처리 4.0 을 가지고 작업 진행중입니다.
mariadb와 mysql db로 1차 테스트를 진행하였는데.. DB가 cubrid 로 변경될 예정이라..
cubrid 를 로컬에 설치하여 테스트 진행중입니다.
mariadb와 mysql db에서는 정상적으로 진행되던 배치 스케줄러가 cubrid로 변경 시 오류가 발생합니다.
Job 온라인실행 및 스케줄러시에만 오류가 발생하고, 나머지 기능 CRUD은 모두 정상인거 같습니다.
아래부분도 정상적으로 적용되어 있습니다.
spring batch 에서 cubrid를 지원하지 않기 때문에 유사한 oracle을 databseType으로 지정하는 것으로 알고 있는데..
확인 부탁드립니다.
<!-- cubrid일 경우 다음 jobRepository 사용 -->
<bean id="jobRepository" class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"
p:dataSource-ref="egov.dataSource" p:transactionManager-ref="transactionManager" p:lobHandler-ref="lobHandler"
p:incrementerFactory-ref="cubridDatabaseTypeFactory" p:databaseType="oracle" />
<bean id="cubridDatabaseTypeFactory" class="egovframework.bopr.jdbc.cubrid.incrementer.CubridDataFieldMaxValueIncrementerFactory">
<constructor-arg index="0" ref="egov.dataSource"/>
</bean>
환경정보
-
- OS 정보 : 윈도우 10
- 표준프레임워크 버전 : 4.0
- JDK(JRE) 정보 : 1.8
- WAS 정보 : 톰캣
- DB 정보 : 큐브리드
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터입니다.
올려주신 설정파일을 보니
/src/main/resources/egovframework/spring/com/context-batch-job-launcher.xml 파일에서
<bean id="jobRepository" class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"
p:dataSource-ref="egov.dataSource" p:transactionManager-ref="transactionManager" p:lobHandler-ref="lobHandler"/>
부분을 사용한 것으로 보입니다.
이 부분과 아래부분을 주석처리 해주시고,
<!-- altibase, tibero DB 사용할 경우 p:databaseType="oracle" 추가 이외에는 제거하고 사용-->
<!-- cubrid일 경우 다음 jobRepository 사용 --> 부분의 주석 부분을 제거하여 적용해보시길 바랍니다.
감사합니다.
표준프레임워크센터입니다.
올려주신 설정파일을 보니
/src/main/resources/egovframework/spring/com/context-batch-job-launcher.xml 파일에서
<bean id="jobRepository" class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"
p:dataSource-ref="egov.dataSource" p:transactionManager-ref="transactionManager" p:lobHandler-ref="lobHandler"/>
부분을 사용한 것으로 보입니다.
이 부분과 아래부분을 주석처리 해주시고,
<!-- altibase, tibero DB 사용할 경우 p:databaseType="oracle" 추가 이외에는 제거하고 사용-->
<!-- cubrid일 경우 다음 jobRepository 사용 --> 부분의 주석 부분을 제거하여 적용해보시길 바랍니다.
감사합니다.