Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementa semáforos de escrita #68

Merged
merged 71 commits into from
Aug 18, 2023
Merged

Implementa semáforos de escrita #68

merged 71 commits into from
Aug 18, 2023

Conversation

bcbernardo
Copy link
Contributor

Utiliza a tabela recém-criada configuracoes.capturas_semaforos para indicar combinações de unidades geográficas, períodos de referência e tabelas de dados públicos no banco de dados que estão sendo escritas no banco em cada momento, evitando que ocorram dois ETLs simultâneos com o mesmo conteúdo.

Essa alteração evita a entrada de dados duplicados em tabelas onde não há chaves únicas.

maaottoni and others added 30 commits July 25, 2023 18:33
…e tem funcionamento indicado como 'Sempre Aberto'
…de funções e de etapas de verificação de dados que não garantem integridade dos dados a serem inseridos
maaottoni and others added 15 commits August 3, 2023 16:18
Aumenta timeout_seconds para capturas de BPA-i, AIH e Procedimentos Ambulatoriais para evitar [Errno 110] Connection timed out\n')
Comenta fora o trecho da função `extrair_dbc_lotes()` que checa se o tamanho do arquivo baixado é o mesmo que o do arquivo no servidor FTP, já que não tem havido mais downloads corrompidos desde o uso do ftplib, e a checagem de tamanho no servidor às vezes gera falha em alguns arquivos do FTP do DataSUS.
Atualiza dependências para que a versão mais recente (>= 6.0.0) do pacote pyyaml seja instalada, evitando erro pela falta de suporte à PEP 517
Adiciona semáforos em ETLs de SM
@fernandesbrun fernandesbrun marked this pull request as ready for review August 17, 2023 18:27
@fernandesbrun fernandesbrun marked this pull request as draft August 17, 2023 20:15
Adiciona semáforos em ETLs gerais relevantes para SM e corrige bug de typo no script saude_mental
@fernandesbrun fernandesbrun marked this pull request as ready for review August 18, 2023 12:08
Copy link
Contributor Author

@bcbernardo bcbernardo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fernandesbruna identifiquei um só problema (bem sutil e fácil de corrigir) na sua parte, e um outro na parte que você acabou herdando dos PRs da Maíra que foram para a main. Consegue corrigir para liberarmos o PR?

@@ -232,6 +305,23 @@ def ceps(teste: bool = False) -> None:
ceps_pendentes_query = ceps_pendentes_query.limit(10)
ceps_pendentes = ceps_pendentes_query.all()

try:
checar_escrita_liberada(
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aqui tem uma indentação a mais, vai dar erro

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrigido no commit 88e9b89

@@ -30,10 +30,15 @@ class SisabErroCompetenciaInexistente:
def __init__(self,exception):
self.exception = exception

def insere_erro_database(self,sessao,traceback_str,operacao_id,periodo_id):
def insere_erro_database(self,sessao,traceback_str,operacao_id,periodo_id,unidade_geografica_id):
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isso é da @maaottoni , mas como está vai dar erro em uma das alterações que ela fez. O argumento unidade_geografica_id deveria estar expresso como unidade_geografica_id="28de805e-5bdc-49c3-863c-2cf87f95e371", em vez de como argumento posicional (sem default).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrigido no commit f3d7765

Comment on lines 35 to 38
if unidade_geografica_id is None:
unidade_geografica_id = '28de805e-5bdc-49c3-863c-2cf87f95e371'
else:
unidade_geografica_id = unidade_geografica_id
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Desnecessário se o comentário acima for resolvido.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrigido no commit f3d7765

@bcbernardo bcbernardo merged commit 49740df into main Aug 18, 2023
4 checks passed
@bcbernardo bcbernardo deleted the semaforos branch August 18, 2023 17:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants