summaryrefslogtreecommitdiff
path: root/program/steps
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2010-09-16 13:02:27 +0000
committeralecpl <alec@alec.pl>2010-09-16 13:02:27 +0000
commitb8d96f6e609f3bb8a72fa724bc273175c8e7dbb1 (patch)
tree6d28bbab3518db37a2c2daea8915a1e5eaa815ed /program/steps
parent431234538a789ce5f56e33b6e61f6e0e4ae386d1 (diff)
- Use random sleep interval up to 3 sec. in 'get' action when IMAP conn. fails
Diffstat (limited to 'program/steps')
-rw-r--r--program/steps/mail/get.inc7
1 files changed, 3 insertions, 4 deletions
diff --git a/program/steps/mail/get.inc b/program/steps/mail/get.inc
index 50731e012..5e4414059 100644
--- a/program/steps/mail/get.inc
+++ b/program/steps/mail/get.inc
@@ -41,11 +41,10 @@ if (!$RCMAIL->imap_connect()) {
// Some servers have MAXPERIP or other limits.
// To workaround this we'll wait for some time
// and try again (once).
- // Note: When message contains more inline parts and the server limit is low
- // this stil maybe the issue, while we're using the same sleep interval, but
- // I didn't found better solution.
+ // Note: Random sleep interval is used to minimize concurency
+ // in getting message parts
if (!isset($_GET['_redirected'])) {
- sleep(2);
+ usleep(rand(10,30)*100000); // 1-3 sec.
header('Location: ' . $_SERVER['REQUEST_URI'] . '&_redirected=1');
}
else {