2016-01-14 4 views
2

Я пытаюсь запросить распределенную систему.Ошибка Apache Drill GROUP BY

У меня есть экземпляр Postgres и экземпляр MongoDB, оба интегрированные с Apache Drill.

  • cast_info коллекция находится на MongoDB.
  • title table находится на Postgres.

Когда я пытаюсь запустить:

SELECT ci.person_id, count(t.title) 
FROM mongo.imdb.cast_info as ci 
JOIN postgres.public.title as t 
ON ci.movie_id = t.id 
WHERE t.kind_id = 1 
GROUP BY ci.person_id 
LIMIT 10; 

Я получил эту ошибку:

org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: IllegalStateException: Already had POJO for id (java.lang.Integer) [[email protected]8] Fragment 3:0 [Error Id: 69f02c9a-b8b0-444b-9077-fd3cc1799750 on 192.168.0.10:31010]

Похоже, что проблема связана с предложением GROUP BY, так как, если удалить GROUP BY (и count), запрос успешно выполняется.

Может ли кто-нибудь мне помочь?

ответ

2

Существует замечательный патч для этой ошибки, вскоре должен быть объединен. Как только он будет объединен, вы можете либо самостоятельно построить Drill, либо дождаться выпуска версии 1.5.

https://issues.apache.org/jira/browse/DRILL-4277

+0

Спасибо за ваш ответ, я буду! –