Mostrar mensagens com a etiqueta copybook. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta copybook. Mostrar todas as mensagens

sábado, 6 de junho de 2015

Os Pecados Capitais que Já Derrubaram Sistemas Bilionários ☕💀

Bellacosa Mainframe fala sobre cagadas historicas e como afetam os sistemas informaticos


 🔥 Top Erros Fatais em Produção Mainframe

Os Pecados Capitais que Já Derrubaram Sistemas Bilionários ☕💀

No Mainframe, erro não é bugzinho.

Erro é:

💸 milhões processados incorretamente
🏦 contas debitadas indevidamente
📉 relatórios oficiais errados
🚨 auditoria imediata
📰 manchete no jornal

E o pior: tudo acontece rápido, silenciosamente e em escala absurda.

Se você trabalha com z/OS, memorize esta lista.


💀 1) Alterar COPYBOOK sem análise de impacto

O erro clássico que já causou inúmeros incidentes.

Copybooks são layouts compartilhados.
Um único campo alterado pode quebrar dezenas de programas.

Consequências típicas:

  • Dados truncados

  • Campos desalinhados

  • Valores lidos incorretamente

  • ABENDs em cascata

  • Corrupção silenciosa

Regra de ouro: COPYBOOK é contrato corporativo.


🔥 2) Rodar JOB no ambiente errado

Executar produção em homologação é ruim.
Executar homologação em produção é catastrófico.

Causas comuns:

  • PROCLIB errada

  • DSN incorreto

  • Parâmetros trocados

  • Confusão de JESNODE

Resultados possíveis:

💥 Atualização de bases reais
💥 Exclusão de dados válidos
💥 Processamento duplicado
💥 Pagamentos indevidos


🧨 3) DELETE ou DISP mal configurado

Uma linha de JCL pode apagar anos de dados.

Exemplo clássico:

//DD1 DD DSN=BASE.CRITICA,
// DISP=(MOD,DELETE)

Ou:

DISP=(NEW,CATLG,DELETE)

Se algo falhar → dataset pode ser removido.

Backup salva carreiras.


📉 4) Falta de controle de EOF (fim de arquivo)

Loop infinito ou leitura inválida podem ocorrer quando EOF não é tratado corretamente.

Sintomas:

  • JOB não termina

  • CPU disparando

  • Milhões de registros “fantasma”

  • Spool gigante

Em batch noturno, isso pode travar toda a janela.


💣 5) Erro numérico silencioso (S0C7 clássico)

Dados não numéricos em campo COMP ou PIC 9.

Causas frequentes:

  • Layout incompatível

  • Arquivo incorreto

  • Campo corrompido

  • Conversão mal feita

Resultado:

💥 ABEND imediato
💥 Processamento interrompido
💥 Atraso em cadeia


🏦 6) Atualização indevida de base financeira

O tipo de incidente que gera investigação formal.

Exemplos reais já ocorridos no mercado:

  • Juros calculados incorretamente

  • Débitos duplicados

  • Saldo negativo artificial

  • Lotes reprocessados

Mesmo que reversível, o impacto reputacional é enorme.


🔁 7) Processamento duplicado

Sem controle de idempotência, o mesmo arquivo pode ser processado duas vezes.

Causas:

  • Reinício mal planejado

  • Falta de marcação de controle

  • JOB reexecutado manualmente

  • Falha na etapa final

Resultado:

💸 Pagamentos duplicados
📦 Ordens duplicadas
📊 Contabilidade incorreta


🧱 8) Alterar chave VSAM sem planejamento

Arquivos VSAM dependem da estrutura de chave.

Mudanças podem causar:

  • Registros inacessíveis

  • Perda de ordenação

  • Falhas de leitura

  • Necessidade de REORG emergencial


🛑 9) Ignorar Return Codes e mensagens

JOB terminou não significa JOB bem-sucedido.

RC > 0 pode indicar:

  • Dados incompletos

  • Warnings críticos

  • Passos ignorados

  • Condições anormais

Profissional experiente sempre verifica o output completo.


🧠 10) Falta de rollback ou plano de reversão

Antes de qualquer mudança em produção, deve existir resposta para:

👉 “Se der errado, como voltamos ao estado anterior?”

Sem isso, recovery vira improviso — e improviso em produção é perigo puro.


⚠️ 11) Permissões ou segurança mal configuradas

Mudanças em RACF/ACF2/Top Secret podem bloquear:

  • JOBs automáticos

  • Interfaces externas

  • Acesso a datasets

  • Processos batch críticos

Impacto sistêmico imediato.


⏱️ 12) Estourar a janela batch

Batch noturno é cuidadosamente orquestrado.

Um JOB lento pode:

🚧 Bloquear JOBs seguintes
📊 Atrasar abertura do sistema online
🏦 Impactar operações do dia seguinte

Performance é requisito funcional.


☕ Filosofia Bellacosa Mainframe

No Mainframe, a pergunta não é:

“Vai funcionar?”

Mas sim:

“O que acontece se falhar em escala massiva?”

Profissionais experientes pensam sempre em:

🔒 Segurança
📊 Integridade
⏳ Recuperabilidade
🧱 Previsibilidade


⭐ Conclusão

Os maiores desastres em produção não vêm de tecnologia complexa.

Vêm de pequenas decisões sem análise sistêmica.

COBOL e z/OS são extremamente confiáveis — desde que tratados com respeito.

“Produção não é lugar para experimentar. É lugar para executar com precisão cirúrgica.”