Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa
Archives de la liste
- From: Christophe Wolfhugel <adresse@cachée>
- To: adresse@cachée
- Subject: DB_FILE & In memory
- Date: Tue, 22 Sep 1998 08:28:40 +0200
Je me suis aperçu d'un truc l'autre jour : la documentation de DB_File(3)
indique que lorsque "tie" est fait avec "undef" comme nom de fichier on
obtient un fichier "hash" (ou autre) résident en mémoire.
J'ai fait la même expérience avec dbopen(3) et la bibliothèque DB livrée
par Digital (je ne sais pas si c'est une 1.85 ou plus ancienne). La
documentation n'utilise pas les mêmes mots : mettez "NULL" au nom de
fichier lorsque vous ne souhaitez pas le conserver.
Et l'exécution semble donner raison à Digital : lorsque le nom de fichier
n'est pas indiqué, la bibliothèque crée un fichier temporaire puis fait un
unlink : il n'y a donc pas de "hash" résident en mémoire, contrairement aux
impressions.
Dans ce cas n'aurait-on pas intérêt à ne plus cacher ce fichier DB dans
sympa, et au chargement, simplement comparer le "mtime" du fichier plat
et celui du fichier texte pour décider, où non, d'un rechargement ?
Inconvénient : on ne saurait changer le tri d'un "DB_File" existant.
Autre question philosophique pour gagner beaucoup de cycles : conserver
les adresses en mémoire triées dans un "hash" par TLD :
$abo{'fr'}->...
$abo{'de'}->...
...
--
Christophe Wolfhugel -+- SIS, Institut Pasteur, Paris
Boulot : adresse@cachée, $HOME : adresse@cachée
- DB_FILE & In memory, Christophe Wolfhugel, 22/09/1998
Archives gérées par MHonArc 2.6.19+.