Author: esj@rezo.net
Date: 2008-09-26 22:27:37 +0200 (ven, 26 sep 2008)
New Revision: 12800
Log:
En produisant du JavaScript avec un Set-Timeout-Reload à 0, le processus d'importation programmaait sa relance avant d'avoir signalé dans les meta qu'il avait fini. Une commutation de processus juste à ce moment, et hop la base était réimportée (résultat identique mais double temps de calcul), et pour l'insertion c'était franchement la plaie: des doublons en pagaille, et même pas forcément exactement le double. Correction en lançant le Time-Out totalement à la fin, et en évitant d'en produire un 2e lors de la 2e passe de l'insertion.
Autre amélioration: à chaque reprise on vérifie que le fichier archive est toujours là, autrement on arrête proprement. Du coup, si pour une raison ou une autre (archive corrompue en particulier) le processus de restauration coince, il suffit de renommer l'archive pour récupérer la main (avec une base probablement pas cohérente, mais c'est déjà ça).
Modified:
branches/spip-2.0/ecrire/base/import_all.php
branches/spip-2.0/ecrire/exec/import_all.php
branches/spip-2.0/ecrire/inc/import.php
spip/ecrire/base/import_all.php
spip/ecrire/exec/import_all.php
spip/ecrire/inc/import.php