OpenDreams  OD_1.5
Projeto OpenDreams - Openbus
Membros públicos | Atributos Públicos
Referência ao interface tecgraf::openbus::DRMAA::Session

import "drmaa.idl";

Mostrar lista completa dos membros

Membros públicos

void init (in string contactString) raises ( DrmsInitException, InvalidContactStringException, AlreadyActiveSessionException, DefaultContactStringException, NoDefaultContactStringSelectedException, OutOfMemoryException, DrmCommunicationException, AuthorizationException, InvalidArgumentException, InternalException)
 Faz a inicialização de uma sessão, tornando-a ativa.
void exit () raises ( DrmsExitException, NoActiveSessionException, DrmCommunicationException, AuthorizationException, OutOfMemoryException, InternalException)
 Faz a finalização de uma sessão ativa.
JobTemplate createJobTemplate () raises ( DrmCommunicationException, NoActiveSessionException, OutOfMemoryException, AuthorizationException, InternalException)
 Faz a criação de um job template.
void deleteJobTemplate (in JobTemplate jobTemplate_) raises ( DrmCommunicationException, NoActiveSessionException, OutOfMemoryException, AuthorizationException, InvalidArgumentException, InvalidJobTemplateException, InternalException)
 Libera um job template.
string runJob (in JobTemplate jobTemplate_) raises ( TryLaterException, DeniedByDrmException, DrmCommunicationException, AuthorizationException, InvalidJobTemplateException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Submete um job para execução.
StringList runBulkJobs (in JobTemplate jobTemplate_, in long beginIndex, in long endIndex, in long step) raises ( TryLaterException, DeniedByDrmException, DrmCommunicationException, AuthorizationException, InvalidJobTemplateException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Operação ainda não implementada.
void control (in string jobName, in JobControlAction operation) raises ( DrmCommunicationException, AuthorizationException, ResumeInconsistentStateException, SuspendInconsistentStateException, HoldInconsistentStateException, ReleaseInconsistentStateException, InvalidJobException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Operação ainda não implementada.
void synchronize (in StringList jobList, in long long timeout, in boolean dispose) raises ( DrmCommunicationException, AuthorizationException, ExitTimeoutException, InvalidJobException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Operação ainda não implementada.
JobInfo wait (in string jobName, in long long timeout) raises ( DrmCommunicationException, AuthorizationException, ExitTimeoutException, InvalidJobException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Aguarda um único job completar sua execução e retorna o status do com a condição de término e as informações de uso de recursos pelo job.
JobState jobStatus (in string jobName) raises ( DrmCommunicationException, AuthorizationException, InvalidJobException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)
 Retorna o estado do job identificado pelo parâmetro jobName.

Atributos Públicos

const long long TIMEOUT_WAIT_FOREVER = -1
const long long TIMEOUT_NO_WAIT = 0
const string JOB_IDS_SESSION_ANY = "DRMAA_JOB_IDS_SESSION_ANY"
const string JOB_IDS_SESSION_ALL = "DRMAA_JOB_IDS_SESSION_ALL"
readonly attribute string contact
 Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com os nomes das instalações DRMAA disponíveis. Cada um desses nomes representa uma instalação específica de um sistema DRM específico (por exemplo, a versão do CSGRid executando em um determinado IP e porta). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo a instalação DRMAA associada a sessão ativa.
readonly attribute DRMAA::Version version
 Contém uma instância de Version que representa o número da versão da implementação do DRMAA.
readonly attribute string drmsInfo
 Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com identificadores dos DRMS disponíveis. Um identificador de DRMS denota um tipo específico de DRMS (por exemplo, Sun Grid Engine, CSGrid). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo o identificador do DRMS associado a sessão ativa.
readonly attribute string drmaaImplementation
 Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com implementações DRMAA disponíveis. A string de uma implementação DRMAA denota uma versão específica do DRMS (por exemplo, Condor v6.6). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo a implementação DRMAA associada a sessão ativa.

Descrição detalhada

Representa uma sessão DRMAA.

Definido na linha 531 do ficheiro drmaa.idl.


Documentação dos métodos

Operação ainda não implementada.

Faz a criação de um job template.

O job template é usado para definir as características para submissão de jobs. Uma vez que o job template tenha sido criado, ele deve ser posteriormente removido (usando o método deleteJobTemplate()) quando não for mais necessário.

Retorna:
Um novo job template. DrmCommunicationException Falha na conexão com o sistema DRMS.
Excepções:
NoActiveSessionExceptionSe a sessão ainda não foi inicializada ou se a sessão já foi finalizada. OutOfMemoryException Caso o sistema DRMS não possua memória suficiente para executar essa operação.
AuthorizationExceptionCaso o usuário não possua permissão para executar essa operação.
InternalExceptionFalha na execução da operação no DRMS.

Libera um job template.

Esse método não possui nenhum efeito em jobs em execução. Somente pode ser usado em job templates criados pelo método createJobTemplate() e que ainda não foram liberados.

Parâmetros:
[in]jobTemplate_O job template a ser liberado.

DrmCommunicationException Falha na conexão com o sistema DRMS.

Excepções:
NoActiveSessionExceptionSe a sessão ainda não foi inicializada ou se a sessão já foi finalizada. OutOfMemoryException Caso o sistema DRMS não possua memória suficiente para executar essa operação.
AuthorizationExceptionCaso o usuário não possua permissão para executar essa operação.
InvalidJobTemplateExceptionse o job não foi criado adequadamente ou se o job template já foi liberado.
InternalExceptionFalha na execução da operação no DRMS.

Faz a finalização de uma sessão ativa.

Esse método termina a conexão com o DRMS e finaliza a sessão ativa. A chamada a esse método não afeta qualquer job já submetido (na fila ou em execução). Qualquer instância de job template que ainda não tenha sido removida, se torna inválida após esse método ser executado, mesmo depois de uma subsequente chamada ao método init().

Excepções:
DrmsExitExceptionFalha durante a finalização da sessão.
NoActiveSessionExceptionSe a sessão ainda não foi inicializada ou se a sessão já foi finalizada antes. DrmCommunicationException Falha na conexão com o sistema DRMS. OutOfMemoryException Caso o sistema DRMS não possua memória suficiente para executar essa operação.
AuthorizationExceptionCaso o usuário não possua permissão para executar essa operação.
InternalExceptionFalha na execução da operação no DRMS.

Faz a inicialização de uma sessão, tornando-a ativa.

Esse método tem que ser chamado antes de qualquer outra chamada na sessão, com exceção dos métodos contact, drmsInfo e drmaaImplementation definidos na interface Session.

Parâmetros:
[in]contactStringEspecifica qual sistema DRMS deve ser usado, no caso de haver mais de um. Quando vazio, o DRMS default é usado.
Excepções:
DrmsInitExceptionFalha durante a inicialização da sessão.
InvalidContactStringExceptionCaso o parâmetro contactString seja inválido.
AlreadyActiveSessionExceptionCaso esse método seja chamado mais de uma vez.
DefaultContactStringExceptionCaso o contactString vazio e o DRMS default não consiga ser conectado.
NoDefaultContactStringSelectedExceptionCaso o contactString seja vazio e exista mais de um DRMS disponível. OutOfMemoryException Caso o sistema DRMS não possua memória suficiente para executar essa operação. DrmCommunicationException Falha na conexão com o sistema DRMS.
AuthorizationExceptionCaso o usuário não possua permissão para executar essa operação.
InvalidArgumentExceptionValor de argumento inválido.
InternalExceptionFalha na execução da operação no DRMS.

Retorna o estado do job identificado pelo parâmetro jobName.

O OpenDreams verifica se o job já finalizou usando um cache próprio que mantém as informações sobre jobs que finalizaram. Se não encontrar a informação nesse cache, pede ao serviço CommandPersistenceService que possui persistido em arquivo as informações sobre todos os jobs submetidos.

É importante observar que nem sempre o estado de retorno DONE (finalizado normalmente) significa que o comando terminou com código de retorno igual a zero. Se o configurador do algoritmo não tiver definido a opção que captura a saída do comando, o estado retornado pode ser DONE também. Se o configurador tiver definido a opção que captura a saída do comando e se o comando terminar com um valor diferente de zero, o estado é retornado como FAILED.

Os seguintes estados podem ser retornados:

JobState.QUEUED_ACTIVE: se o comando estiver na fila.

JobState.RUNNING: se o comando já tiver sido removido da fila para ser executado.

JobState.DONE: se o comando tiver finalizado e o código de saída do job não tiver sido capturado ou se o código de saída do job tiver sido capturado com valor zero.

JobState.FAILED: se o comando tiver finalizado e o código de saída do job tiver sido capturado com valor diferente de zero ou se houve falha na inicialização do comando ou se ele foi cancelado ou se houve falha na obtenção do código de saída.

JobState.UNDETERMINED: em qualquer condição que não se enquadra nas descritas acima.

Na implementação do OpenDreams, os seguintes estados não são tratados: SYSTEM_ON_HOLD, USER_ON_HOLD, USER_SYSTEM_ON_HOLD, SYSTEM_SUSPENDED, USER_SUSPENDED e USER_SYSTEM_SUSPENDED.

StringList tecgraf::openbus::DRMAA::Session::runBulkJobs ( in JobTemplate  jobTemplate_,
in long  beginIndex,
in long  endIndex,
in long  step 
) raises ( TryLaterException, DeniedByDrmException, DrmCommunicationException, AuthorizationException, InvalidJobTemplateException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)

Operação ainda não implementada.

Submete um job para execução.

O job submetido está definido pelo job template, passado como parâmetro. O identificador retornado deve ser o mesmo fornecido pelo DRMS responsável pelo agendamento do job.

Parâmetros:
[in]jobTemplate_O job template que define o job submetido para execução.
Retorna:
Um identificador do job proveniente do DRMS.

TryLaterException a requisição não pode ser processada devido a uma carga excessiva do sistema. DeniedByDrmException o DRMS rejeitou o job devido a configuração do job template fornecida ou da configuração do próprio DRMS. DrmCommunicationException Falha na conexão com o sistema DRMS.

Excepções:
AuthorizationExceptionCaso o usuário não possua permissão para executar essa operação.
InvalidJobTemplateExceptionse o job não foi criado adequadamente ou se o job template já foi liberado.
NoActiveSessionExceptionSe a sessão ainda não foi inicializada ou se a sessão já foi finalizada. OutOfMemoryException Caso o sistema DRMS não possua memória suficiente para executar essa operação.
InvalidArgumentExceptionValor de argumento inválido.
InternalExceptionFalha na execução da operação no DRMS.
void tecgraf::openbus::DRMAA::Session::synchronize ( in StringList  jobList,
in long long  timeout,
in boolean  dispose 
) raises ( DrmCommunicationException, AuthorizationException, ExitTimeoutException, InvalidJobException, NoActiveSessionException, OutOfMemoryException, InvalidArgumentException, InternalException)

Operação ainda não implementada.

Aguarda um único job completar sua execução e retorna o status do com a condição de término e as informações de uso de recursos pelo job.

Se for chamado com o JOB_IDS_SESSION_ANY como parâmetro no job name e não houver jobs ativos na sessão, a exceção InvalidJobException é lançada.

Para um mesmo job name, apenas uma chamada ao método wait ocorre com sucesso. Para qualquer outra que esteja aguardando uma chamada wait ao mesmo job, é lançada uma exceção InvalidJobException.

Em um ambiente multi-threaded com chamadas ao método wait usando JOB_IDS_SESSION_ANY, apenas a thread ativa recebe o resultado do wait enquanto as outras continuam esperando por outro job. Se não houver mais jobs submetidos, as outras threads recebem a exceção InvalidJobException.

Se uma thread A está aguardando por um determinado job e uma outra thread, B, aguardando pelo mesmo job ou por JOB_IDS_SESSION_ANY, recebe a informação que esse job terminou, a thread A deve receber a exceção InvalidJobException.

Parâmetros:
[in]jobNameO identificador de um job ou a constante Session.JOB_IDS_SESSION_ANY que representa qualquer job da sessão ativa
[in]timeoutO tempo máximo (em segundos) a ser esperado pela finalização dos job ou as constantes TIMEOUT_WAIT_FOREVER e TIMEOUT_NO_WAIT.
Retorna:
Um objeto JobInfo, que encapsula o estado de finalização do job e as informações sobre o uso de recursos durante sua execução.

Documentação dos dados membro

readonly attribute string tecgraf::openbus::DRMAA::Session::contact

Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com os nomes das instalações DRMAA disponíveis. Cada um desses nomes representa uma instalação específica de um sistema DRM específico (por exemplo, a versão do CSGRid executando em um determinado IP e porta). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo a instalação DRMAA associada a sessão ativa.

Definido na linha 837 do ficheiro drmaa.idl.

Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com implementações DRMAA disponíveis. A string de uma implementação DRMAA denota uma versão específica do DRMS (por exemplo, Condor v6.6). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo a implementação DRMAA associada a sessão ativa.

Definido na linha 860 do ficheiro drmaa.idl.

readonly attribute string tecgraf::openbus::DRMAA::Session::drmsInfo

Se esse atributo for lido antes de uma chamada ao método init(), retorna uma string contendo a lista (separada por vírgula) com identificadores dos DRMS disponíveis. Um identificador de DRMS denota um tipo específico de DRMS (por exemplo, Sun Grid Engine, CSGrid). Se esse atributo for lido depois de uma chamada ao método init(), retorna uma string contendo o identificador do DRMS associado a sessão ativa.

Definido na linha 851 do ficheiro drmaa.idl.

const string tecgraf::openbus::DRMAA::Session::JOB_IDS_SESSION_ALL = "DRMAA_JOB_IDS_SESSION_ALL"

Definido na linha 535 do ficheiro drmaa.idl.

const string tecgraf::openbus::DRMAA::Session::JOB_IDS_SESSION_ANY = "DRMAA_JOB_IDS_SESSION_ANY"

Definido na linha 534 do ficheiro drmaa.idl.

Definido na linha 533 do ficheiro drmaa.idl.

Definido na linha 532 do ficheiro drmaa.idl.

Contém uma instância de Version que representa o número da versão da implementação do DRMAA.

Definido na linha 842 do ficheiro drmaa.idl.


A documentação para este interface foi gerada a partir do seguinte ficheiro:
 Tudo Classes Namespaces Ficheiros Funções Variáveis Definições de tipos Enumerações Valores da enumeração