Hi,

I am having very strange problems with globus GRAM.


Submission of job with globusrun-ws hangs on "Job Unsubmitted"
message. I tried to submit job from two different machines with the
same result. 

 globusrun-ws     -submit    -J -S -F ng2.auckland.ac.nz:8443 -Ft Fork -o 
test.epr    -c /bin/echo "hello"
Delegating user credentials...Done.
Submitting job...Done.
Job ID: uuid:6eeadb2c-6ffa-11dd-a2f7-00163e000005
Termination time: 08/23/2008 03:28 GMT
Current job state: Unsubmitted


Sample java program (attached) and CoG client
(cog-job-submit) work normally. 



Globus restart does not help, unless I remove persisted
directory. Persisted is on local partition.  I figured that single
file in ManagedExecutableJobResourceStateType causes the problem (xml
attached). When I remove this file and restart globus, globusws-run
works normally. When I copy this file into
persisted/ManagedExecutableJobResourceState, and restart globus, it
breaks again. My globus breaks every 3-7 days so there are other job
resouces that cause this problem. 

globus version is 4.0.7 from VDT 1.10

What is going on here?

Regards,
Yuriy

Attachment: 91b6ff30-6f57-11dd-a716-ec9d0a188c65.xml
Description: XML document

package globus;

import org.globus.gsi.*;
import org.globus.gsi.gssapi.*;
import org.globus.exec.utils.rsl.*;
import org.globus.exec.client.GramJob;
import org.globus.exec.client.GramJobListener;
import org.ietf.jgss.GSSCredential;
import org.ietf.jgss.GSSManager;
import org.globus.exec.utils.client.ManagedJobFactoryClientHelper;

import org.apache.axis.message.addressing.EndpointReferenceType;
import org.globus.exec.utils.rsl.RSLHelper;
import org.globus.axis.util.Util;

import org.globus.exec.generated.StateEnumeration;

import org.oasis.wsrf.faults.BaseFaultTypeDescription;
import org.oasis.wsrf.faults.BaseFaultType;

public class SubmitJob implements GramJobListener {

    public boolean completed = false;


    public static void main(String[] args  ){
	try {

	    SubmitJob submit = new SubmitJob();
	    String server = "ng2.auckland.ac.nz";
	    String serviceAddress =  "https://"+server+":8443/wsrf/services/ManagedJobFactoryService";;
	    Util.registerTransport();
	    
	    GSSCredential cred = new
		GlobusGSSCredentialImpl(GlobusCredential.getDefaultCredential(),0);

	    EndpointReferenceType factoryEndpoint = ManagedJobFactoryClientHelper.getFactoryEndpoint(serviceAddress,"Fork");

	    GramJob job1 = submit.createTest(1,cred);
	    GramJob job2 = submit.createTest(2,cred);
	    GramJob job3 = submit.createTest(3,cred);

	    //	    job1.submit(factoryEndpoint);
	    //	    job2.submit(factoryEndpoint);
	    job3.submit(factoryEndpoint);

	    try{
		//do what you want to do before sleeping
		Thread.currentThread().sleep(100000);//sleep for 1000 ms
		//do what you want to do after sleeptig
	    }
	    catch(InterruptedException ie){
		//If this thread was intrrupted by nother thread 
	    }
	    //job1.refreshStatus();
	}
	catch (Exception e){
	    e.printStackTrace();
	}
	
    }

    public  GramJob createTest(int n,GSSCredential cred) throws RSLParseException{
	GramJob job = new GramJob("<job><executable>/home/grid-bestgrid/testingjava/script.sh</executable>"+
				  "<directory>/home/grid-bestgrid/testingjava/</directory>" +
				  "<argument>"+n+"</argument>" + 
				  "<argument>testing.txt</argument>" + 
				  "</job>");
				  
	job.addListener(this);
	job.setCredentials(cred);
	return job;
    }

    public void stateChanged(GramJob job) {
	System.out.println(job.getState());
	//	BaseFaultType fault = job.getFault();
	//BaseFaultTypeDescription[] desc = fault.getDescription();
	//for (BaseFaultTypeDescription d : desc){
	//    System.out.println(d.get_value());
	//}
    }
}

Reply via email to