2017-06-22 71 views
0

我基於Sqoop創建導入工具,我的shell腳本的樣子:Sqoop多個作業invokation

while <cond> ; do 
sqoop import <parameters> & 
done 

第一invokation工作正常,但我得到以下錯誤的休息:

所致:java.sql.SQLException中:失敗當我通過一個手動啓動一個每次迭代轉換爲內部 表示

,他們工作得很好,但沒有如上所述。

我調查後發現了什麼,是第一sqoop工作創建文件QueryResult.javaQueryResult.jar,然後下一個作業使用相同的jar文件,它不反映他們正確的類型映射。

任何人都可以證實我的想法或我錯過了什麼嗎?有沒有更容易的選擇擺脫這一點,或者我必須爲每個invokation創建單獨的--bindir

回答

0

jar文件的名稱是由被進一步下面的parm確定類的名字確定 -

--class-name=SCHEMA_TBL_NAME 

你應該包括這個PARM在Sqoop命令,並把它傳遞不同的價值觀不同的進口。

「。」不應該用於這個parm值,因爲它會創建一個子目錄,因爲「。」表示java中的子包。