mirrorlist-server/mirrorlist_client.wsgi | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
New commits:
commit 4976394a2f988843baf1d3e490dcc5dd3e74b1ea
Author: Matt Domsch <Matt_Domsch(a)dell.com>
Date: Tue May 11 23:14:15 2010 -0500
mirrorlist_client: add 60sec timeout to reading from the server
diff --git a/mirrorlist-server/mirrorlist_client.wsgi
b/mirrorlist-server/mirrorlist_client.wsgi
index dd6d1d9..cc4416c 100755
--- a/mirrorlist-server/mirrorlist_client.wsgi
+++ b/mirrorlist-server/mirrorlist_client.wsgi
@@ -10,8 +10,10 @@ from string import zfill, atoi, strip, replace
from paste.wsgiwrappers import *
import gzip
import cStringIO
+from datetime import datetime, timedelta
socketfile = '/var/run/mirrormanager/mirrorlist_server.sock'
+request_timeout = 60 # seconds
def get_mirrorlist(d):
try:
@@ -37,9 +39,10 @@ def get_mirrorlist(d):
readlen = len(resultsize)
resultsize = atoi(resultsize)
+ expiry = datetime.utcnow() + timedelta(seconds=request_timeout)
readlen = 0
p = ''
- while readlen < resultsize:
+ while readlen < resultsize and datetime.utcnow() < expiry:
p += s.recv(resultsize - readlen)
readlen = len(p)
Show replies by date