Erros KeyCommitTooLargeException causando dataloss - Dataflow Streaming
Description
Problema
-
Erros do tipo “
KeyCommitTooLargeException
“ causaram data loss para a tenant “tenant527fbabb93d74b73bffa2f1a43ba5793 (c22ecca829fd4bfa8a79da0fa81b6463
)“ durante os dias 10/Fevereiro/2025 à 12/Fevereiro/2025. Essa tenant possui o app Gesplan instalado. -
Relatório gerado através de script Gesplan para detectar dados faltantes.
-
A falha acima afeta a gravação dos dados no GCS, processo de reprovisionamento da tenant não foi capaz de recuperar grande massa de dados perdido
12.092.295
registros. Task de reprovisionamento:
-
Observado que as falhas referente ao erro
KeyCommitTooLargeException
iniciaram no dia 20/Janeiro/2025, conforme conta no log: https://cloudlogging.app.goo.gl/EbvnBPwrDRUG1i1v5 e continuam ocorrendo na data atual (16/Fevereiro/2025).
-
E ocorreu um deploy no dia 20/01 referente a ajustes no Dataflow Streaming:
-
Referenciando as issues e PRs abaixo:
-
https://totvsideia.slack.com/archives/C04725ZG8FM/p1737381453806799
-
CAPL-6946: [STORAGE_API] Coleta quando o registro aterrissou no BigQuery: STORAGE_APITo do
-
https://github.com/totvslabs/mdm/commit/4d1a4e161ac434ee6fa5014a9e88a741e308a783
-
-
Eu identifiquei a issue abaixo com esforços para resolver problemas de “
KeyCommitTooLargeException
“:-
CAPL-7068: Adicionar as flags de tenant storageApi e bigqueryLandingAt na tableRowDone