[yt-svn] commit/yt: 4 new changesets

Bitbucket commits-noreply at bitbucket.org
Fri Nov 30 10:40:39 PST 2012


4 new commits in yt:


https://bitbucket.org/yt_analysis/yt/changeset/7274061dec79/
changeset:   7274061dec79
branch:      yt
user:        samskillman
date:        2012-11-30 19:03:42
summary:     Adding attempt to retrieve cloud data several times if first try fails.
affected #:  2 files

diff -r c7f2e2f38932ff786dcd2be9326dbfb385f44de9 -r 7274061dec7955a659b00d0c224b72b639552e57 yt/utilities/answer_testing/framework.py
--- a/yt/utilities/answer_testing/framework.py
+++ b/yt/utilities/answer_testing/framework.py
@@ -166,13 +166,23 @@
         url = _url_path % (self.reference_name, pf_name)
         try:
             resp = urllib2.urlopen(url)
-            # This is dangerous, but we have a controlled S3 environment
-            data = resp.read()
-            rv = cPickle.loads(data)
         except urllib2.HTTPError as ex:
             raise YTNoOldAnswer(url)
             mylog.warning("Missing %s (%s)", url, ex)
             rv = default
+        else:
+            # This is dangerous, but we have a controlled S3 environment
+            tries = 0
+            while(tries < 3):
+                try:
+                    data = resp.read()
+                except:
+                    tries += 1
+                else:
+                    break
+            if tries >= 3:
+                raise YTCloudError(url)
+            rv = cPickle.loads(data)
         self.cache[pf_name] = rv
         return rv
 


diff -r c7f2e2f38932ff786dcd2be9326dbfb385f44de9 -r 7274061dec7955a659b00d0c224b72b639552e57 yt/utilities/exceptions.py
--- a/yt/utilities/exceptions.py
+++ b/yt/utilities/exceptions.py
@@ -163,6 +163,14 @@
         return "There is no old answer available.\n" + \
                str(self.path)
 
+class YTCloudError(YTException):
+    def __init__(self, path):
+        self.path = path
+
+    def __str__(self):
+        return "Failed to retrieve cloud data. Connection may be broken.\n" + \
+               str(self.path)
+
 class YTEllipsoidOrdering(YTException):
     def __init__(self, pf, A, B, C):
         YTException.__init__(self, pf)



https://bitbucket.org/yt_analysis/yt/changeset/476e82a5518f/
changeset:   476e82a5518f
branch:      yt
user:        samskillman
date:        2012-11-30 19:34:07
summary:     Fixing up the answer retrieval trying a bit.
affected #:  1 file

diff -r 7274061dec7955a659b00d0c224b72b639552e57 -r 476e82a5518febeda2002074054d61895d54d578 yt/utilities/answer_testing/framework.py
--- a/yt/utilities/answer_testing/framework.py
+++ b/yt/utilities/answer_testing/framework.py
@@ -168,20 +168,20 @@
             resp = urllib2.urlopen(url)
         except urllib2.HTTPError as ex:
             raise YTNoOldAnswer(url)
-            mylog.warning("Missing %s (%s)", url, ex)
-            rv = default
         else:
-            # This is dangerous, but we have a controlled S3 environment
-            tries = 0
-            while(tries < 3):
+            for this_try in range(3):
+                time.sleep(0.01)
                 try:
                     data = resp.read()
                 except:
-                    tries += 1
+                    pass
                 else:
+                    # We were succesful
                     break
-            if tries >= 3:
+            else:
+                # Raise error if all tries were unsuccessful
                 raise YTCloudError(url)
+            # This is dangerous, but we have a controlled S3 environment
             rv = cPickle.loads(data)
         self.cache[pf_name] = rv
         return rv



https://bitbucket.org/yt_analysis/yt/changeset/e6b633a403dd/
changeset:   e6b633a403dd
branch:      yt
user:        samskillman
date:        2012-11-30 19:37:08
summary:     Moving the sleep.
affected #:  1 file

diff -r 476e82a5518febeda2002074054d61895d54d578 -r e6b633a403dd3ecdaad700a4d8339933ccd63527 yt/utilities/answer_testing/framework.py
--- a/yt/utilities/answer_testing/framework.py
+++ b/yt/utilities/answer_testing/framework.py
@@ -170,11 +170,10 @@
             raise YTNoOldAnswer(url)
         else:
             for this_try in range(3):
-                time.sleep(0.01)
                 try:
                     data = resp.read()
                 except:
-                    pass
+                    time.sleep(0.01)
                 else:
                     # We were succesful
                     break



https://bitbucket.org/yt_analysis/yt/changeset/59114fb09b62/
changeset:   59114fb09b62
branch:      yt
user:        MatthewTurk
date:        2012-11-30 19:40:38
summary:     Merged in samskillman/yt (pull request #358)
affected #:  2 files

diff -r c9b4cd40d3d4acd631614130811a79bd44898dfb -r 59114fb09b62b7164bc34d54bcd0716c03380080 yt/utilities/answer_testing/framework.py
--- a/yt/utilities/answer_testing/framework.py
+++ b/yt/utilities/answer_testing/framework.py
@@ -166,13 +166,22 @@
         url = _url_path % (self.reference_name, pf_name)
         try:
             resp = urllib2.urlopen(url)
-            # This is dangerous, but we have a controlled S3 environment
-            data = resp.read()
-            rv = cPickle.loads(data)
         except urllib2.HTTPError as ex:
             raise YTNoOldAnswer(url)
-            mylog.warning("Missing %s (%s)", url, ex)
-            rv = default
+        else:
+            for this_try in range(3):
+                try:
+                    data = resp.read()
+                except:
+                    time.sleep(0.01)
+                else:
+                    # We were succesful
+                    break
+            else:
+                # Raise error if all tries were unsuccessful
+                raise YTCloudError(url)
+            # This is dangerous, but we have a controlled S3 environment
+            rv = cPickle.loads(data)
         self.cache[pf_name] = rv
         return rv
 


diff -r c9b4cd40d3d4acd631614130811a79bd44898dfb -r 59114fb09b62b7164bc34d54bcd0716c03380080 yt/utilities/exceptions.py
--- a/yt/utilities/exceptions.py
+++ b/yt/utilities/exceptions.py
@@ -163,6 +163,14 @@
         return "There is no old answer available.\n" + \
                str(self.path)
 
+class YTCloudError(YTException):
+    def __init__(self, path):
+        self.path = path
+
+    def __str__(self):
+        return "Failed to retrieve cloud data. Connection may be broken.\n" + \
+               str(self.path)
+
 class YTEllipsoidOrdering(YTException):
     def __init__(self, pf, A, B, C):
         YTException.__init__(self, pf)

Repository URL: https://bitbucket.org/yt_analysis/yt/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.



More information about the yt-svn mailing list