{"id":609,"date":"2018-08-31T18:14:26","date_gmt":"2018-08-31T09:14:26","guid":{"rendered":"https:\/\/ito-u-oti.com\/?p=609"},"modified":"2018-08-31T18:14:26","modified_gmt":"2018-08-31T09:14:26","slug":"post-609","status":"publish","type":"post","link":"https:\/\/ito-u-oti.com\/?p=609","title":{"rendered":"\u3010spring batch\u3011BATCH_STEP_EXECUTION\u3078\u306e\u7d50\u679c\u683c\u7d0d\u6642\u306b\u30a8\u30e9\u30fc\uff08DataIntegrityViolationException\uff09"},"content":{"rendered":"<h2 id=\"outline__1\">\u4e8b\u8c61<\/h2>\n<p>\u3010spring batch\u3011BATCH_STEP_EXECUTION\u3078\u306e\u7d50\u679c\u683c\u7d0d\u6642\u306b\u30a8\u30e9\u30fc\uff08DataIntegrityViolationException\uff09<\/p>\n<h2 id=\"outline__2\">\u30a8\u30e9\u30fc\u5185\u5bb9<\/h2>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n&#x5B;2018\/06\/11 15:50:04] &#x5B;main] &#x5B;o.s.b.f.x.XmlBeanDefinitionReader] &#x5B;INFO ] Loading XML bean definitions from class path resource &#x5B;org\/springframework\/jdbc\/support\/sql-error-codes.xml]\r\n&#x5B;2018\/06\/11 15:50:04] &#x5B;main] &#x5B;o.s.j.s.SQLErrorCodesFactory] &#x5B;INFO ] SQLErrorCodes loaded: &#x5B;DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase, Hana]\r\n&#x5B;2018\/06\/11 15:50:04] &#x5B;main] &#x5B;o.s.b.c.s.AbstractStep] &#x5B;ERROR] Encountered an error saving batch meta data for step hoge.step01 in job hoge. This job is now in an unknown state and should not be restarted.\r\norg.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL &#x5B;UPDATE BATCH_STEP_EXECUTION set START_TIME = ?, END_TIME = ?, STATUS = ?, COMMIT_COUNT = ?, READ_COUNT = ?, FILTER_COUNT = ?, WRITE_COUNT = ?, EXIT_CODE = ?, EXIT_MESSAGE = ?, VERSION = ?, READ_SKIP_COUNT = ?, PROCESS_SKIP_COUNT = ?, WRITE_SKIP_COUNT = ?, ROLLBACK_COUNT = ?, LAST_UPDATED = ? where STEP_EXECUTION_ID = ? and VERSION = ?]; DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001, SQLERRMC=null, DRIVER=4.11.77; nested exception is com.ibm.db2.jcc.am.SqlDataException: DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001, SQLERRMC=null, DRIVER=4.11.77\r\n\tat org.springframework.jdbc.support.SQLExceptionSubclassTranslator.doTranslate(SQLExceptionSubclassTranslator.java:82)\r\n\tat org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:73)\r\n\tat org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)\r\n\tat org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:649)\r\n\tat org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:870)\r\n\tat org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:931)\r\n\tat org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:936)\r\n\tat org.springframework.batch.core.repository.dao.JdbcStepExecutionDao.updateStepExecution(JdbcStepExecutionDao.java:244)\r\n\tat org.springframework.batch.core.repository.support.SimpleJobRepository.update(SimpleJobRepository.java:191)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)\r\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)\r\n\tat java.lang.reflect.Method.invoke(Unknown Source)\r\n\tat org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)\r\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)\r\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)\r\n\tat org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)\r\n\tat org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)\r\n\tat org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)\r\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)\r\n\tat org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)\r\n\tat com.sun.proxy.$Proxy11.update(Unknown Source)\r\n\tat org.springframework.batch.core.step.AbstractStep.execute(AbstractStep.java:260)\r\n\tat org.springframework.batch.core.job.SimpleStepHandler.handleStep(SimpleStepHandler.java:148)\r\n\tat org.springframework.batch.core.job.flow.JobFlowExecutor.executeStep(JobFlowExecutor.java:64)\r\n\tat org.springframework.batch.core.job.flow.support.state.StepState.handle(StepState.java:67)\r\n\tat org.springframework.batch.core.job.flow.support.SimpleFlow.resume(SimpleFlow.java:169)\r\n\tat org.springframework.batch.core.job.flow.support.SimpleFlow.start(SimpleFlow.java:144)\r\n\tat org.springframework.batch.core.job.flow.FlowJob.doExecute(FlowJob.java:134)\r\n\tat org.springframework.batch.core.job.AbstractJob.execute(AbstractJob.java:306)\r\n\tat org.springframework.batch.core.launch.support.SimpleJobLauncher$1.run(SimpleJobLauncher.java:135)\r\n\tat org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:50)\r\n\tat org.springframework.batch.core.launch.support.SimpleJobLauncher.run(SimpleJobLauncher.java:128)\r\n\tat org.springframework.batch.core.launch.support.CommandLineJobRunner.start(CommandLineJobRunner.java:362)\r\n\tat org.springframework.batch.core.launch.support.CommandLineJobRunner.main(CommandLineJobRunner.java:592)\r\nCaused by: com.ibm.db2.jcc.am.SqlDataException: DB2 SQL Error: SQLCODE=-302, SQLSTATE=22001, SQLERRMC=null, DRIVER=4.11.77\r\n\tat com.ibm.db2.jcc.am.gd.a(gd.java:668)\r\n\tat com.ibm.db2.jcc.am.gd.a(gd.java:60)\r\n\tat com.ibm.db2.jcc.am.gd.a(gd.java:127)\r\n\tat com.ibm.db2.jcc.am.jn.b(jn.java:2230)\r\n\tat com.ibm.db2.jcc.am.jn.c(jn.java:2213)\r\n\tat com.ibm.db2.jcc.t4.cb.k(cb.java:369)\r\n\tat com.ibm.db2.jcc.t4.cb.a(cb.java:61)\r\n\tat com.ibm.db2.jcc.t4.q.a(q.java:50)\r\n\tat com.ibm.db2.jcc.t4.sb.b(sb.java:226)\r\n\tat com.ibm.db2.jcc.am.kn.oc(kn.java:2930)\r\n\tat com.ibm.db2.jcc.am.kn.b(kn.java:3876)\r\n\tat com.ibm.db2.jcc.am.kn.b(kn.java:4047)\r\n\tat com.ibm.db2.jcc.am.kn.gc(kn.java:743)\r\n\tat com.ibm.db2.jcc.am.kn.executeUpdate(kn.java:722)\r\n\tat org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98)\r\n\tat org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98)\r\n\tat org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:877)\r\n\tat org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:870)\r\n\tat org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:633)\r\n\t... 31 common frames omitted\r\n&#x5B;2018\/06\/11 15:50:04] &#x5B;main] &#x5B;o.s.b.c.l.s.SimpleJobLauncher] &#x5B;INFO ] Job: &#x5B;FlowJob: &#x5B;name=hoge]] completed with the following parameters: &#x5B;{param1=1, param2=2, jsr_batch_run_id=1286}] and the following status: &#x5B;UNKNOWN]\r\n&#x5B;2018\/06\/11 15:50:04] &#x5B;main] &#x5B;o.s.c.s.ClassPathXmlApplicationContext] &#x5B;INFO ] Closing org.springframework.context.support.ClassPathXmlApplicationContext@1565ec2: startup date &#x5B;Mon Jun 11 15:49:57 JST 2018]; root of context hierarchy\r\n<\/pre>\n<h2 id=\"outline__3\">\u539f\u56e0<\/h2>\n<p>JobRepository\u3078\u306e\u4fdd\u5b58\u6642\u306b\u30c6\u30fc\u30d6\u30eb\u306e\u30ab\u30e9\u30e0\u30b5\u30a4\u30ba\u3092\u8d85\u3048\u3066\u3057\u307e\u3046\u305f\u3081\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u3066\u3044\u308b\u3002<\/p>\n<h2 id=\"outline__4\">\u89e3\u6c7a\u7b56<\/h2>\n<p>job-repository\u30bf\u30b0\u306bmax-varchar-length\u5c5e\u6027\u3092\u8ffd\u52a0\u3059\u308b\u3002<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n&lt;job-repository id=&quot;jobRepository&quot;\r\n    data-source=&quot;dataSource&quot;\r\n    transaction-manager=&quot;transactionManager&quot;\r\n    isolation-level-for-create=&quot;SERIALIZABLE&quot;\r\n    table-prefix=&quot;BATCH_&quot;\r\n\tmax-varchar-length=&quot;1000&quot;\/&gt;\r\n<\/pre>\n<h2 id=\"outline__5\">\u53c2\u8003<\/h2>\n<p>\u3053\u3063\u3061\u306f\u30af\u30e9\u30b9\u30d5\u30a1\u30a4\u30eb\u3067\u306e\u3084\u308a\u65b9\u3067\u3059\u3002<br \/>\n\u3010Spring Batch\u3011JobRepository\u3078\u306e\u4fdd\u5b58\u6642\u306b\u30ab\u30e9\u30e0\u306e\u30b5\u30a4\u30ba\u3092\u8d85\u3048\u3066\u3057\u307e\u3046<br \/>\n<a href=\"https:\/\/qiita.com\/sndr\/items\/c853d7e0b4f650b94be4\">https:\/\/qiita.com\/sndr\/items\/c853d7e0b4f650b94be4<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e8b\u8c61 \u3010spring batch\u3011BATCH_STEP_EXECUTION\u3078\u306e\u7d50\u679c\u683c\u7d0d\u6642\u306b\u30a8\u30e9\u30fc\uff08D [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":93,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[87,139,10],"class_list":["post-609","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-error-bugs","tag-batch","tag-jobrepository","tag-spring"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/posts\/609","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=609"}],"version-history":[{"count":1,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/posts\/609\/revisions"}],"predecessor-version":[{"id":610,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/posts\/609\/revisions\/610"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=\/wp\/v2\/media\/93"}],"wp:attachment":[{"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=609"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=609"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ito-u-oti.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}