Closed guilhermeadc closed 3 months ago
Não foi identificado um PR ativo para validação.
tarefa já encontra-se feita
Prezado,
Houve um entendimento errado sobre o que deveria ser feito. O vídeo anterior alega que nenhuma implementaçâo deverá ser feita pois o comportamento descrito já é feito pelo módulo, o que não está correto.
É de conhecimento que o sistema valida o tamanho do documento durante o recebimento e rejeita o processo caso ultrapasse, mas não é isto que se pede nesta demanda. O problema é que o sistema de destino está baixando todo o documento, para somente ao final, validar e rejeitar o processo devido a existência de um documento grande. O que se pede é que esta validação seja feita antes de baixar os documentos, avaliando o tamanho dos arquivos a partir das informações presentes nos metadados.
Abaixo segue uma evidência de testes onde demonstra que um arquivo de 20MBs foi baixado no sistema destinatário e, somente depois, o erro foi lançado e o processo rejeitado, consumindo banda de rede e tempo desnecessário.
[root@8d91d94c08fc mod-pen]# php MonitoramentoTarefasPEN.php > /debug.log &
[1] 1228
[root@8d91d94c08fc mod-pen]# Xdebug: [Step Debug] Could not connect to debugging client. Tried: host.docker.internal:9003 (fallback through xdebug.client_host/xdebug.client_port) :-(
[root@8d91d94c08fc mod-pen]#
[root@8d91d94c08fc mod-pen]# tail -f /debug.log
00001 - [23/04/2023 23:55:37] (1228) [MONITORAMENTO] Iniciando serviço de monitoramento de pendências de trâmites de processos
00002 - [23/04/2023 23:55:37] (1228) [MONITORAMENTO] Recuperando lista de pendências do PEN
00003 - [23/04/2023 23:55:42] (1228) [MONITORAMENTO] 1 pendências de trâmites identificadas
00004 - [23/04/2023 23:55:42] (1228) [MONITORAMENTO] >>> Enviando pendência 104386 (status 2) para fila de processamento
00005 - [23/04/2023 23:55:42] Processando recebimento de protocolo [receberProcedimento] com IDT 104386
00006 - [23/04/2023 23:55:42] (1228) [PROCESSAMENTO] Solicitando metadados do trâmite 104386
00007 - [23/04/2023 23:55:45] (1228) [PROCESSAMENTO] 1 componentes digitais identificados no protocolo 99990.000016/2023-79 [+3,76s]
00008 - [23/04/2023 23:55:45] (1228) [PROCESSAMENTO] Baixando componente digital 1 particionado [+0s]
00009 - [23/04/2023 23:55:51] (1228) [PROCESSAMENTO] Recuperado parte 1 de 4 do componente digital 1 (5120 kbs). Taxa de transferência: 906,19 kb/s [+5,65s]
00010 - [23/04/2023 23:55:54] (1228) [PROCESSAMENTO] Recuperado parte 2 de 4 do componente digital 1 (5120 kbs). Taxa de transferência: 1753,42 kb/s [+2,93s]
00011 - [23/04/2023 23:55:56] (1228) [PROCESSAMENTO] Recuperado parte 3 de 4 do componente digital 1 (5120 kbs). Taxa de transferência: 2295,96 kb/s [+2,24s]
00012 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Recuperado parte 4 de 4 do componente digital 1 (2207,58 kbs). Taxa de transferência: 2164,29 kb/s [+1,03s]
00013 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Validando integridade de componente digital 1 [+0s]
00014 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Tempo total de validação de integridade: 0,12s (17567,58 kb/s) [+0,12s]
00015 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Inicializado transação para recebimento do trâmite 104386 do protocolo 99990.000016/2023-79 [+0s]
00016 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Sincronizando o recebimento de processos concorrentes... [+0s]
00017 - [23/04/2023 23:55:57] (1228) [PROCESSAMENTO] Liberando processo concorrente de recebimento de processo ... [+0s]
00018 - [23/04/2023 23:55:58] (1228) [PROCESSAMENTO] Persistindo/atualizando dados do processo com NRE 0000018001822023 [+0,3s]
00019 - [23/04/2023 23:55:58] (1228) [PROCESSAMENTO] Quantidade de documentos para recebimento: 1 [+0,35s]
00020 - [23/04/2023 23:55:58] (1228) [PROCESSAMENTO] Registrando trâmite externo do processo [+0,15s]
00021 - [23/04/2023 23:55:59] (1228) [PROCESSAMENTO] Iniciando o armazenamento dos componentes digitais pendentes [+0,62s]
00022 - [23/04/2023 23:55:59] (1228) [PROCESSAMENTO] Validação:
O tamanho máximo geral permitido para documentos externos é 5Mb.
Trilha de Processamento:
#0 /opt/sei/web/rn/DocumentoRN.php(668): InfraRN->__call('alterarRN0004In...', Array)
#1 /opt/sei/web/modulos/pen/rn/ReceberComponenteDigitalRN.php(377): DocumentoRN->alterarRN0004(Object(DocumentoDTO))
#2 /opt/sei/web/modulos/pen/rn/ReceberComponenteDigitalRN.php(99): ReceberComponenteDigitalRN->cadastrarAnexoDoDocumento(Object(AnexoDTO))
#3 /opt/sei/web/modulos/pen/rn/ReceberProcedimentoRN.php(573): ReceberComponenteDigitalRN->atribuirComponentesDigitaisAoDocumento(120, Array)
#4 /opt/sei/web/modulos/pen/rn/ReceberProcedimentoRN.php(181): ReceberProcedimentoRN->atribuirComponentesDigitaisAosDocumentos(Object(ProcedimentoDTO), '000001800182202...', 104386, Array, Object(stdClass))
#5 /opt/infra/infra_php/InfraRN.php(140): ReceberProcedimentoRN->receberProcedimentoInternoControlado(Object(stdClass))
#6 /opt/sei/web/modulos/pen/rn/ReceberProcedimentoRN.php(88): InfraRN->__call('receberProcedim...', Array)
#7 /opt/sei/web/modulos/pen/rn/ProcessarPendenciasRN.php(179): ReceberProcedimentoRN->receberProcedimento(104386)
#8 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(400): ProcessarPendenciasRN->receberProcedimento('104386')
#9 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(370): PendenciasTramiteRN->enviarPendenciaProcessamentoDireto(Object(PendenciaDTO))
#10 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(95): PendenciasTramiteRN->enviarPendenciaProcessamento(Object(PendenciaDTO), false)
#11 /opt/sei/scripts/mod-pen/MonitoramentoTarefasPEN.php(30): PendenciasTramiteRN->encaminharPendencias(false, false, false)
#12 {main}
[+0,04s]
00023 - [23/04/2023 23:55:59] (1228) [PROCESSAMENTO] Validação:
O tamanho máximo geral permitido para documentos externos é 5Mb.
Trilha de Processamento:
#0 /opt/sei/web/modulos/pen/rn/ReceberProcedimentoRN.php(88): InfraRN->__call('receberProcedim...', Array)
#1 /opt/sei/web/modulos/pen/rn/ProcessarPendenciasRN.php(179): ReceberProcedimentoRN->receberProcedimento(104386)
#2 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(400): ProcessarPendenciasRN->receberProcedimento('104386')
#3 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(370): PendenciasTramiteRN->enviarPendenciaProcessamentoDireto(Object(PendenciaDTO))
#4 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(95): PendenciasTramiteRN->enviarPendenciaProcessamento(Object(PendenciaDTO), false)
#5 /opt/sei/scripts/mod-pen/MonitoramentoTarefasPEN.php(30): PendenciasTramiteRN->encaminharPendencias(false, false, false)
#6 {main}
[+0,02s]
00024 - [23/04/2023 23:56:01] (1228) [MONITORAMENTO] Validação:
O tamanho máximo geral permitido para documentos externos é 5Mb.
Trilha de Processamento:
#0 /opt/sei/web/modulos/pen/rn/ReceberProcedimentoRN.php(88): InfraRN->__call('receberProcedim...', Array)
#1 /opt/sei/web/modulos/pen/rn/ProcessarPendenciasRN.php(179): ReceberProcedimentoRN->receberProcedimento(104386)
#2 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(400): ProcessarPendenciasRN->receberProcedimento('104386')
#3 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(370): PendenciasTramiteRN->enviarPendenciaProcessamentoDireto(Object(PendenciaDTO))
#4 /opt/sei/web/modulos/pen/rn/PendenciasTramiteRN.php(95): PendenciasTramiteRN->enviarPendenciaProcessamento(Object(PendenciaDTO), false)
#5 /opt/sei/scripts/mod-pen/MonitoramentoTarefasPEN.php(30): PendenciasTramiteRN->encaminharPendencias(false, false, false)
#6 {main}
Testes feito após correção do erro mencionado: https://drive.google.com/file/d/1ITW2OyCNbb1pn0CmoQUKPWJ_D5YDL51s/view?usp=sharing
Solicita-se uma comprovação que a mensagem foi ajustada para contemplar a grandeza !!!!
@euviniciusmendonca segue imagens de como ficou os textos (painel e log), como mencionei
no log de erro:
Como Product Owner, eu aprovo essa issue. @caduvieira @pedrohpms.
Como a parte negocial não tem como realizar a validação da issue, encaminho aos cuidados da CGSIS, para eventual validação técnica e posterior aceite.
Para ciência @caduvieira , @euviniciusmendonca , @mateussbh , @amelquia
05/06/24 Card movido para a Sprint 43.
@mateussbh essa correção foi realizada na issue #343, além da substituição da mensagem solicitada, essa solução também resolve o problema da validação que ocorria apenas após o download.
Diante da informação trazida pelo comentário https://github.com/pengovbr/mod-sei-pen/issues/155#issuecomment-2155015884, estou concluindo essa issue por já ter sido contemplada pela entrega 3.7.0, issue #343.
Descreva o erro Módulo aparentemente está realizando a validação do tamanho do documento somente após o final do download, não recusando-o antecipadamente através da análise dos metadados. Isto faz com que seja realizado o download de arquivos de forma desnecessária.
Para reproduzir Passos para reproduzir o comportamento:
Comportamento esperado Esperado que o trâmite seja rejeitado imediatamente após análise dos metadados em que um determinado documento ultrapasse os limites estabelecidos pelo administrador.
Screenshots Nenhum
Contexto da falha (Por favor, complete a seguinte informação):
Banco de dados: Qualquer
Informações adicionais Adicione qualquer outro contexto sobre o problema aqui.
Log de Erros