Функция ejbTimer с DashDB в bluemix

Если вы решите использовать функцию ejbTimer с DashDB в Bluemix, вы получите ошибки. Мы проанализировали проблему и пришли к выводу, что функция ejbTimer создает набор таблиц (WLPTASK, WLPPART, WLPPROP) на этапе создания. Они предполагают «ОРГАНИЗАЦИЮ ПО КОЛОННЕ» (по умолчанию в DashDB).

В качестве обходного пути мы обнаружили, что если мы использовали эту функцию на автономном (не облачном) сервере Liberty, пусть он создает таблицы. Возьмите из этого DDL и настройте их с помощью «ORGANIZE BY ROW». Вручную создайте таблицы в DashDB. Тогда использование этой функции в Bluemix не требует создания таблиц и работает с этими таблицами, созданными вручную.

Я предполагаю, что это не ожидаемое поведение - есть ли для этого исправление?


person jarkko    schedule 01.11.2016    source источник
comment
когда вы создаете таблицы в своей автономной (не облачной) среде, используете ли вы DashDB и здесь? Или какая-то другая база данных?   -  person Andy Guibert    schedule 01.11.2016
comment
Я использовал дерби для этого. Две таблицы были созданы в DashDB до того, как там произошел сбой создания, поэтому комбинирования этой информации с тем, что было получено из derby, было достаточно.   -  person jarkko    schedule 10.11.2016


Ответы (1)


То, что вы сделали для решения этой проблемы, хорошо. Причина, по которой это не работает из коробки, заключается в том, что Liberty использует EclipseLink (ECL) для создания таблиц для таймеров EJB, а ECL не имеет полной поддержки DashDB.

ECL поддерживает все совместимые драйверы SQL и JDBC. Однако ECL поддерживает создание схемы только для выбранного набора баз данных. К сожалению, DashDB отсутствует в списке баз данных, которые поддерживает ECL. поколения для.

Я предлагаю вам продолжать использовать этот обходной путь ручного редактирования DDL, сгенерированного для Derby, а тем временем откройте Request For Enhancement (должно занять 10 минут или меньше), чтобы IBM добавила в ECL поддержку создания схемы DashDB.

person Andy Guibert    schedule 10.11.2016