"
Apoiado por

Um mal que veio por bem

Era uma vez um cliente com um sistema produtivo com 9 servidores mais rápidos que a própria sombra. Esses 9 servidores eram geridos por 4 administradores de sistema muito bons que os mantinham sempre oleados e a fluírem à velocidade máxima. Um dia tive de desenvolver um carregamento muito complexo que criava milhões de classificações. Quando se começou a testar o programa, constatou-se que algo estava muito lento, lento demais. Na maior parte do tempo o programa estava encalhado à espera de SELECTs sequenciais à tabela INOB, que era gigante. Como o meu programa não usava a INOB estranhámos. Depois de alguma investigação descobriu-se um SELECT desnecessário e ainda por cima mal feito (sem usar nem a chave primária nem um índice) que alguém deixou num user-exit amplamente utilizado. Comentou-se o SELECT e de repente o meu programa ficou centenas de vezes mais rápido. Eu fiquei feliz mas quem ficou mesmo a ganhar foram os administradores de sistema que tiveram um inesperado upgrade grátis a todas as 9 máquinas!

O Abapinho saúda-vos.

6 comentários a “Um mal que veio por bem”

  1. Michelle Diz:

    Achei sensacional achar tanta coisa bacana em um blog em PT!

  2. nununo Diz:

    Olá Michelle, ainda bem que gostas do Abapinho. Se puderes promove-o entre os teus amigos e colegas! obrigado :)

  3. Paulo Diz:

    Parabéns pelo blog!

    já que entrou no assunto ‘lentidão’, que tal algumas dicas de performance para o pessoal? :)

  4. nununo Diz:

    Olá Paulo,
    Obrigado!
    Prevêem-se dicas de performance para breve.
    Nuno

  5. John Doe Diz:

    É giro simplificar os problemas assim. Mas lá está… comentar apenas por comentar o SELECT, embora seja um SELECT errado não resolve os problemas e até pode criar novos.
    Porque é que o SELECT estava no lugar que estava?

    A ideia do blog é boa, a simplicidade com que mudam programas (ou explicam que os mudam) é assustadora para quem, como eu, vive em projectos gigantes, e a linguagem é grosseira, mas isto é o teu blog, portanto, força.

  6. admin Diz:

    Foi há muito tempo mas lembro-me que o SELECT era garantidamente inútil porque os seus resultados não eram usados. Talvez tivesse sido usado no passado, não sei. Além disso não usava a chave primária e por isso demorava eternidades. De qualquer forma na altura analisámos o código e as versões e concluímos que a nossa correcção podia ser feita sem impacto.

Deixe um comentário


Acerca do Abapinho
O Abapinho é suportado pelo WordPress
Artigos (RSS) e Comentários (RSS).