Merge lp://qastaging/~pfalcon/linaro-android-mirror/xmlrpc-error-msg into lp://qastaging/linaro-android-mirror

Proposed by Paul Sokolovsky
Status: Merged
Approved by: Paul Sokolovsky
Approved revision: 44
Merged at revision: 43
Proposed branch: lp://qastaging/~pfalcon/linaro-android-mirror/xmlrpc-error-msg
Merge into: lp://qastaging/linaro-android-mirror
Diff against target: 81 lines (+48/-1)
4 files modified
linaro_android_mirror/service.py (+17/-1)
linaro_android_mirror/tests/data/manifest-bad-loc.xml (+5/-0)
linaro_android_mirror/tests/data/manifest-no-rev.xml (+5/-0)
linaro_android_mirror/tests/test_mirrorer_integrational.py (+21/-0)
To merge this branch: bzr merge lp://qastaging/~pfalcon/linaro-android-mirror/xmlrpc-error-msg
Reviewer Review Type Date Requested Status
Michael Hudson-Doyle Pending
Review via email: mp+61739@code.qastaging.launchpad.net

Description of the change

Hello Michael,

Here's patch to actually report any exception happened during mirroring down to client, because so far client receive generic error, e.g. https://android-build.linaro.org/jenkins/job/linaro-android_leb-panda/36/console

It also shows kind of issues I have with Twisted - it has strange defaults (not passing error content down to client), and to work that around, one have to dig in internal classes. Or maybe chain error callback thru the web of code, but that's exactly why exceptions were invented - to avoid that. Anyway, I based this solution on discussion at and around http://twistedmatrix.com/pipermail/twisted-python/2005-April/010248.html . Please see if this is good enough or is there other way to do it.

Thanks,
Paul

To post a comment you must log in.
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

I think the approach in lp:~mwhudson/linaro-android-mirror/xmlrpc-error-msg is a bit cleaner. I agree that DeferredList and XMLRPC error reporting are both pretty awkward though.

Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

> I think the approach in lp:~mwhudson/linaro-android-mirror/xmlrpc-error-msg is
> a bit cleaner. I agree that DeferredList and XMLRPC error reporting are both
> pretty awkward though.

So, should that implementation be used instead of mine, because it seems to be applied on top? Also, from my, non-twisted-expert view, it has the same traits (uses a private method, fishes for stuff like failure.value.subFailure), but also adds more: deeper black twisted magic, overloads semantics of standard method. All in all, Michael, if that's the right way to do it, can you please merge it the way it should be (instead or on top of my changes). Thanks!

Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

Ok, we're having issues due to this in realtime (developers can't get build up due to mirror errors, and cannot see the actual errors, and need to recurse to me for looking them up). So, I'll merge this patch as knowing working, let's elaborate it as needed afterwards.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches