問題
如果你運行多個Apache火花JAR同時工作,一些運行可能會失敗的錯誤:
org.apache.spark.sql。AnalysisException:表或視圖不發現:xxxxxxx;1號線pos 48
導致
由於Scala中的一個錯誤會發生此錯誤。當一個對象擴展應用程序,它的瓦爾領域不再是不可變的,他們可以改變時主要方法被調用。如果你運行JAR多次工作,瓦爾字段包含一個DataFrame可以不經意間改變。
因此,當任何一個並發運行完成,它徹底損毀了臨時視圖的其他運行。Scala發行11576提供更多的細節。
解決方案
為了解決這個bug,調用main ()顯式方法。作為一個例子,如果你有類似的代碼:
% scala對象maint延伸應用{…}
你可以換成不擴展的代碼應用程序:
% scala對象maint {def主要(args:數組(String)) {……}}