私は 4 台のマシン (1 台のすべてのマスター、3 台の「ダム」ワーカー) の CDH4 クラスターで実行される Oozie ワークフローを取得しました。Hive メタストアは mysql を使用してマスター上で実行され (ドライバーが存在します)、oozie サーバーも mysql を使用してマスター上で実行されます。Web インターフェイスを使用して、期待どおりにハイブをインポートしてクエリを実行できますが、oozie ワークフロー内で同じクエリを実行すると失敗します。「IF EXISTS」を追加しても、以下のエラーが発生します。接続情報をプロパティとしてハイブ ジョブに追加しようとしましたが、成功しませんでした。
誰でもヒントを教えてもらえますか?何か見逃しましたか?さらに情報が必要ですか?
これは、ジョブのログの出力です。
Script [drop.sql] content:
------------------------
DROP TABLE IF EXISTS performance_log;
------------------------
Hive command arguments :
-f
drop.sql
=================================================================
>>> Invoking Hive command line now >>>
Intercepting System.exit(10001)
<<< Invocation of Main class completed <<<
Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.HiveMain], exit code [10001]
Oozie Launcher failed, finishing Hadoop job gracefully
そして、これはエラーメッセージです:
FAILED: SemanticException [Error 10001]: Table not found performance_log
Intercepting System.exit(10001)
Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.HiveMain], exit code [10001]