Thrift module: experimentModel

ModuleServicesData typesConstants
experimentModel ActionableGroup
AdvancedInputDataHandling
AdvancedOutputDataHandling
ApplicationStatus
ComputationalResourceScheduling
CorrectiveAction
DataObjectType
DataTransferDetails
DataType
ErrorCategory
ErrorDetails
ExecutionUnit
Experiment
ExperimentState
ExperimentStatus
ExperimentSummary
JobDetails
JobState
JobStatus
QualityOfServiceParams
TaskDetails
TaskState
TaskStatus
TransferState
TransferStatus
UserConfigurationData
ValidationResults
ValidatorResult
WorkflowNodeDetails
WorkflowNodeState
WorkflowNodeStatus
DEFAULT_ID
DEFAULT_PROJECT_NAME
SINGLE_APP_NODE_NAME

Constants

ConstantTypeValue
DEFAULT_IDstring"DO_NOT_SET_AT_CLIENTS"
DEFAULT_PROJECT_NAMEstring"DEFAULT"
SINGLE_APP_NODE_NAMEstring"SINGLE_APP_NODE"

Enumerations

Enumeration: ExperimentState


CREATED0
VALIDATED1
SCHEDULED2
LAUNCHED3
EXECUTING4
CANCELING5
CANCELED6
SUSPENDED7
COMPLETED8
FAILED9
UNKNOWN10

Enumeration: WorkflowNodeState


INVOKED0
EXECUTING1
CANCELING2
CANCELED3
SUSPENDED4
COMPLETED5
FAILED6
UNKNOWN7

Enumeration: TaskState


WAITING0
STARTED1
PRE_PROCESSING2
CONFIGURING_WORKSPACE3
INPUT_DATA_STAGING4
OUTPUT_DATA_STAGING5
POST_PROCESSING6
EXECUTING7
CANCELING8
CANCELED9
COMPLETED10
FAILED11
UNKNOWN12

Enumeration: JobState


SUBMITTED0
UN_SUBMITTED1
SETUP2
QUEUED3
ACTIVE4
COMPLETE5
CANCELING6
CANCELED7
FAILED8
HELD9
SUSPENDED10
UNKNOWN11

Enumeration: TransferState


DIRECTORY_SETUP0
UPLOAD1
DOWNLOAD2
ACTIVE3
COMPLETE4
STDOUT_DOWNLOAD5
STDERROR_DOWNLOAD6
CANCELING7
CANCELED8
FAILED9
HELD10
SUSPENDED11
UNKNOWN12

Enumeration: ActionableGroup


RESOURCE_ADMINS0
AIRAVATA_ADMINS1
GATEWAYS_ADMINS2
USER3
CANNOT_BE_DETERMINED4

Enumeration: ErrorCategory


FILE_SYSTEM_FAILURE0
APPLICATION_FAILURE1
RESOURCE_NODE_FAILURE2
DISK_FULL3
INSUFFICIENT_ALLOCATION4
SYSTEM_MAINTENANCE5
AIRAVATA_INTERNAL_ERROR6
CANNOT_BE_DETERMINED7

Enumeration: CorrectiveAction


RETRY_SUBMISSION0
CONTACT_SUPPORT1
CANNOT_BE_DETERMINED2

Enumeration: DataType


STRING0
INTEGER1
URI2
STDOUT3
STDERR4

Enumeration: ExecutionUnit


INPUT0
APPLICATION1
OUTPUT2

Data structures

Struct: ExperimentStatus

KeyFieldTypeDescriptionRequirednessDefault value
1experimentStateExperimentStaterequired
2timeOfStateChangei64optional

Struct: WorkflowNodeStatus

KeyFieldTypeDescriptionRequirednessDefault value
1workflowNodeStateWorkflowNodeStaterequired
2timeOfStateChangei64optional

Struct: TaskStatus

KeyFieldTypeDescriptionRequirednessDefault value
1executionStateTaskStaterequired
2timeOfStateChangei64optional

Struct: JobStatus

KeyFieldTypeDescriptionRequirednessDefault value
1jobStateJobStaterequired
2timeOfStateChangei64optional

Struct: TransferStatus

KeyFieldTypeDescriptionRequirednessDefault value
1transferStateTransferStaterequired
2timeOfStateChangei64optional

Struct: ApplicationStatus

KeyFieldTypeDescriptionRequirednessDefault value
1applicationStatestringrequired
2timeOfStateChangei64optional

Struct: DataObjectType

KeyFieldTypeDescriptionRequirednessDefault value
1keystringrequired
2valuestringoptional
3typeDataTypeoptional
4metaDatastringoptional

A structure hold experiment input output


Struct: ComputationalResourceScheduling

KeyFieldTypeDescriptionRequirednessDefault value
1resourceHostIdstringoptional
2totalCPUCounti32optional
3nodeCounti32optional
4numberOfThreadsi32optional
5queueNamestringoptional
6wallTimeLimiti32optional
7jobStartTimei32optional
8totalPhysicalMemoryi32optional
9computationalProjectAccountstringoptional

A structure holding the Computational Resource Scheduling.


Struct: AdvancedInputDataHandling

KeyFieldTypeDescriptionRequirednessDefault value
1stageInputFilesToWorkingDirbooloptional0
2parentWorkingDirectorystringoptional
3uniqueWorkingDirectorystringoptional
4cleanUpWorkingDirAfterJobbooloptional0

A structure holding specified input data handling.


Struct: AdvancedOutputDataHandling

KeyFieldTypeDescriptionRequirednessDefault value
2outputDataDirstringoptional
3dataRegistryURLstringoptional
4persistOutputDatabooloptional1

A structure holding specified output data handling.


Struct: QualityOfServiceParams

