Я использую HikariCP с oracle .jdb c .OracleDriver в приложении Spring Batch. Когда он выполняет sql запросы выбора в базе данных Oracle, первый сеанс базы данных блокирует другие. Я вижу это в браузере сеансов базы данных. Поэтому я теряю преимущества параллельного выполнения запросов.
- oracle .jdb c .OracleDriver 12.1.0.2.0
- spring-jdb c -5.1.8
- HikariCP-3.2.0
- Oracle База данных 12 c Выпуск Enterprise Edition 12.1.0.2.0 - 64 бита
Как мне нужно настроить мой приложение для решения этой проблемы?
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-2] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL query
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-1] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL query
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-2] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL statement [SELECT COUNT(*)
FROM MY_TABLE_1 R
WHERE R.FDAY BETWEEN :START_DATE AND :END_DATE
and (select x.s_id from MY_TABLE_4 x where x.d_id = 3948) = 304243]
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-1] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL statement [SELECT COUNT(*)
FROM MY_TABLE_2 R
WHERE R.FDAY BETWEEN :START_DATE AND :END_DATE
and (select x.s_id from MY_TABLE_4 x where x.d_id = 3948) = 304243]
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-2] [o.s.jdbc.datasource.DataSourceUtils] Fetching JDBC Connection from DataSource
27.02.2020 18:37:20.566|DEBUG|[threadPoolTaskScheduler-1] [o.s.jdbc.datasource.DataSourceUtils] Fetching JDBC Connection from DataSource
27.02.2020 18:37:20.570|TRACE|[threadPoolTaskScheduler-1] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 1, parameter value [2019-08-11], value class [java.sql.Date], SQL type unknown
27.02.2020 18:37:20.570|TRACE|[threadPoolTaskScheduler-1] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 2, parameter value [2020-02-27], value class [java.sql.Date], SQL type unknown
27.02.2020 18:37:20.571|TRACE|[threadPoolTaskScheduler-2] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 1, parameter value [2020-02-25], value class [java.sql.Date], SQL type unknown
27.02.2020 18:37:20.572|TRACE|[threadPoolTaskScheduler-2] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 2, parameter value [2020-02-27], value class [java.sql.Date], SQL type unknown
27.02.2020 18:37:20.942|DEBUG|[threadPoolTaskScheduler-3] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL query
27.02.2020 18:37:20.942|DEBUG|[threadPoolTaskScheduler-3] [o.s.jdbc.core.JdbcTemplate] Executing prepared SQL statement [SELECT COUNT(*)
FROM MY_TABLE_3 U
WHERE U.FDAY BETWEEN :START_DATE AND :END_DATE
and (select x.s_id from MY_TABLE_4 x where x.d_id = 3948) = 304243]
27.02.2020 18:37:20.942|DEBUG|[threadPoolTaskScheduler-3] [o.s.jdbc.datasource.DataSourceUtils] Fetching JDBC Connection from DataSource
27.02.2020 18:37:20.948|TRACE|[threadPoolTaskScheduler-3] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 1, parameter value [2018-03-29], value class [java.sql.Date], SQL type unknown
27.02.2020 18:37:20.948|TRACE|[threadPoolTaskScheduler-3] [o.s.jdbc.core.StatementCreatorUtils] Setting SQL statement parameter value: column index 2, parameter value [2020-02-27], value class [java.sql.Date], SQL type unknown