geopython / geopython/pywps

Request error cannot be properly reported

Open
#461 0 comments 0 reactions 0 assignees View on GitHub
bug
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.