diff --git a/ecrire/inc_version.php3 b/ecrire/inc_version.php3
index 3a2cde00215651bcc0645ff1c75b9e174fed0fba..5459cb1c076b5fff90108e1bc41530ea5112389e 100644
--- a/ecrire/inc_version.php3
+++ b/ecrire/inc_version.php3
@@ -635,5 +635,33 @@ function email_valide($adresse) {
 		trim($adresse)));
 }
 
+//
+// log des evenements
+//
+
+function logrotate() {
+	$logfile = ($flag_ecrire ? "" : "ecrire/") . "data/spip.log";
+	@rename($logfile.'.2',$logfile.'.3'); 
+	@rename($logfile.'.1',$logfile.'.2'); 
+	@rename($logfile,$logfile.'.1'); 
+}
+
+function spip_log($message) {
+	global $flag_ecrire;
+
+	$pid = @getmypid();
+	$uid = @get_current_user();
+	$message = date("M d H:i:s")." spip $uid"."[$pid]: "
+	.ereg_replace("\n*$", "\n", $message);
+
+	$logfile = ($flag_ecrire ? "" : "ecrire/") . "data/spip.log";
+	$f = @fopen($logfile, "ab");
+	if ($f) {
+		fputs($f, $message);
+		fclose($f);
+		if (filesize($logfile) > 10*1024)
+			logrotate();
+	}
+}
 
 ?>
diff --git a/inc-cache.php3 b/inc-cache.php3
index 901e239406af0a018ac672b869a56aec7ca1d013..d69d2c105b5387b6714dc10f68f30170b2c2548b 100644
--- a/inc-cache.php3
+++ b/inc-cache.php3
@@ -62,7 +62,6 @@ function utiliser_cache($chemin_cache, $delais) {
 	$use_cache &= empty($HTTP_POST_VARS);
 
 	if (!$use_cache) {
-//		include_ecrire("inc_mysql.php3");
 		include_ecrire("inc_connect.php3");
 		if (!$GLOBALS['db_ok']) $use_cache = true;
 	}
diff --git a/inc-public-global.php3 b/inc-public-global.php3
index 9ab9e30982266e6085621ef7411bd3383e4aaee9..ea3283654fb186ddcf4d5bbca18c6970fa83b7e0 100644
--- a/inc-public-global.php3
+++ b/inc-public-global.php3
@@ -24,10 +24,6 @@ function inclure_fichier($fond, $delais, $contexte_inclus = "") {
 	$fichier_cache = generer_nom_fichier_cache($fichier_requete);
 	$chemin_cache = "CACHE/".$fichier_cache;
 
-	// Faire varier aleatoirement le delai (50 - 150 %)
-	// afin d'obtenir des recalculs non simultanes
-	$delais = $delais / 2 + $delais * rand(0, 255) / 256;
-
 	$use_cache = utiliser_cache($chemin_cache, $delais);
 
 	if (!$use_cache) {
@@ -70,7 +66,7 @@ else {
 
 
 //
-// Authentification, le cas echeant
+// Authentification
 //
 $auteur_session = '';
 if ($HTTP_COOKIE_VARS['spip_session'] OR $PHP_AUTH_USER) {
@@ -382,11 +378,13 @@ if (lire_meta("activer_statistiques") != "non") {
 //
 // Envoi du mail quoi de neuf
 //
-if ($db_ok) {
-	$majnouv = lire_meta('majnouv');
-	if ((lire_meta('quoi_de_neuf')=='oui') AND ($jours_neuf=lire_meta('jours_neuf')) AND (email_valide($adresse_neuf = lire_meta('adresse_neuf'))) AND ((time() - $majnouv) > 3600*24*$jours_neuf)) {
 
+$majnouv = lire_meta('majnouv');
+if ((lire_meta('quoi_de_neuf')=='oui') AND ($jours_neuf=lire_meta('jours_neuf')) AND (email_valide($adresse_neuf = lire_meta('adresse_neuf'))) AND ((time() - $majnouv) > 3600*24*$jours_neuf)) {
+	include_ecrire('inc_connect.php3');
+	if ($db_ok) {
 		// lock && indication du prochain envoi
+		include_ecrire('inc_meta.php3');
 		ecrire_meta('majnouv', time());
 		ecrire_metas();
 
@@ -405,6 +403,7 @@ if ($db_ok) {
 		if ($mail_nouveautes) {
 			include_ecrire('inc_mail.php3');
 			$nom_site = lire_meta('nom_site');
+			spip_log("envoi mail nouveautes");
 			envoyer_mail($adresse_neuf, "[$nom_site] Les nouveautes", $mail_nouveautes);
 		}
 	}