Request error cannot be properly reported
- Dominant language
- Python
- Stars
- 186
- Forks
- 117
- Avg merge
- 11d 20h
- Merged PRs (30d)
- 1
Description
# Description
My current pyWPS is unable to start up (obviously I need to fix that...) but the error handling/reporting is seemingly failing.
I inserted an extra LOGGER in this fragment of code from the `call` method in `app/Service.py`:
```
try:
response = None
if wps_request.operation == 'getcapabilities':
response = self.get_capabilities(wps_request, request_u$
response._update_status(WPS_STATUS.SUCCEEDED, u'', 100)
elif wps_request.operation == 'describeprocess':
response = self.describe(wps_request, request_uuid, wps$
response._update_status(WPS_STATUS.SUCCEEDED, u'', 100)
elif wps_request.operation == 'execute':
response = self.execute(
wps_request.identifier,
wps_request,
request_uuid
)
return response
except Exception as e:
LOGGER.exception(e)
```
and now have the following stack trace:
```
[2019-03-27 07:36:49,813] ERROR [exceptions.py:45] Exception: code: 500, locator: No applicable error code, please check error log., description:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/pywps-4.0.0-py2.7.egg/pywps/app/Service.py", line 332, in call
store_status(request_uuid, WPS_STATUS.FAILED, u'Request rejected due to exception', 100)
TypeError: can't pickle thread.lock objects
```
It seems there needs to be an improvement to the way that *store_status* works?
# Environment
- operating system:
- Python version: 2.7
- PyWPS version: 4.0.0
- source/distribution
- [ ] git clone
- [ ] Debian
- [x] PyPI
- [ ] zip/tar.gz
- [ ] other (please specify):
- web server
- [ ] Apache/mod_wsgi
- [ ] CGI
- [x] nGinx
# Steps to Reproduce
Unable to provide code.
# Additional Information
Contributor guide
Assessment
This issue has not been assessed yet.