Hi,
I have a default Zato setup with 2 servers. After running for some time (around one day) under low load we get errors like shown in the traceback belown. We also see a similiar error saying ‘invalid start byte’.
Our services are calling a MS SQL Server using pymssql. Sometimes there are also encoding errors in pymssql (see https://github.com/pymssql/pymssql/issues/445). I am not sure if it is related, but both errors are showing what seems to be random byte sequences. So it looks like some kind of memory corruption.
Regards, Jan
2016-07-20 10:12:36,963 - ^[[1;31mERROR^[[0m - 13563:Dummy-8596 - gunicorn.main:22 - Error handling request
Traceback (most recent call last):
File “/opt/zato/2.0.7/code/eggs/gunicorn-18.0-py2.7.egg/gunicorn/workers/async.py”, line 45, in handle
self.handle_request(listener, req, client, addr)
File “/opt/zato/2.0.7/code/eggs/gunicorn-18.0-py2.7.egg/gunicorn/workers/ggevent.py”, line 150, in handle_request
super(GeventWorker, self).handle_request(*args)
File “/opt/zato/2.0.7/code/eggs/gunicorn-18.0-py2.7.egg/gunicorn/workers/async.py”, line 93, in handle_request
respiter = self.wsgi(environ, resp.start_response)
File “/opt/zato/2.0.7/code/zato-server/src/zato/server/base/parallel.py”, line 149, in on_wsgi_request
cid, datetime.utcnow(), wsgi_environ, self.worker_store) or b’'
File “/opt/zato/2.0.7/code/zato-server/src/zato/server/connection/http_soap/channel.py”, line 255, in dispatch
response = error_wrapper(cid, response)
File “/opt/zato/2.0.7/code/zato-server/src/zato/server/connection/http_soap/channel.py”, line 68, in client_json_error
return dumps(zato_env)
File “/opt/zato/2.0.7/code/eggs/anyjson-0.3.3-py2.7.egg/anyjson/init.py”, line 141, in dumps
return implementation.dumps(value, *args, **kwargs)
File “/opt/zato/2.0.7/code/eggs/anyjson-0.3.3-py2.7.egg/anyjson/init.py”, line 87, in dumps
return self._encode(data, *args, **kwargs)
UnicodeDecodeError: ‘utf8’ codec can’t decode byte 0xf0 in position 1434: invalid continuation byte