Временная таблица уже существует - PullRequest
0 голосов
/ 03 мая 2018

У меня есть метод, в котором я создаю временную таблицу (я удаляю ее раньше),

 public void CreateTempTable() {

        HibernatePersistenceService persistenceService = (HibernatePersistenceService) getPersistenceService();

        String requete="DROP TABLE IF EXISTS mytable";
persistenceService.getSession().createSQLQuery(requete)
                .executeUpdate();

        String requete2 = "CREATE TEMPORARY TABLE mytable AS SELECT t_lot.etabl_cdn ,count(lot_cdn) as lots_vendus"
                + " FROM t_lot group by t_lot.etabl_cdn";

        persistenceService.getSession().createSQLQuery(requete2)
                .executeUpdate();
    }

Я вызываю этот метод несколько раз, он работает нормально, но иногда у меня возникает ошибка после удаления, говорящего мне, что mytable уже существует. Я не понимаю почему, потому что я удаляю его, прежде чем создать его снова. закончить, чтобы создать блоки. Любая помощь с этим Issus? спасибо.

1 Ответ

0 голосов
/ 03 мая 2018

Похоже, что несколько экземпляров скрипта работают параллельно, что выдает ошибку.

Чтобы решить эту проблему, вы можете создать скрипт, который проверяет, запущен ли код или нет. Если он не работает, выполните ваш код. Проверка может быть выполнена в обычном режиме с помощью команды ps -ef.

...