Categorias:

Funções do sistema (Controle do sistema)

SYSTEM$PIPE_FORCE_RESUME

Força um canal pausado usando ALTER PIPE a retomar. Isso é necessário em um dos seguintes cenários:

  • O proprietário do canal transfere a propriedade do canal para outra função enquanto o canal está pausado.

  • O canal pausado pode se tornar obsoleto.

    Um canal é considerado obsoleto quando é pausado por mais tempo do que o período de retenção limitado para mensagens de eventos recebidas para o canal (o padrão são 14 dias). Quando cada notificação chega ao fim desse período, o Snowflake o programa para ser descartado dos metadados internos. Se o canal for retomado mais tarde, Snowpipe pode processar notificações mais antigas que 14 dias com base no melhor esforço. A Snowflake não pode garantir que essas notificações mais antigas sejam processadas.

    Este cenário diz respeito apenas a objetos de canal que aproveitam as mensagens em nuvem para acionar carregamentos de dados (ou seja, onde AUTO_INGEST = TRUE na definição do canal).

A execução desta função retoma o canal especificado.

Para determinar quantos arquivos estão em fila, consulte SYSTEM$PIPE_STATUS.

Para obter mais informações, consulte Snowpipe.

Sintaxe

SYSTEM$PIPE_FORCE_RESUME( '<pipe_name>' , '[ STALENESS_CHECK_OVERRIDE ] [ , OWNERSHIP_TRANSFER_CHECK_OVERRIDE ]')
Copy

Argumentos

pipe_name

Canal para retomar a execução.

STALENESS_CHECK_OVERRIDE

Especifica a retomada de um canal obsoleto. Um canal é considerado obsoleto quando é pausado por mais tempo do que o período de retenção limitado para mensagens de eventos recebidas para o canal (o padrão são 14 dias).

Nota

Este argumento só diz respeito a objetos de canal que aproveitam as mensagens em nuvem para acionar carregamentos de dados.

OWNERSHIP_TRANSFER_CHECK_OVERRIDE

Especifica a retomada de um canal após a transferência da propriedade do canal para outra função.

Nota

Para garantir a compatibilidade retroativa, passar pipe_name como única entrada é sintaticamente equivalente a passar tanto pipe_name como OWNERSHIP_TRANSFER_CHECK_OVERRIDE.

Se ambos STALENESS_CHECK_OVERRIDE e OWNERSHIP_TRANSFER_CHECK_OVERRIDE forem necessários, estes argumentos podem ser introduzidos em qualquer ordem.

Notas de uso

  • Somente o proprietário do canal (ou seja, a função com o privilégio OWNERSHIP no canal) ou uma função com o privilégio OPERATE no canal pode chamar esta função SQL:

    Operações SQL sobre objetos de esquema também exigem o privilégio USAGE no banco de dados e esquema que contém o objeto.

  • pipe_name é uma cadeia de caracteres, portanto, deve ser delimitada por aspas simples:

    • Observe que o nome completo deve ser incluído entre aspas simples, incluindo o banco de dados e o esquema (se o nome for totalmente qualificado), ou seja, '<bd>.<esquema>.<nome_canal>'.

    • Se o nome do canal diferenciar letras maiúsculas e minúsculas ou incluir quaisquer caracteres ou espaços especiais, as aspas duplas são necessárias para processar o caso/caracteres. As aspas duplas devem ser incluídas dentro das aspas simples, ou seja, '"<nome_canal>"'.

Exemplos

Forçar um canal com um nome que não diferencia maiúsculas e minúsculas a ser retomado:

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.mypipe');
Copy

Forçar um canal com um nome que diferencia maiúsculas e minúsculas a ser retomado:

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema."myPipe"');
Copy

Forçar a retomada de um canal obsoleto depois que sua propriedade foi transferida para outra função:

SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.stalepipe','staleness_check_override, ownership_transfer_check_override');
Copy