O envio de tarefas a partir de uma versão do SDK após a data suportada resulta em interrupções e numa redução do débito para tarefas de streaming ou em lote de execução prolongada. Para mitigar potenciais problemas, faça o seguinte:
- Atualize a versão do SDK. (Preferencial)
- Volte a enviar a tarefa com um token temporário.
- Retomar a tarefa interrompida.
Iniciar tarefas com versões do SDK não suportadas
Quando envia uma tarefa do Dataflow a partir de uma versão do SDK após a data suportada, recebe uma mensagem de erro que lhe indica que atualize a versão do SDK ou use um token temporário quando enviar a tarefa.
O valor do token na mensagem de erro contém a data/hora em que o token expira, bem como o próprio token. A data de validade é definida para duas semanas no futuro.
Se quiser usar o token, reenvie a tarefa usando a flag de experiência unsupported_sdk_temporary_override_token
e o valor do token.
--experiments=unsupported_sdk_temporary_override_token=TOKEN
Se enviar uma tarefa com o token após a respetiva expiração, recebe uma mensagem de erro diferente a informar sobre o estado de expiração. Pode atualizar para uma versão suportada do SDK ou reenviar o seu trabalho sem o token para receber um novo token.
Os tokens não devem ser usados como uma forma permanente de continuar a usar um SDK não suportado. Algum tempo após a data não suportada de um SDK, todos os tokens são revogados e todas as tarefas que usam essa versão do SDK não suportada são rejeitadas. Para mais detalhes sobre o estado de apoio técnico de cada SDK, consulte o artigo Estado de apoio técnico da versão do SDK.
Retomar tarefas interrompidas
As tarefas do Dataflow de execução prolongada que usam SDKs não suportados, como tarefas de streaming, também são interrompidas e têm o respetivo débito significativamente reduzido. Estes trabalhos interrompidos podem ser identificados através da seguinte mensagem de erro nos registos de trabalhos:
O fluxo de trabalho foi interrompido automaticamente pelo serviço porque usa um SDK Apache Beam não suportado para Python 2.3.0. Atualize para a versão mais recente do SDK. Para retomar temporariamente a tarefa interrompida, use o
gcloud alpha dataflow jobs resume-unsupported-sdk --token=TOKEN --region=REGION JOB_ID
. Tenha em atenção que a tarefa retomada por este token será novamente interrompida a 2020-08-28T11:21:58-07:00. Para ver uma lista das versões do SDK suportadas, consulte: https://cloud.google.com/dataflow/support#support-status-for-dataflow-sdk-releases.
Conforme sugerido no erro, a interrupção pode ser atenuada através do comando resume-unsupported-sdk. A retoma de um trabalho interrompido é uma solução temporária. Em alternativa, deve atualizar a versão do SDK para evitar ações de descontinuação futuras.