GT 4.2.1 GRAM2: User Guide


Chapter 1. Introduction

GRAM services provide secure job submission to many types of job schedulers for users who have the right to access a job hosting resource in a Grid environment. The existence of a valid proxy is in fact required for job submission. All GRAM job submission options are supported transparently through the embedded request document input. In fact, the job startup is done by submitting a client-side provided job description to the GRAM services. This submission can be made by end-users with the GRAM command-line tools.

Chapter 2. Commandline Tools

Gram Clients

Chapter 3. Resource Specification Language (RSL)

Resource Specification Language (RSL)

Chapter 4. RSL Attributes

RSL Attributes

Chapter 5. Job Execution Environment

Job Execution Environment

Chapter 6. GRAM Error Codes

Table 6.1. Gram Error Codes

#NameDescription
0 Success
1GLOBUS_GRAM_PROTOCOL_ERROR_PARAMETER_NOT_SUPPORTEDone of the RSL parameters is not supported
2GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_REQUESTthe RSL length is greater than the maximum allowed
3GLOBUS_GRAM_PROTOCOL_ERROR_NO_RESOURCESan I/O operation failed
4GLOBUS_GRAM_PROTOCOL_ERROR_BAD_DIRECTORYjobmanager unable to set default to the directory requested
5GLOBUS_GRAM_PROTOCOL_ERROR_EXECUTABLE_NOT_FOUNDthe executable does not exist
6GLOBUS_GRAM_PROTOCOL_ERROR_INSUFFICIENT_FUNDSof an unused INSUFFICIENT_FUNDS
7GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATIONauthentication with the remote server failed
8GLOBUS_GRAM_PROTOCOL_ERROR_USER_CANCELLEDthe user cancelled the job
9GLOBUS_GRAM_PROTOCOL_ERROR_SYSTEM_CANCELLEDthe system cancelled the job
10GLOBUS_GRAM_PROTOCOL_ERROR_PROTOCOL_FAILEDdata transfer to the server failed
11GLOBUS_GRAM_PROTOCOL_ERROR_STDIN_NOT_FOUNDthe stdin file does not exist
12GLOBUS_GRAM_PROTOCOL_ERROR_CONNECTION_FAILEDthe connection to the server failed (check host and port)
13GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_MAXTIMEthe provided RSL 'maxtime' value is not an integer
14GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_COUNTthe provided RSL 'count' value is not an integer
15GLOBUS_GRAM_PROTOCOL_ERROR_NULL_SPECIFICATION_TREEthe job manager received an invalid RSL
16GLOBUS_GRAM_PROTOCOL_ERROR_JM_FAILED_ALLOW_ATTACHthe job manager failed in allowing others to make contact
17GLOBUS_GRAM_PROTOCOL_ERROR_JOB_EXECUTION_FAILEDthe job failed when the job manager attempted to run it
18GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_PARADYNan invalid paradyn was specified
19GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_JOBTYPEthe provided RSL 'jobtype' value is invalid
20GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_GRAM_MYJOBthe provided RSL 'myjob' value is invalid
21GLOBUS_GRAM_PROTOCOL_ERROR_BAD_SCRIPT_ARG_FILEthe job manager failed to locate an internal script argument file
22GLOBUS_GRAM_PROTOCOL_ERROR_ARG_FILE_CREATION_FAILEDthe job manager failed to create an internal script argument file
23GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_JOBSTATEthe job manager detected an invalid job state
24GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SCRIPT_REPLYthe job manager detected an invalid script response
25GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SCRIPT_STATUSthe job manager detected an invalid script status
26GLOBUS_GRAM_PROTOCOL_ERROR_JOBTYPE_NOT_SUPPORTEDthe provided RSL 'jobtype' value is not supported by this job manager
27GLOBUS_GRAM_PROTOCOL_ERROR_UNIMPLEMENTEDunused ERROR_UNIMPLEMENTED
28GLOBUS_GRAM_PROTOCOL_ERROR_TEMP_SCRIPT_FILE_FAILEDthe job manager failed to create an internal script submission file
29GLOBUS_GRAM_PROTOCOL_ERROR_USER_PROXY_NOT_FOUNDthe job manager cannot find the user proxy
30GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_USER_PROXYthe job manager failed to open the user proxy
31GLOBUS_GRAM_PROTOCOL_ERROR_JOB_CANCEL_FAILEDthe job manager failed to cancel the job as requested
32GLOBUS_GRAM_PROTOCOL_ERROR_MALLOC_FAILEDsystem memory allocation failed
33GLOBUS_GRAM_PROTOCOL_ERROR_DUCT_INIT_FAILEDthe interprocess job communication initialization failed
34GLOBUS_GRAM_PROTOCOL_ERROR_DUCT_LSP_FAILEDthe interprocess job communication setup failed
35GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_HOST_COUNTthe provided RSL 'host count' value is invalid
36GLOBUS_GRAM_PROTOCOL_ERROR_UNSUPPORTED_PARAMETERone of the provided RSL parameters is unsupported
37GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_QUEUEthe provided RSL 'queue' parameter is invalid
38GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_PROJECTthe provided RSL 'project' parameter is invalid
39GLOBUS_GRAM_PROTOCOL_ERROR_RSL_EVALUATION_FAILEDthe provided RSL string includes variables that could not be identified
40GLOBUS_GRAM_PROTOCOL_ERROR_BAD_RSL_ENVIRONMENTthe provided RSL 'environment' parameter is invalid
41GLOBUS_GRAM_PROTOCOL_ERROR_DRYRUNthe provided RSL 'dryrun' parameter is invalid
42GLOBUS_GRAM_PROTOCOL_ERROR_ZERO_LENGTH_RSLthe provided RSL is invalid (an empty string)
43GLOBUS_GRAM_PROTOCOL_ERROR_STAGING_EXECUTABLEthe job manager failed to stage the executable
44GLOBUS_GRAM_PROTOCOL_ERROR_STAGING_STDINthe job manager failed to stage the stdin file
45GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_JOB_MANAGER_TYPEthe requested job manager type is invalid
46GLOBUS_GRAM_PROTOCOL_ERROR_BAD_ARGUMENTSthe provided RSL 'arguments' parameter is invalid
47GLOBUS_GRAM_PROTOCOL_ERROR_GATEKEEPER_MISCONFIGUREDthe gatekeeper failed to run the job manager
48GLOBUS_GRAM_PROTOCOL_ERROR_BAD_RSLthe provided RSL could not be properly parsed
49GLOBUS_GRAM_PROTOCOL_ERROR_VERSION_MISMATCHthere is a version mismatch between GRAM components
50GLOBUS_GRAM_PROTOCOL_ERROR_RSL_ARGUMENTSthe provided RSL 'arguments' parameter is invalid
51GLOBUS_GRAM_PROTOCOL_ERROR_RSL_COUNTthe provided RSL 'count' parameter is invalid
52GLOBUS_GRAM_PROTOCOL_ERROR_RSL_DIRECTORYthe provided RSL 'directory' parameter is invalid
53GLOBUS_GRAM_PROTOCOL_ERROR_RSL_DRYRUNthe provided RSL 'dryrun' parameter is invalid
54GLOBUS_GRAM_PROTOCOL_ERROR_RSL_ENVIRONMENTthe provided RSL 'environment' parameter is invalid
55GLOBUS_GRAM_PROTOCOL_ERROR_RSL_EXECUTABLEthe provided RSL 'executable' parameter is invalid
56GLOBUS_GRAM_PROTOCOL_ERROR_RSL_HOST_COUNTthe provided RSL 'host_count' parameter is invalid
57GLOBUS_GRAM_PROTOCOL_ERROR_RSL_JOBTYPEthe provided RSL 'jobtype' parameter is invalid
58GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MAXTIMEthe provided RSL 'maxtime' parameter is invalid
59GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MYJOBthe provided RSL 'myjob' parameter is invalid
60GLOBUS_GRAM_PROTOCOL_ERROR_RSL_PARADYNthe provided RSL 'paradyn' parameter is invalid
61GLOBUS_GRAM_PROTOCOL_ERROR_RSL_PROJECTthe provided RSL 'project' parameter is invalid
62GLOBUS_GRAM_PROTOCOL_ERROR_RSL_QUEUEthe provided RSL 'queue' parameter is invalid
63GLOBUS_GRAM_PROTOCOL_ERROR_RSL_STDERRthe provided RSL 'stderr' parameter is invalid
64GLOBUS_GRAM_PROTOCOL_ERROR_RSL_STDINthe provided RSL 'stdin' parameter is invalid
65GLOBUS_GRAM_PROTOCOL_ERROR_RSL_STDOUTthe provided RSL 'stdout' parameter is invalid
66GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_JOBMANAGER_SCRIPTthe job manager failed to locate an internal script
67GLOBUS_GRAM_PROTOCOL_ERROR_CREATING_PIPEthe job manager failed on the system call pipe()
68GLOBUS_GRAM_PROTOCOL_ERROR_FCNTL_FAILEDthe job manager failed on the system call fcntl()
69GLOBUS_GRAM_PROTOCOL_ERROR_STDOUT_FILENAME_FAILEDthe job manager failed to create the temporary stdout filename
70GLOBUS_GRAM_PROTOCOL_ERROR_STDERR_FILENAME_FAILEDthe job manager failed to create the temporary stderr filename
71GLOBUS_GRAM_PROTOCOL_ERROR_FORKING_EXECUTABLEthe job manager failed on the system call fork()
72GLOBUS_GRAM_PROTOCOL_ERROR_EXECUTABLE_PERMISSIONSthe executable file permissions do not allow execution
73GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_STDOUTthe job manager failed to open stdout
74GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_STDERRthe job manager failed to open stderr
75GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_CACHE_USER_PROXYthe cache file could not be opened in order to relocate the user proxy
76GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_CACHEcannot access cache files in ~/.globus/.gass_cache, check permissions, quota, and disk space
77GLOBUS_GRAM_PROTOCOL_ERROR_INSERTING_CLIENT_CONTACTthe job manager failed to insert the contact in the client contact list
78GLOBUS_GRAM_PROTOCOL_ERROR_CLIENT_CONTACT_NOT_FOUNDthe contact was not found in the job manager's client contact list
79GLOBUS_GRAM_PROTOCOL_ERROR_CONTACTING_JOB_MANAGERconnecting to the job manager failed. Possible reasons: job terminated, invalid job contact, network problems, ...
80GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_JOB_CONTACTthe syntax of the job contact is invalid
81GLOBUS_GRAM_PROTOCOL_ERROR_UNDEFINED_EXEthe executable parameter in the RSL is undefined
82GLOBUS_GRAM_PROTOCOL_ERROR_CONDOR_ARCHthe job manager service is misconfigured. condor arch undefined
83GLOBUS_GRAM_PROTOCOL_ERROR_CONDOR_OSthe job manager service is misconfigured. condor os undefined
84GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MIN_MEMORYthe provided RSL 'min_memory' parameter is invalid
85GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MAX_MEMORYthe provided RSL 'max_memory' parameter is invalid
86GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_MIN_MEMORYthe RSL 'min_memory' value is not zero or greater
87GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_MAX_MEMORYthe RSL 'max_memory' value is not zero or greater
88GLOBUS_GRAM_PROTOCOL_ERROR_HTTP_FRAME_FAILEDthe creation of a HTTP message failed
89GLOBUS_GRAM_PROTOCOL_ERROR_HTTP_UNFRAME_FAILEDparsing incoming HTTP message failed
90GLOBUS_GRAM_PROTOCOL_ERROR_HTTP_PACK_FAILEDthe packing of information into a HTTP message failed
91GLOBUS_GRAM_PROTOCOL_ERROR_HTTP_UNPACK_FAILEDan incoming HTTP message did not contain the expected information
92GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_JOB_QUERYthe job manager does not support the service that the client requested
93GLOBUS_GRAM_PROTOCOL_ERROR_SERVICE_NOT_FOUNDthe gatekeeper failed to find the requested service
94GLOBUS_GRAM_PROTOCOL_ERROR_JOB_QUERY_DENIALthe jobmanager does not accept any new requests (shutting down)
95GLOBUS_GRAM_PROTOCOL_ERROR_CALLBACK_NOT_FOUNDthe client failed to close the listener associated with the callback URL
96GLOBUS_GRAM_PROTOCOL_ERROR_BAD_GATEKEEPER_CONTACTthe gatekeeper contact cannot be parsed
97GLOBUS_GRAM_PROTOCOL_ERROR_POE_NOT_FOUNDthe job manager could not find the 'poe' command
98GLOBUS_GRAM_PROTOCOL_ERROR_MPIRUN_NOT_FOUNDthe job manager could not find the 'mpirun' command
99GLOBUS_GRAM_PROTOCOL_ERROR_RSL_START_TIMEthe provided RSL 'start_time' parameter is invalid
100GLOBUS_GRAM_PROTOCOL_ERROR_RSL_RESERVATION_HANDLEthe provided RSL 'reservation_handle' parameter is invalid
101GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MAX_WALL_TIMEthe provided RSL 'max_wall_time' parameter is invalid
102GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_MAX_WALL_TIMEthe RSL 'max_wall_time' value is not zero or greater
103GLOBUS_GRAM_PROTOCOL_ERROR_RSL_MAX_CPU_TIMEthe provided RSL 'max_cpu_time' parameter is invalid
104GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_MAX_CPU_TIMEthe RSL 'max_cpu_time' value is not zero or greater
105GLOBUS_GRAM_PROTOCOL_ERROR_JM_SCRIPT_NOT_FOUNDthe job manager is misconfigured, a scheduler script is missing
106GLOBUS_GRAM_PROTOCOL_ERROR_JM_SCRIPT_PERMISSIONSthe job manager is misconfigured, a scheduler script has invalid permissions
107GLOBUS_GRAM_PROTOCOL_ERROR_SIGNALING_JOBthe job manager failed to signal the job
108GLOBUS_GRAM_PROTOCOL_ERROR_UNKNOWN_SIGNAL_TYPEthe job manager did not recognize/support the signal type
109GLOBUS_GRAM_PROTOCOL_ERROR_GETTING_JOBIDthe job manager failed to get the job id from the local scheduler
110GLOBUS_GRAM_PROTOCOL_ERROR_WAITING_FOR_COMMITthe job manager is waiting for a commit signal
111GLOBUS_GRAM_PROTOCOL_ERROR_COMMIT_TIMED_OUTthe job manager timed out while waiting for a commit signal
112GLOBUS_GRAM_PROTOCOL_ERROR_RSL_SAVE_STATEthe provided RSL 'save_state' parameter is invalid
113GLOBUS_GRAM_PROTOCOL_ERROR_RSL_RESTARTthe provided RSL 'restart' parameter is invalid
114GLOBUS_GRAM_PROTOCOL_ERROR_RSL_TWO_PHASE_COMMITthe provided RSL 'two_phase' parameter is invalid
115GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_TWO_PHASE_COMMITthe RSL 'two_phase' value is not zero or greater
116GLOBUS_GRAM_PROTOCOL_ERROR_RSL_STDOUT_POSITIONthe provided RSL 'stdout_position' parameter is invalid
117GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_STDOUT_POSITIONthe RSL 'stdout_position' value is not zero or greater
118GLOBUS_GRAM_PROTOCOL_ERROR_RSL_STDERR_POSITIONthe provided RSL 'stderr_position' parameter is invalid
119GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_STDERR_POSITIONthe RSL 'stderr_position' value is not zero or greater
120GLOBUS_GRAM_PROTOCOL_ERROR_RESTART_FAILEDthe job manager restart attempt failed
121GLOBUS_GRAM_PROTOCOL_ERROR_NO_STATE_FILEthe job state file doesn't exist
122GLOBUS_GRAM_PROTOCOL_ERROR_READING_STATE_FILEcould not read the job state file
123GLOBUS_GRAM_PROTOCOL_ERROR_WRITING_STATE_FILEcould not write the job state file
124GLOBUS_GRAM_PROTOCOL_ERROR_OLD_JM_ALIVEold job manager is still alive
125GLOBUS_GRAM_PROTOCOL_ERROR_TTL_EXPIREDjob manager state file TTL expired
126GLOBUS_GRAM_PROTOCOL_ERROR_SUBMIT_UNKNOWNit is unknown if the job was submitted
127GLOBUS_GRAM_PROTOCOL_ERROR_RSL_REMOTE_IO_URLthe provided RSL 'remote_io_url' parameter is invalid
128GLOBUS_GRAM_PROTOCOL_ERROR_WRITING_REMOTE_IO_URLcould not write the remote io url file
129GLOBUS_GRAM_PROTOCOL_ERROR_STDIO_SIZEthe standard output/error size is different
130GLOBUS_GRAM_PROTOCOL_ERROR_JM_STOPPEDthe job manager was sent a stop signal (job is still running)
131GLOBUS_GRAM_PROTOCOL_ERROR_USER_PROXY_EXPIREDthe user proxy expired (job is still running)
132GLOBUS_GRAM_PROTOCOL_ERROR_JOB_UNSUBMITTEDthe job was not submitted by original jobmanager
133GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_COMMITthe job manager is not waiting for that commit signal
134GLOBUS_GRAM_PROTOCOL_ERROR_RSL_SCHEDULER_SPECIFICthe provided RSL scheduler specific parameter is invalid
135GLOBUS_GRAM_PROTOCOL_ERROR_STAGE_IN_FAILEDthe job manager could not stage in a file
136GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SCRATCHthe scratch directory could not be created
137GLOBUS_GRAM_PROTOCOL_ERROR_RSL_CACHEthe provided 'gass_cache' parameter is invalid
138GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SUBMIT_ATTRIBUTEthe RSL contains attributes which are not valid for job submission
139GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_STDIO_UPDATE_ATTRIBUTEthe RSL contains attributes which are not valid for stdio update
140GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_RESTART_ATTRIBUTEthe RSL contains attributes which are not valid for job restart
141GLOBUS_GRAM_PROTOCOL_ERROR_RSL_FILE_STAGE_INthe provided RSL 'file_stage_in' parameter is invalid
142GLOBUS_GRAM_PROTOCOL_ERROR_RSL_FILE_STAGE_IN_SHAREDthe provided RSL 'file_stage_in_shared' parameter is invalid
143GLOBUS_GRAM_PROTOCOL_ERROR_RSL_FILE_STAGE_OUTthe provided RSL 'file_stage_out' parameter is invalid
144GLOBUS_GRAM_PROTOCOL_ERROR_RSL_GASS_CACHEthe provided RSL 'gass_cache' parameter is invalid
145GLOBUS_GRAM_PROTOCOL_ERROR_RSL_FILE_CLEANUPthe provided RSL 'file_cleanup' parameter is invalid
146GLOBUS_GRAM_PROTOCOL_ERROR_RSL_SCRATCHthe provided RSL 'scratch_dir' parameter is invalid
147GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SCHEDULER_SPECIFICthe provided scheduler-specific RSL parameter is invalid
148GLOBUS_GRAM_PROTOCOL_ERROR_UNDEFINED_ATTRIBUTEa required RSL attribute was not defined in the RSL spec
149GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_CACHEthe gass_cache attribute points to an invalid cache directory
150GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_SAVE_STATEthe provided RSL 'save_state' parameter has an invalid value
151GLOBUS_GRAM_PROTOCOL_ERROR_OPENING_VALIDATION_FILEthe job manager could not open the RSL attribute validation file
152GLOBUS_GRAM_PROTOCOL_ERROR_READING_VALIDATION_FILEthe job manager could not read the RSL attribute validation file
153GLOBUS_GRAM_PROTOCOL_ERROR_RSL_PROXY_TIMEOUTthe provided RSL 'proxy_timeout' is invalid
154GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_PROXY_TIMEOUTthe RSL 'proxy_timeout' value is not greater than zero
155GLOBUS_GRAM_PROTOCOL_ERROR_STAGE_OUT_FAILEDthe job manager could not stage out a file
156GLOBUS_GRAM_PROTOCOL_ERROR_JOB_CONTACT_NOT_FOUNDthe job contact string does not match any which the job manager is handling
157GLOBUS_GRAM_PROTOCOL_ERROR_DELEGATION_FAILEDproxy delegation failed
158GLOBUS_GRAM_PROTOCOL_ERROR_LOCKING_STATE_LOCK_FILEthe job manager could not lock the state lock file
159GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTRan invalid globus_io_clientattr_t was used.
160GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETERan null parameter was passed to the gram library
161GLOBUS_GRAM_PROTOCOL_ERROR_STILL_STREAMINGthe job manager is still streaming output
162GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION_DENIEDthe authorization system denied the request
163GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION_SYSTEM_FAILUREthe authorization system reported a failure
164GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION_DENIED_JOB_IDthe authorization system denied the request - invalid job id
165GLOBUS_GRAM_PROTOCOL_ERROR_AUTHORIZATION_DENIED_EXECUTABLEthe authorization system denied the request - not authorized to run the specified executable
166GLOBUS_GRAM_PROTOCOL_ERROR_RSL_USER_NAMEthe provided RSL 'user_name' parameter is invalid.
167GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_USER_NAMEthe job is not running in the account named by the 'user_name' parameter

Chapter 7. Usage Scenarios

There is no content available at this time.

Chapter 8. Troubleshooting

Globus Toolkit 2.x Error FAQ