У меня странная проблема с DB2, когда я запускаю тесты DBUnit. Мои тесты DBUnit сильно адаптированы, но я не думаю, что проблема в этом. Когда я запускаю тесты, я получаю ошибку:
SQLCODE: -1084, SQLSTATE: 57019
SQL1084C Сегменты общей памяти не могут быть выделены.
Это похоже на странную проблему с памятью, но вот еще одна большая странность. Если я подключусь по ssh к тестовому серверу базы данных, затем войду в db2 и сделаю "connect to MY_DB", тесты начнут проходить успешно! Это не имеет никакого отношения к предполагаемой ошибке памяти, о которой сообщается.
У меня есть 2 теста, и первый из них действительно проходит успешно, а второй - неудачно. Однако в коде настройки DBUnit, когда он получает соединение с сервером БД для загрузки моего набора данных xml, происходит сбой.
Есть идеи, что может происходить?
Ну, я думаю, я исправил это, сделав следующее:
db2stop force
db2start
По крайней мере, кажется, что теперь все работает.....
В моем случае это была просроченная лицензия DB/2. Вы можете посмотреть свои лицензии, введя команду db2licm -l
Если у вас есть файл лицензии, вы можете установить его, например, следующим образом: db2licm -a db2ese.lic