Spring boot oracle Ошибка оператора ddl пула соединений UCP, так как «Таблица уже существует» - PullRequest
0 голосов
/ 09 апреля 2020

Я создал весеннее загрузочное приложение, которое использует UCP в качестве пула соединений oracle db. Я нажал на конечную точку отдыха, чтобы начать работу. Каждое задание имеет 3 шага:

  1. Создать временную таблицу в oracle
  2. сделать пакетную операцию в режиме транзакций, вставить / удалить / обновить базовые таблицы
  3. удалить темп таблицы

Теперь проблема в том, что когда я впервые нажал на конечную точку отдыха, он выполнил все шаги правильно. Но если я снова нажму тот же URL, это даст мне ошибку в 1-м шаге, так как таблица уже существует. Странно, когда я снова нажимаю на конечную точку покоя в третий раз, тогда она работает успешно. Не уверен, почему это происходит.

Вот моя конфигурация PoolDataSource:

@Bean
public DataSource dataSource() throws SQLException {
    PoolDataSource dataSource = PoolDataSourceFactory.getPoolDataSource();
    dataSource.setConnectionFactoryClassName(databaseDriver);
    dataSource.setConnectionPoolName("XMAN_HOUSEKEEPING_JOB_POOL");
    dataSource.setURL(databaseUrl);
    dataSource.setUser(username);
    dataSource.setPassword(cryptoConfig.decryptFromHex(password));
    dataSource.setInitialPoolSize(initialPoolSize);
    dataSource.setMinPoolSize(minPoolSize);
    dataSource.setMaxPoolSize(maxPoolSize);

    return dataSource;
}

Пожалуйста, помогите.

...