Application: ETL application written in java/Spring Batch/Oracle running on SpringBoot
Problem statement: There are several long-running SQL queries in a java job, query execution is the last step of the job. Sometimes query gets stuck at DB level and DB doesn't respond and eventually, the query is killed and the job has to be started again.
Now I want to implement (for both spring jobs and non spring jobs):
- a way to start the job at the failure point not from the top.
- High availability architecture so that users don't have to wait if the application server stops responding. Something similar to Hot-Hot architecture (Any Spring-based solution would be great)