adsabs / adsws

ADS web services
Other
2 stars 14 forks source link

adsws is likely swallowing 403 code and issues 500 instead #167

Open romanchyla opened 5 years ago

romanchyla commented 5 years ago

this happens when a user tries to search with a library to which he/she doesn't have access; it generates 403 in solr-service, but what comes back is generic 500 message

example query: docs(library/o8XiBWOCTVGE_g2-I3R_Ig) microlensing

traceback: exc_info Traceback (most recent call last):\n File \"/usr/local/lib/python2.7/dist-packages/flask/app.py\", line 1982, in wsgi_app\n response = self.full_dispatch_request()\n File \"/usr/local/lib/python2.7/dist-packages/flask/app.py\", line 1614, in full_dispatch_request\n rv = self.handle_user_exception(e)\n File \"/usr/local/lib/python2.7/dist-packages/flask_restful/__init__.py\", line 273, in error_router\n return original_handler(e)\n File \"/usr/local/lib/python2.7/dist-packages/flask/app.py\", line 1517, in handle_user_exception\n reraise(exc_type, exc_value, tb)\n File \"/usr/local/lib/python2.7/dist-packages/flask/app.py\", line 1612, in full_dispatch_request\n rv = self.dispatch_request()\n File \"/usr/local/lib/python2.7/dist-packages/flask/app.py\", line 1598, in dispatch_request\n return self.view_functions[rule.endpoint](**req.view_args)\n File \"/usr/local/lib/python2.7/dist-packages/flask_oauthlib/provider/oauth2.py\", line 540, in decorated\n return f(*args, **kwargs)\n File \"/app/adsws/ext/ratelimiter/__init__.py\", line 58, in check\n return func(*args, **kwargs)\n File \"/app/adsws/api/discoverer/affinity.py\", line 94, in decorated_function\n r = f(*args, **kwargs)\n File \"/app/adsws/api/discoverer/utils.py\", line 25, in decorated_function\n return f(*args, **kwargs)\n File \"/usr/local/lib/python2.7/dist-packages/flask_restful/__init__.py\", line 480, in wrapper\n resp = resource(*args, **kwargs)\n File \"/usr/local/lib/python2.7/dist-packages/flask/views.py\", line 84, in view\n return self.dispatch_request(*args, **kwargs)\n File \"/usr/local/lib/python2.7/dist-packages/flask_restful/__init__.py\", line 595, in dispatch_request\n resp = meth(*args, **kwargs)\n File \"/app/adsws/solr_service/solr/views.py\", line 51, in get\n files = self.check_for_embedded_bigquery(query, request, headers)\n File \"/app/adsws/solr_service/solr/views.py\", line 263, in check_for_embedded_bigquery\n files = self._get_stream_data(params, list(streams), request)\n File \"/app/adsws/solr_service/solr/views.py\", line 311, in _get_stream_data\n q = self._harvest_library(value, new_headers)\n File \"/app/adsws/solr_service/solr/views.py\", line 361, in _harvest_library\n r.raise_for_status()\n File \"/usr/local/lib/python2.7/dist-packages/requests/models.py\", line 939, in raise_for_status\n raise HTTPError(http_error_msg, response=self)\nHTTPError: 403 Client Error: FORBIDDEN for url: http://adsws/v1/biblib/libraries/o8XiBWOCTVGE_g2-I3R_Ig?start=0u0026rows=2000