Skip to content

Instantly share code, notes, and snippets.

@steve-ross
Created June 18, 2025 19:25
Show Gist options
  • Save steve-ross/b2e8c760673a08f1a32c994ca7e56deb to your computer and use it in GitHub Desktop.
Save steve-ross/b2e8c760673a08f1a32c994ca7e56deb to your computer and use it in GitHub Desktop.
Banner Ethos Bulk load of 'persons' failure
Picked up JAVA_TOOL_OPTIONS: -Dlog4j1.compatibility=true --add-opens=java.base/java.lang=ALL-UNNAMED
BatchResourceHolder security mode R
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v3.3.3)
2025-06-18T15:12:33.007-04:00 INFO 3415456 --- [ main] c.s.m.bif.banner.BannerBatchProcessor : Starting BannerBatchProcessor using Java 21.0.7 with PID 3415456 (/B390T/app/sct/general/java/gurjbif.jar started by banjob in /B390T/userdata/jobsub)
2025-06-18T15:12:33.013-04:00 INFO 3415456 --- [ main] c.s.m.bif.banner.BannerBatchProcessor : No active profile set, falling back to 1 default profile: "default"
2025-06-18T15:12:34.479-04:00 INFO 3415456 --- [ main] o.s.b.c.c.annotation.BatchRegistrar : Finished Spring Batch infrastructure beans configuration in 7 ms.
2025-06-18T15:12:34.809-04:00 WARN 3415456 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'jobRegistry' of type [org.springframework.batch.core.configuration.support.MapJobRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected into a currently created BeanPostProcessor [jobRegistryBeanPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies.
2025-06-18T15:12:34.897-04:00 INFO 3415456 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : No TaskExecutor has been set, defaulting to synchronous executor.
2025-06-18T15:12:35.377-04:00 INFO 3415456 --- [ main] o.s.b.c.r.s.JobRepositoryFactoryBean : No database type set, using meta data indicating: ORACLE
2025-06-18T15:12:35.383-04:00 INFO 3415456 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : No TaskExecutor has been set, defaulting to synchronous executor.
2025-06-18T15:12:35.751-04:00 INFO 3415456 --- [ main] c.s.m.bif.banner.BannerBatchProcessor : Started BannerBatchProcessor in 4.15 seconds (process running for 6.972)
2025-06-18T15:12:35.754-04:00 INFO 3415456 --- [ main] n.h.banner.ethos.BulkSpringApplication : Bulk Application has been told to run.
2025-06-18T15:12:35.757-04:00 INFO 3415456 --- [ main] n.h.b.e.BulkTransformationInitializer : Initializing bulk transformation.
2025-06-18T15:12:35.757-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting latest tracking data for 11293462
2025-06-18T15:12:35.783-04:00 INFO 3415456 --- [ main] n.h.b.e.bulk.BulkOutputFilePathProvider : Using the system default path for output files: /B390T/userdata/jobsub/
2025-06-18T15:12:35.784-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting extraction tracking data for resource: persons, media type: application/vnd.hedtech.integration.v12.7.0+json, and requestor: EAGLE_ETHOS_USER
2025-06-18T15:12:35.895-04:00 INFO 3415456 --- [ main] n.h.b.e.BulkTransformationInitializer : Initialized with error skip limit set to: 100, and query fetch size set to: 2500
2025-06-18T15:12:35.897-04:00 INFO 3415456 --- [ main] n.h.b.e.BulkTransformationInitializer : Bulk transformation initialization complete.
2025-06-18T15:12:35.899-04:00 INFO 3415456 --- [ main] n.h.banner.ethos.BulkSpringApplication : Bulk Application has been told to handle the request.
2025-06-18T15:12:35.900-04:00 INFO 3415456 --- [ main] n.h.banner.ethos.BulkProcessFacade : Process starting up....
2025-06-18T15:12:35.900-04:00 INFO 3415456 --- [ main] n.hedtech.banner.ethos.batch.JobRunner : Building Job configuration.
2025-06-18T15:12:35.953-04:00 INFO 3415456 --- [ main] n.hedtech.banner.ethos.batch.JobRunner : Launching job.
2025-06-18T15:12:36.058-04:00 INFO 3415456 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [FlowJob: [name=11293462_persons]] launched with the following parameters: [{'currentTime':'{value=1750273955952, type=class java.lang.Long, identifying=true}','targetObject':'{value=BAN_ETHOS_BULK.BULK0001_PERS, type=class java.lang.String, identifying=true}','extractVpdiCode':'{value=null, type=class java.lang.String, identifying=true}','errorLimit':'{value=100, type=class java.lang.Long, identifying=true}','readerFetchSize':'{value=2500, type=class java.lang.Long, identifying=true}','currentDate':'{value=Wed Jun 18 15:12:35 EDT 2025, type=class java.util.Date, identifying=true}','resourceName':'{value=persons, type=class java.lang.String, identifying=true}','sortJsonProperties':'{value=null, type=class java.lang.String, identifying=true}','jobNumber':'{value=11293462, type=class java.lang.String, identifying=true}','requestor':'{value=EAGLE_ETHOS_USER, type=class java.lang.String, identifying=true}','totalCountExtracted':'{value=1409098, type=class java.lang.Long, identifying=true}'}]
2025-06-18T15:12:36.080-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Process Status updated to STARTED with these parameters:
Should process: true
Transform ID: 6
Resource name: persons
Job number: 11293462
Select target: BAN_ETHOS_BULK.BULK0001_PERS
Requestor: EAGLE_ETHOS_USER
Resource media type: application/vnd.hedtech.integration.v12.7.0+json
Tracking type: TRANSFORM
Tracking subtype: STAGING
Tracking ID: b774f78b-99db-4358-9940-aa0bb15b2de5
Extract VPDI code: null
File writer chunk size: 1250
Reader fetch size: 2500
Error limit: 100
Total count extracted: 1409098
Sort Json Properties: null
2025-06-18T15:12:36.082-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting latest tracking data for GURBTRK surrogate ID: 6
2025-06-18T15:12:36.094-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Process Status updated to STARTED with these parameters: Resource: persons, MediaType: application/vnd.hedtech.integration.v12.7.0+json, Requestor: EAGLE_ETHOS_USER, MEP code: null, Type: TRANSFORM, SubType: STAGING, Banner job number: 11293462, Tracking ID: b774f78b-99db-4358-9940-aa0bb15b2de5
2025-06-18T15:12:36.094-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting latest tracking data for GURBTRK surrogate ID: 6
2025-06-18T15:12:36.123-04:00 INFO 3415456 --- [ main] o.s.batch.core.job.SimpleStepHandler : Executing step: [step1_11293462]
2025-06-18T15:13:02.110-04:00 INFO 3415456 --- [ main] n.h.b.e.bulk.BulkOutputFilePathProvider : Using the system default path for output files: /B390T/userdata/jobsub/
2025-06-18T15:13:21.009-04:00 ERROR 3415456 --- [ main] n.h.b.e.b.p.EthosResourceProcessor : Ethos ID: 21ad406e-872e-4b30-8be9-34ecfc17cf0a : ECMA 262 regex "^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$" does not match input string "ceammons@app;ing.k12.ga.us"string "ceammons@app;ing.k12.ga.us" is not a valid email address
2025-06-18T15:16:32.404-04:00 ERROR 3415456 --- [ main] o.s.batch.core.step.AbstractStep : Encountered an error executing step step1_11293462 in job 11293462_persons
org.springframework.batch.core.step.skip.NonSkippableReadException: Non-skippable exception during read
at org.springframework.batch.core.step.item.FaultTolerantChunkProvider.read(FaultTolerantChunkProvider.java:104) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.item.SimpleChunkProvider.lambda$provide$0(SimpleChunkProvider.java:132) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:369) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:206) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.iterate(RepeatTemplate.java:140) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.item.SimpleChunkProvider.provide(SimpleChunkProvider.java:127) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.item.ChunkOrientedTasklet.execute(ChunkOrientedTasklet.java:69) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.tasklet.TaskletStep$ChunkTransactionCallback.doInTransaction(TaskletStep.java:388) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.tasklet.TaskletStep$ChunkTransactionCallback.doInTransaction(TaskletStep.java:312) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) ~[spring-tx-6.1.12.jar:6.1.12]
at org.springframework.batch.core.step.tasklet.TaskletStep$2.doInChunkContext(TaskletStep.java:255) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.scope.context.StepContextRepeatCallback.doInIteration(StepContextRepeatCallback.java:82) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:369) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:206) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.repeat.support.RepeatTemplate.iterate(RepeatTemplate.java:140) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.tasklet.TaskletStep.doExecute(TaskletStep.java:240) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.AbstractStep.execute(AbstractStep.java:229) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.SimpleStepHandler.handleStep(SimpleStepHandler.java:153) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.flow.JobFlowExecutor.executeStep(JobFlowExecutor.java:68) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.flow.support.state.StepState.handle(StepState.java:68) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.flow.support.SimpleFlow.resume(SimpleFlow.java:165) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.flow.support.SimpleFlow.start(SimpleFlow.java:140) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.flow.FlowJob.doExecute(FlowJob.java:132) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.job.AbstractJob.execute(AbstractJob.java:317) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.launch.support.SimpleJobLauncher$1.run(SimpleJobLauncher.java:157) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:50) ~[spring-core-6.1.12.jar:6.1.12]
at org.springframework.batch.core.launch.support.SimpleJobLauncher.run(SimpleJobLauncher.java:148) ~[spring-batch-core-5.1.2.jar:5.1.2]
at net.hedtech.banner.ethos.batch.JobRunner.run(JobRunner.java:51) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.ethos.BulkProcessFacade.bulkTransform(BulkProcessFacade.java:49) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.ethos.BulkSpringApplication.runJob(BulkSpringApplication.java:49) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.Guaeblt.processJob(Guaeblt.java:172) ~[guaeblt-2.0.0.jar:na]
at com.sct.messaging.bif.banner.BannerBatchProcessor.main(BannerBatchProcessor.java:234) ~[gurjbif.jar:na]
Caused by: org.springframework.dao.DataIntegrityViolationException: Attempt to process next row failed; SQL [SELECT * FROM BAN_ETHOS_BULK.BULK0001_PERS]; ORA-01722: invalid number
at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:258) ~[spring-jdbc-6.1.12.jar:6.1.12]
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:107) ~[spring-jdbc-6.1.12.jar:6.1.12]
at org.springframework.batch.item.database.AbstractCursorItemReader.translateSqlException(AbstractCursorItemReader.java:224) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.item.database.AbstractCursorItemReader.doRead(AbstractCursorItemReader.java:488) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader.read(AbstractItemCountingItemStreamItemReader.java:93) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:137) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:124) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) ~[spring-aop-6.1.12.jar:6.1.12]
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) ~[spring-aop-6.1.12.jar:6.1.12]
at net.hedtech.banner.ethos.batch.reader.EthosResourceReader$$SpringCGLIB$$0.read(<generated>) ~[guaeblt-2.0.0.jar:na]
at org.springframework.batch.core.step.item.SimpleChunkProvider.doRead(SimpleChunkProvider.java:108) ~[spring-batch-core-5.1.2.jar:5.1.2]
at org.springframework.batch.core.step.item.FaultTolerantChunkProvider.read(FaultTolerantChunkProvider.java:86) ~[spring-batch-core-5.1.2.jar:5.1.2]
... 31 common frames omitted
Caused by: java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:1172) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:1064) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.T2CPreparedStatement.fetch(T2CPreparedStatement.java:1759) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.OracleStatement.fetchMoreRows(OracleStatement.java:3478) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.InsensitiveScrollableResultSet.fetchMoreRows(InsensitiveScrollableResultSet.java:742) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.InsensitiveScrollableResultSet.absoluteInternal(InsensitiveScrollableResultSet.java:698) ~[ojdbc8.jar:19.27.0.0.0]
at oracle.jdbc.driver.InsensitiveScrollableResultSet.next(InsensitiveScrollableResultSet.java:412) ~[ojdbc8.jar:19.27.0.0.0]
at org.springframework.batch.item.database.AbstractCursorItemReader.doRead(AbstractCursorItemReader.java:479) ~[spring-batch-infrastructure-5.1.2.jar:5.1.2]
... 46 common frames omitted
2025-06-18T15:16:32.415-04:00 INFO 3415456 --- [ main] o.s.batch.core.step.AbstractStep : Step: [step1_11293462] executed in 3m56s290ms
2025-06-18T15:16:32.504-04:00 INFO 3415456 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [FlowJob: [name=11293462_persons]] completed with the following parameters: [{'currentTime':'{value=1750273955952, type=class java.lang.Long, identifying=true}','targetObject':'{value=BAN_ETHOS_BULK.BULK0001_PERS, type=class java.lang.String, identifying=true}','extractVpdiCode':'{value=null, type=class java.lang.String, identifying=true}','errorLimit':'{value=100, type=class java.lang.Long, identifying=true}','readerFetchSize':'{value=2500, type=class java.lang.Long, identifying=true}','currentDate':'{value=Wed Jun 18 15:12:35 EDT 2025, type=class java.util.Date, identifying=true}','resourceName':'{value=persons, type=class java.lang.String, identifying=true}','sortJsonProperties':'{value=null, type=class java.lang.String, identifying=true}','jobNumber':'{value=11293462, type=class java.lang.String, identifying=true}','requestor':'{value=EAGLE_ETHOS_USER, type=class java.lang.String, identifying=true}','totalCountExtracted':'{value=1409098, type=class java.lang.Long, identifying=true}'}] and the following status: [FAILED] in 3m56s431ms
2025-06-18T15:16:32.504-04:00 INFO 3415456 --- [ main] n.hedtech.banner.ethos.batch.JobRunner : Job Status : FAILED
2025-06-18T15:16:32.505-04:00 ERROR 3415456 --- [ main] n.h.banner.ethos.BulkProcessFacade : Job erred with FAILED BatchStatus.
org.springframework.batch.core.JobExecutionException: Job erred with FAILED BatchStatus.
at net.hedtech.banner.ethos.batch.JobRunner.run(JobRunner.java:55) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.ethos.BulkProcessFacade.bulkTransform(BulkProcessFacade.java:49) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.ethos.BulkSpringApplication.runJob(BulkSpringApplication.java:49) ~[guaeblt-2.0.0.jar:na]
at net.hedtech.banner.Guaeblt.processJob(Guaeblt.java:172) ~[guaeblt-2.0.0.jar:na]
at com.sct.messaging.bif.banner.BannerBatchProcessor.main(BannerBatchProcessor.java:234) ~[gurjbif.jar:na]
2025-06-18T15:16:32.505-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Process Status updated to ERROR with these parameters:
Should process: true
Transform ID: 6
Resource name: persons
Job number: 11293462
Select target: BAN_ETHOS_BULK.BULK0001_PERS
Requestor: EAGLE_ETHOS_USER
Resource media type: application/vnd.hedtech.integration.v12.7.0+json
Tracking type: TRANSFORM
Tracking subtype: STAGING
Tracking ID: b774f78b-99db-4358-9940-aa0bb15b2de5
Extract VPDI code: null
File writer chunk size: 1250
Reader fetch size: 2500
Error limit: 100
Total count extracted: 1409098
Sort Json Properties: null
2025-06-18T15:16:32.506-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting latest tracking data for GURBTRK surrogate ID: 6
2025-06-18T15:16:32.545-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Process Status updated to ERROR with these parameters: Resource: persons, MediaType: application/vnd.hedtech.integration.v12.7.0+json, Requestor: EAGLE_ETHOS_USER, MEP code: null, Type: TRANSFORM, SubType: STAGING, Banner job number: 11293462, Tracking ID: b774f78b-99db-4358-9940-aa0bb15b2de5
2025-06-18T15:16:32.545-04:00 INFO 3415456 --- [ main] n.h.b.ethos.bulk.ProcessTrackingService : Getting latest tracking data for GURBTRK surrogate ID: 6
2025-06-18T15:16:32.563-04:00 INFO 3415456 --- [ main] net.hedtech.banner.Guaeblt : GUAEBLT job finished.
Connected.
Confirming security mode R has proxy setting Y
Connection using Oracle Role Security Mode
Connected.
Confirming security mode R has proxy setting Y
Connection using Oracle Role Security Mode
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment