fail calls to openlibrary.php gracefully #9977
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Categorically fixes
IA_Lending_API
issue where Open Library breaks whenarchive.org/services/openlibrary.php
not reachableWas discovered when trying to hit https://openlibrary.org/account/loans. Because
archive.org/services/openlibrary.php
is currently blocked by mod_security WAF, the API was hitting non-json 403 response and dying.Thie code path here was:
get_waitinglist_for_user
in/openlibrary/openlibrary/core/waitinglist.py
which died while trying to callwaitlist.extend(WaitingLoan.query(userid=account.itemname))
. TheWaitingLoan.query
usescore.lending.IA_Lending_API
which has a_post
method https://github.com/internetarchive/openlibrary/compare/master...php-graceful-failure?quick_pull=1#diff-896c18b3ccfadfa425c7e24a86226343314fce7957d14a8023d3e159156b224bL1092 which has been patched to return{}
instead ofraise
when a failure occurs.