KeyFieldTypeDescriptionRequirednessDefault value
1startExecutionAtstringoptional
2executeBeforestringoptional
3numberofRetriesi32optional

A structure holding Quality of Service Parameters.


Struct: UserConfigurationData

KeyFieldTypeDescriptionRequirednessDefault value
1airavataAutoScheduleboolrequired0
2overrideManualScheduledParamsboolrequired0
3shareExperimentPubliclybooloptional0
4computationalResourceSchedulingComputationalResourceSchedulingoptional
5advanceInputDataHandlingAdvancedInputDataHandlingoptional
6advanceOutputDataHandlingAdvancedOutputDataHandlingoptional
7qosParamsQualityOfServiceParamsoptional

A structure holding the experiment configuration.


Struct: ErrorDetails

KeyFieldTypeDescriptionRequirednessDefault value
1errorIDstringrequired"DO_NOT_SET_AT_CLIENTS"
2creationTimei64optional
3actualErrorMessagestringoptional
4userFriendlyMessagestringoptional
5errorCategoryErrorCategoryoptional
6transientOrPersistentbooloptional0
7correctiveActionCorrectiveActionoptional
8actionableGroupActionableGroupoptional
9rootCauseErrorIdListlist<string>optional

Struct: JobDetails

KeyFieldTypeDescriptionRequirednessDefault value
1jobIDstringrequired"DO_NOT_SET_AT_CLIENTS"
2jobDescriptionstringrequired
3creationTimei64optional
4jobStatusJobStatusoptional
5applicationStatusApplicationStatusoptional
6errorslist<ErrorDetails>optional
7computeResourceConsumedstringoptional

Struct: DataTransferDetails

KeyFieldTypeDescriptionRequirednessDefault value
1transferIDstringrequired"DO_NOT_SET_AT_CLIENTS"
2creationTimei64optional
3transferDescriptionstringrequired
4transferStatusTransferStatusoptional

Struct: TaskDetails

KeyFieldTypeDescriptionRequirednessDefault value
1taskIDstringrequired"DO_NOT_SET_AT_CLIENTS"
2creationTimei64optional
3applicationIdstringoptional
4applicationVersionstringoptional
5applicationDeploymentIdstringoptional
6applicationInputslist<DataObjectType>optional
7applicationOutputslist<DataObjectType>optional
8taskSchedulingComputationalResourceSchedulingoptional
9advancedInputDataHandlingAdvancedInputDataHandlingoptional
10advancedOutputDataHandlingAdvancedOutputDataHandlingoptional
11taskStatusTaskStatusoptional
12jobDetailsListlist<JobDetails>optional
13dataTransferDetailsListlist<DataTransferDetails>optional
14errorslist<ErrorDetails>optional

A structure holding the actual execution context decided based on user provided configuration data or system inferred information from scheduling and QoS parameters. One experiment can have multiple tasks. Each tasks results in data transfers and jobs


Struct: WorkflowNodeDetails

KeyFieldTypeDescriptionRequirednessDefault value
1nodeInstanceIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2creationTimei64optional
3nodeNamestringrequired"SINGLE_APP_NODE"
4executionUnitExecutionUnitrequiredUNKNOWN
5executionUnitDatastringoptional
6nodeInputslist<DataObjectType>optional
7nodeOutputslist<DataObjectType>optional
8workflowNodeStatusWorkflowNodeStatusoptional
9taskDetailsListlist<TaskDetails>optional
10errorslist<ErrorDetails>optional

A structure holding the node data. nodeInstanceId - unique node identifier for each run

Struct: ValidatorResult

KeyFieldTypeDescriptionRequirednessDefault value
1resultboolrequired
2errorDetailsstringoptional

This data structure can be used to store the validation results captured during validation step and during the launchExperiment operation it can be easilly checked to see the errors occured during the experiment launch operation


Struct: ValidationResults

KeyFieldTypeDescriptionRequirednessDefault value
1validationStateboolrequired
2validationResultListlist<ValidatorResult>required

Struct: Experiment

KeyFieldTypeDescriptionRequirednessDefault value
1experimentIDstringrequired"DO_NOT_SET_AT_CLIENTS"
2projectIDstringrequired"DEFAULT"
3creationTimei64optional
4userNamestringrequired
5namestringrequired
6descriptionstringoptional
7applicationIdstringoptional
8applicationVersionstringoptional
9workflowTemplateIdstringoptional
10workflowTemplateVersionstringoptional
11userConfigurationDataUserConfigurationDataoptional
12workflowExecutionInstanceIdstringoptional
13experimentInputslist<DataObjectType>optional
14experimentOutputslist<DataObjectType>optional
15experimentStatusExperimentStatusoptional
16stateChangeListlist<WorkflowNodeStatus>optional
17workflowNodeDetailsListlist<WorkflowNodeDetails>optional
18errorslist<ErrorDetails>optional

A structure holding the experiment metadata and its child models.

userName: The user name of the targeted gateway end user on whose behalf the experiment is being created. the associated gateway identity can only be inferred from the security hand-shake so as to avoid authorized Airavata Clients mimicking an unauthorized request. If a gateway is not registered with Airavata, an authorization exception is thrown.

experimentName: The name of the experiment as defined by the user. The name need not be unique as uniqueness is enforced by the generated experiment id.

experimentDescription: The verbose description of the experiment. This is an optional parameter.

Struct: ExperimentSummary

KeyFieldTypeDescriptionRequirednessDefault value
1experimentIDstringrequired
2projectIDstringrequired
3creationTimei64optional
4userNamestringrequired
5namestringrequired
6descriptionstringoptional
7applicationIdstringoptional
8experimentStatusExperimentStatusoptional
9errorslist<ErrorDetails>optional