Получение SemanticException по очень простому запросу
У меня есть следующий очень простой запрос.
SELECT "test" FROM mydb.mytable
INNER JOIN yourdb.yourtable
ON yourtable.id = mytable.id LIMIT 10;
Он не работает из-за следующей ошибки (с указанием синтаксической ошибки): -
Error while compiling statement: FAILED: SemanticException MetaException(message:Exception thrown when executing query)
Идентификатор столбца - это тип bigdata.
Удивительно, но это работает, если я сохраняю запрос как есть, но просто использую другую таблицу вместо mytable, которая имеет точно такую же схему, что и mytable. Похож, что улей здесь не показывает значимой ошибки. У кого есть подсказки?
Чтобы добавить к путанице, проверьте следующее:
-- SUCCESS – All the data up to 24th Sep 2016
SELECT "test" AS col FROM mydb.mytable INNER JOIN yourdb.yourtable ON yourtable.id = mytable.id where mytable.id <= 2016092423 LIMIT 1;
-- SUCCESS – All the data after 24Th Sep 2016
SELECT "test" AS col FROM mydb.mytable INNER JOIN yourdb.yourtable ON yourtable.id = mytable.id where mytable.id >= 2016092423 LIMIT 1;
-- ERROR – All the data up to 25th Sep 2016
SELECT "test" AS col FROM mydb.mytable INNER JOIN yourdb.yourtable ON yourtable.id = mytable.id where mytable.id <= 2016092523 LIMIT 1;
Это совершенно противоречивое поведение. Первые два запроса охватывают все пространство. Учитывая, что первые два запроса преуспевают, совершенно неожиданно, что третий запрос терпит неудачу.
Позвольте мне изобразить его, используя изображение: -