Anos atrás, quando o sistema que usávamos na empresa ainda era feito em Clipper (desenvolvimento interno), havia uma pequena via crucis quando era necessário reindexar as tabelas: O usuário X reclamava que o sistema estava com problemas, eu verificava que seria necessário fazer a reindaxação, enviava para toda a rede um aviso de que seria necessário sair do sistema, ficava mais cinco minutos mandando a mesma mensagem, ligava para alguns usuários teimosos, e quando finalmente conseguia que todos saíssem, algum usuário sem-noção tentava entrar no sistema NO MEIO da reindexação, detonando TODO o banco de dados.
Quando finalmente foi liberado o orçamento para que um desenvolvedor mexesse no sistema, a primeira alteração (que eu ‘convenientemente’ considerei como crítica) foi criar uma maneira de impedir que usuários usassem o sistema ou até mesmo tentassem acessá-lo, quando fosse necessário reiniciar. O desenvolvedor surgiu com uma idéia simples: sempre que fosse necessário reindexar o banco de dados, era só criar um arquivo ‘para.txt‘ (que ‘pararia’ o sistema, sacaram? hã? hã?) que o sistema automagicamente expulsaria os usuários quando eles tentassem acessar alguma nova tela, e os impediria de entrar.
Alteração aplicada, fiz todos os testes, e funcionou perfeitamente. Para evitar problemas, apenas algumas poucas pessoas ficaram sabendo dessa nova função, assim não aconteceria de alguém criar um arquivo de parada só para causar problemas à empresa. Tudo transcorreu bem, até o fechamento do mês: do nada, o sistema começou a expulsar todo mundo durante a geração dos relatórios finais. E, não importava o quanto eu apagasse o para.txt, ele sempre voltava, poucos minutos depois.
Acusações pipocavam de todos os lados. Seria possível que alguém tivesse descoberto sobre esse arquivo? E estaria esse alguém aproveitando para causar danos à empresa? Mas… quem teria contado?
Com os ânimos exaltados, resolvi partir para a única solução: desliguei a rede, e deixei apenas uma máquina ligada ao servidor, para realizar o fechamento do mês. E lá estava o para.txt, surgindo do nada, em toda sua graça. Algumas horas depois de muita investigação, consegui descobrir o problema:
Durante o fechamento, eram impressos vários relatórios, entre eles alguns que eram divididos por cada estado/região do Brasil. O programador original do sistema, por motivos que nunca entenderei, achou que seria interessante criar um arquivo de texto com o conteúdo a ser impresso, enviar para a impressora, e logo depois apagar o arquivo. Como se a falta de noção não bastasse, ele não usou nomes aleatórios ou coisa do tipo para gerar os arquivos: no caso dos estados, era o nome do estado mesmo, sem acentos ou espaços.
Inclusive um arquivo chamado…. para.txt
