[SP-pm] dbmopen
Luis Motta Campos
luismottacampos at yahoo.co.uk
Wed Aug 13 07:15:35 PDT 2008
Henrique Rennó wrote:
> Olá!
>
> Há muito tempo fiz uma aplicação simples com o DBM pra uma servidora web.
> Hoje houveram mudanças e estou colocando a nova aplicação na nova servidora
> web. Estou tendo problemas com o dbmopen, na servidora antiga o script
> funciona normalmente, posso abrir o banco, pegar os valores pelo hash,
> pesquisar, adicionar etc. Na nova máquina não está funcionando. Dei um print
> na variável $! depois de chamar dbmopen, mas nada é exibido. O que poderia
> ser? Acredito que o DBM é um padrão antigo do perl e a nova máquina está com
> o perl 5.8 instalado. O banco (arquivos .dir e .pag) estão no mesmo local do
> script.
Hum. Sem uma única linha de código, eu não vou conseguir ajudar você nem
por milagre.
E não existem logs do apache dizendo nada, e o Perl não emite warnings?
Fora isso, o dbmopen está deprecado desde a versão 5.6.1 do Perl. Se
você instalou uma máquina nova, eu não duvido que instalou um 5.10, e
isso quer dizer que eles podem finalmente ter cumprido a promessa. :D E
você vai ter de mudar do dbmopen() para o também velho e quase condenado
"tie()" (que é o treco que substituiu o dbmopen, muito, muito tempo atrás).
Mais: você copiou o arquivo, mas tem certeza de que ele não está
danificado? E como é que você implementa acessos concorrentes? Que eu
saiba, o problema maior em usar DBM é que a biblioteca não implementa
nenhum tipo de mecanismo de proteção contra race conditions.
Honestamente, eu parei de usar DBM em 1996. Recomendo que você faça o
mesmo. Antes tarde do que nunca.
Putamplexos.
--
Luis Motta Campos is a software engineer,
Perl Programmer, foodie and photographer.
More information about the SaoPaulo-pm
mailing list