#2370 Latest FAS update causes 500 errors in fedoracommunity
Closed: Fixed None Opened 13 years ago by lmacken.

= phenomenon =

The latest FAS update in production is now causing in 500 errors when performing user queries in Fedora Community's People Search.

Fedora Community traceback from production:
{{{
URL: http://localhost:10012/community/moksha_connector/fas/query/query_people/%7B%22filters%22%3A%20%7B%22prefix%22%3A%20%22a%22%7D%2C%20%22rows_per_page%22%3A%2020%2C%20%22start_row%22%3A%200%7D
Module weberror.errormiddleware:162 in call
<< traceback_supplement = Supplement, self, environ
sr_checker = ResponseStartChecker(start_response)
app_iter = self.application(environ, sr_checker)
return self.make_catching_iter(app_iter, environ, sr_checker)
except:

app_iter = self.application(environ, sr_checker)
Module repoze.tm:23 in call
<< try:
result = self.application(environ, save_status_and_headers)
except:
self.abort()
result = self.application(environ, save_status_and_headers)
Module repoze.who.middleware:107 in call
<< wrapper = StartResponseWrapper(start_response)
app_iter = app(environ, wrapper.wrap_start_response)

           # The challenge decider almost(?) always needs information from the

app_iter = app(environ, wrapper.wrap_start_response)
Module tw.core.middleware:43 in call
<< def call(self, environ, start_response):
return self.wsgi_app(environ, start_response)

       def wsgi_app(self, environ, start_response):

return self.wsgi_app(environ, start_response)
Module tw.core.middleware:68 in wsgi_app
<< else:
# Pass request downstream
resp = req.get_response(self.application)
return resp(environ, start_response)
finally:
resp = req.get_response(self.application)
Module webob.request:918 in get_response
<< del exc_info
else:
status, headers, app_iter = self.call_application(
application, catch_exc_info=False)
return self.ResponseClass(
status, headers, app_iter = self.call_application(
Module webob.request:887 in call_application
<< captured[:] = [status, headers, exc_info]
return output.append
app_iter = application(self.environ, start_response)
if (not captured
or output):
app_iter = application(self.environ, start_response)
Module tw.core.resource_injector:68 in _injector
<< def _injector(environ, start_response):
req = Request(environ)
resp = req.get_response(app)
content_type = resp.headers.get('Content-Type','text/plain').lower()
if 'html' in content_type:
resp = req.get_response(app)
Module webob.request:918 in get_response
<< del exc_info
else:
status, headers, app_iter = self.call_application(
application, catch_exc_info=False)
return self.ResponseClass(
status, headers, app_iter = self.call_application(
Module webob.request:887 in call_application
<< captured[:] = [status, headers, exc_info]
return output.append
app_iter = application(self.environ, start_response)
if (not captured
or output):
app_iter = application(self.environ, start_response)
Module beaker.middleware:73 in call
<< self.cache_manager)
environ[self.environ_key] = self.cache_manager
return self.app(environ, start_response)
return self.app(environ, start_response)
Module beaker.middleware:152 in call
<< headers.append(('Set-cookie', cookie))
return start_response(status, headers, exc_info)
return self.wrap_app(environ, session_start_response)

       def _get_session(self):

return self.wrap_app(environ, session_start_response)
Module routes.middleware:131 in call
<< r'\1', oldpath)

           response = self.app(environ, start_response)

           # Wrapped in try as in rare cases the attribute will be gone already

response = self.app(environ, start_response)
Module moksha.middleware.csrf:188 in call
<< return response(environ, start_response)

           response = request.get_response(self.application)

           if environ.get(self.auth_state):

response = request.get_response(self.application)
Module webob.request:918 in get_response
<< del exc_info
else:
status, headers, app_iter = self.call_application(
application, catch_exc_info=False)
return self.ResponseClass(
status, headers, app_iter = self.call_application(
Module webob.request:887 in call_application
<< captured[:] = [status, headers, exc_info]
return output.append
app_iter = application(self.environ, start_response)
if (not captured
or output):
app_iter = application(self.environ, start_response)
Module moksha.middleware.middleware:84 in call
<< def call(self, environ, start_response):
self.register_livewidgets(environ)
return self.mokshaapp(environ, start_response)

       def register_livewidgets(self, environ):

return self.mokshaapp(environ, start_response)
Module pylons.wsgiapp:125 in call
<<
controller = self.resolve(environ, start_response)
response = self.dispatch(controller, environ, start_response)

           if 'paste.testing_variables' in environ and hasattr(response,

response = self.dispatch(controller, environ, start_response)
Module pylons.wsgiapp:324 in dispatch
<< if log_debug:
log.debug("Calling controller class with WSGI interface")
return controller(environ, start_response)

       def load_test_env(self, environ):

return controller(environ, start_response)
Module moksha.middleware.extensionpoint:232 in call
<< response = Response(script)
else:
response = request.get_response(self.application)

           return response(environ, start_response)

response = request.get_response(self.application)
Module webob.request:918 in get_response
<< del exc_info
else:
status, headers, app_iter = self.call_application(
application, catch_exc_info=False)
return self.ResponseClass(
status, headers, app_iter = self.call_application(
Module webob.request:887 in call_application
<< captured[:] = [status, headers, exc_info]
return output.append
app_iter = application(self.environ, start_response)
if (not captured
or output):
app_iter = application(self.environ, start_response)
Module moksha.middleware.connector:86 in call
<< try:
response = self._run_connector(environ, request,
s[0], s[1], *s[2:],
params)
except IndexError, e:
s[0], s[1], *s[2:],
Module moksha.middleware.connector:136 in _run_connector
<< if conn:
conn_obj = conn'connector_class'
r = conn_obj._dispatch(op, path, remote_params,
dispatch_params)

               if pretty_print:

r = conn_obj._dispatch(op, path, remote_params, dispatch_params)
Module moksha.connector.connector:81 in _dispatch
<< """
if op in ('request_data', 'call', 'query', 'query_model'):
return getattr(self, op)(resource_path, params, _cookies,
kwds)
elif op in self._method_paths:
return self._method_pathsop
return getattr(self, op)(resource_path, params, _cookies, kwds)
Module moksha.connector.connector:271 in query
<< order = sort_order,
sort_col = sort_col,
filters = filters,
params)
filters = filters,
Module fedoracommunity.connectors.fasconnector:224 in query_people
<< f['search'] = p
result = self.call('user/list',
params=f)
params=f)
Module fedoracommunity.connectors.fasconnector:89 in call
<< if not params:
params = {}
return self.request_data(resource_path, params, _cookies)

       def create_fas_object(self):

return self.request_data(resource_path, params, _cookies)
Module fedoracommunity.connectors.fasconnector:77 in request_data
<< return self._fas_client.send_request(resource_path,
auth_params = auth_params,
req_params = params)

       def introspect(self):

req_params = params)
Module fedora.client.proxyclient:292 in send_request
<< except (KeyError, AttributeError):
msg = _('Unknown HTTP Server Response')
raise ServerError(url, http_status, msg)

           # In case the server returned a new session cookie to us

raise ServerError(url, http_status, msg)
ServerError: ServerError(https://admin.fedoraproject.org/accounts/user/list, 500, Unknown HTTP Server Response)
}}}


Looked in the logs, this is a dupe of #2366

Login to comment on this ticket.

Metadata