Второй запрос куста не выполнен из-за ошибки: в строке 5 ParseException 5: 101 отсутствует EOF в первом запросе улья - PullRequest
0 голосов
/ 17 октября 2018

Я работаю над обработкой исключений в .hql файле ниже мой сценарий

use galaxy60_1000;

CREATE EXTERNAL TABLE scd_member1 (scd_member_key string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/AutomationFiles/galaxy60_1000/scd_member

CREATE EXTERNAL TABLE scd_member3 (scd_member_key string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/AutomationFiles/galaxy60_1000/scd_member';

Постановка задачи

  1. Здесь первый запрос ульяпроисходит сбой из-за

FAILED: отсутствует строка ParseException 5: 101 EOF

, это правильно, но второй запрос куста не работает, потому что он пытается выполнить запрос ниже

CREATE EXTERNAL TABLE scd_member3 (scd_member_key string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ''

Я действительно смущен, почему он не рассматривает запрос, который я написал в моем сценарии

1 Ответ

0 голосов
/ 17 октября 2018

Я действительно смущен, почему он не рассматривает запрос, который я написал в моем скрипте

В вашем первом CREATE утверждении пропущен ' в конце и ; дляразделить две команды.

Вообще говоря, анализаторы синтакс не могут найти все ошибки одновременно, первая найденная ошибка синтакс сокрыт все остальные.В случае сценариев выполнение может продолжаться на основе ошибочного синтаксического анализа!

Конечно, вы можете исправить только первую ошибку и посмотреть, как она будет.

Это должно быть похоже на:

use galaxy60_1000;

CREATE EXTERNAL TABLE scd_member1 (scd_member_key string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/AutomationFiles/galaxy60_1000/scd_member';

CREATE EXTERNAL TABLE scd_member3 (scd_member_key string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/AutomationFiles/galaxy60_1000/scd_member';
...