Hello, Peter

In revision 8646:50c65739cd1a, I've changed the error handling in history_contents.py:index and the client-side code that fetches dataset info. 

Long form:
Now when an error (like yours) occurs when fetching dataset information for one or more datasets, the method will record the error for that dataset as part of the returned list and continue trying to fetch the other requested datasets. In other words, one specific dataset in error will not cause the entire API request to fail (and break the history panel).

Client-side code has been added to handle these types of errors better through the API and the initial mako page building. Now a dataset's server error will be shown on the client side as dataset in the 'error' state.

Short form:
Both the API and client side should handle single datasets error-ing more gracefully than they did and the history panel should be more resilient and useful during and after a server error (at least of this kind).

Please let me know if you see more problems,
C




On Thu, Jan 17, 2013 at 5:54 PM, Peter Cock <p.j.a.cock@googlemail.com> wrote:


On Thursday, January 17, 2013, Carl Eberhard wrote:
Hello, Peter

The blank panel should definitely be handled more gracefully in this situation - I'll work on that.


Great :)
 
Have you noticed though, since your patch, any particular pattern to which metadata names are turning out to equal None (some obviously missing metadata field)? Is there a particular datatype?

No, and thus far I've only had it on my development Galaxy install which has (compared to a production system) been exposed to plenty of cluster oddities and other corner cases. It is also running on SQLite (easy to reset and it is just me running jobs so contention is not normally an issue).

Note that without adding more debugging or looking directly in the database there is no easy way to tell what the datasets causing this problem were, or what file type.
 
 
Have you seen the assertion fail?
C


Not yet, no. The fact the two fields were both None suggests to me sometimes an entry was not recorded properly...

Regards,

Peter