2016-03-21 62 views
4

運行用pyCOMPSs實現的應用程序時出現錯誤。該應用程序運行良好,但我在應用程序中做了一些更改,並且它已停止工作。這是堆棧我從應用程序得到:運行pyCOMPSs應用程序的SCP失敗

--- START OF NESTED EXCEPTION STACK TRACE --- 
*** stack trace of GATInvocationException 
    --- START OF NESTED EXCEPTION STACK TRACE --- 
    *** stack trace of GATInvocationException 
     --- START OF NESTED EXCEPTION STACK TRACE --- 
     *** stack trace of IOException 
     java.io.IOException: Error during SCP transfer. 
     at com.trilead.ssh2.SCPClient.put(SCPClient.java:592) 
     at com.trilead.ssh2.SCPClient.put(SCPClient.java:456) 
     at org.gridlab.gat.io.cpi.sshtrilead.SshTrileadFileAdaptor.put(SshTrileadFileAdaptor.java:418) 
     ... 
Caused by: java.io.IOException: Remote scp terminated with error (scp: /gpfs/scratch/wdir_pycompss: No such file or directory). 
     at com.trilead.ssh2.SCPClient.readResponse(SCPClient.java:59) 
     at com.trilead.ssh2.SCPClient.sendFiles(SCPClient.java:166) 
     at com.trilead.ssh2.SCPClient.put(SCPClient.java:588) 
     ... 15 more 

     --- END OF NESTED EXCEPTION STACK TRACE --- 
    *** stack trace of MethodNotApplicableException 
LocalFile: cannot copy to remote destination 
    --- END OF NESTED EXCEPTION STACK TRACE --- 
--- END OF NESTED EXCEPTION STACK TRACE --- 

它說,一個文件夾中找不到,但在project.xml中定義爲工作目錄和應用程序創建該文件夾。難道我做錯了什麼?

+1

開始執行之前是否存在此文件夾?它是由任務創建的嗎? –

+0

該文件夾由應用程序在第一個任務中創建 –

回答

4

在執行定義的任務之前,project.xml中定義的工作目錄必須存在,因爲它是遠程任務執行的地方。根據(py)COMPSs運行時使用的通信適配器,如果它不存在,可以創建它。從您發送的堆棧中,我可以推斷出您正在運行GAT適配器,事實並非如此。

你正在做的錯事是一個任務正在創建工作目錄,而且這是不允許的。工作目錄文件夾應該在部署時創建。在這種情況下,運行時正試圖在執行期間應該創建的文件夾內運行任務。在一個任務的代碼中,可以創建一個文件夾作爲一個帶有相對路徑的沙盒,並且將在工作目錄中創建,但請記住即使它們在同一個工作節點中執行,它也不會從一個任務持續到另一個任務。

相關問題