DatabaseLookup зависает на определенных значениях - PullRequest
0 голосов
/ 03 августа 2011

Я использую Kettle для некоторых преобразований и столкнулся с проблемой: Для одной конкретной строки мой шаг DatabaseLookup зависает. Это просто не дает результата. Попытка остановить преобразование приводит к бесконечной остановке для шага поиска.

Указанное значение совсем не сложно и не отличается от всех других строк / значений. Это просто не будет продолжаться.

Выполнение одного и того же запроса в базе данных напрямую или в другом инструменте базы данных (например, SQuirreL), это работает.

Я использую Kettle / Spoon 4.1, база данных - MySQL 5.5.10. Это случается с Connector / J 5.1.14 и одним в комплекте с ложкой.

Шаг инициализируется безупречно (он работает даже для других строк), и я понятия не имею, почему он терпит неудачу. Нет сообщений об ошибках в журналах Spoon, ничего на консоли / оболочке.

Ответы [ 2 ]

0 голосов
/ 08 августа 2011

Я только что нашел виновника: поиск берет в результате поле id и дает ему новое имя, PERSON_ID.Это не удается в некоторых случаях!Получившийся оператор поиска / подготовки был что-то вроде

select id as PERSON_ID FROM table WHERE ...

РЕШЕНИЕ: не используйте подчеркивание в поле «Новое имя» для поля!С новым именем PERSONID все работает безупречно для ALL строк!

Глупая ошибка ...

0 голосов
/ 05 августа 2011

странно.Какой тип таблицы?это миисам?Ваше преобразование также выполняет обновления к той же таблице?может быть, вы как-то непреднамеренно блокируете таблицу одновременно?

Или, может быть, это mysql 5.5 ... Но я широко использовал этот шаг с mysql 5.0 и pdi 4.everything, и всегда было хорошо ...может опубликовать преобразование?

...