Hi,
uWSGI with gevent loop appears to not be working with flask and
mysql.connection sad to say.
/usr/local/bin/uwsgi --chdir /var/zenapi --pidfile /var/run/api.pid --loop
gevent --socket 127.0.0.1:8030 --pythonpath /var/zenapi/app --pythonpath
/var/zenapi --
processes 1 --file /var/zenapi/wsgi.py --callable app -b 32000 --master
--gevent 30 --enable-threads --listen 2048 --logto2 /tmp/api.log
INSERT INTO api.loadtest (loadtest) VALUES
('d2a2c9fd-24ed-4bee-87ec-d21fef78fd02')
register error: (<class 'gevent.hub.ConcurrentObjectUseError'>,
ConcurrentObjectUseError('This socket is already used by another greenlet:
<bound method Waiter.switch of <gevent.hub.Waiter object at
0x7fe487cc1f00>>',), <traceback object at 0x7fe487d06710>)
Traceback (most recent call last):
File "/var/zenapi/resources/load.py", line 58, in post
results = db.execute_query(query,select=False,table=table,key=load)
File "/var/zenapi/mysql_tools.py", line 117, in execute_query
self.conn.set_property(tables=["%s.%s" % (self.database,table)],
scope=fabric.SCOPE_GLOBAL, key=key, mode=fabric.MODE_READWRITE)
File
"/usr/lib/python2.7/dist-packages/mysql/connector/fabric/connection.py",
line 1321, in set_property
self.close()
File
"/usr/lib/python2.7/dist-packages/mysql/connector/fabric/connection.py",
line 1503, in disconnect
self.rollback()
File
"/usr/lib/python2.7/dist-packages/mysql/connector/fabric/connection.py",
line 1591, in rollback
self._mysql_cnx.rollback()
File "/usr/lib/python2.7/dist-packages/mysql/connector/connection.py",
line 857, in rollback
self._execute_query("ROLLBACK")
File "/usr/lib/python2.7/dist-packages/mysql/connector/connection.py",
line 869, in _execute_query
self.cmd_query(query)
File "/usr/lib/python2.7/dist-packages/mysql/connector/connection.py",
line 488, in cmd_query
result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))
File "/usr/lib/python2.7/dist-packages/mysql/connector/connection.py",
line 267, in _send_cmd
return self._socket.recv()
File "/usr/lib/python2.7/dist-packages/mysql/connector/network.py", line
226, in recv_plain
chunk = self.sock.recv(4 - packet_len)
File
"/usr/local/lib/python2.7/dist-packages/gevent-1.1.0-py2.7-linux-x86_64.egg/gevent/_socket2.py",
line 280, in recv
self._wait(self._read_event)
File
"/usr/local/lib/python2.7/dist-packages/gevent-1.1.0-py2.7-linux-x86_64.egg/gevent/_socket2.py",
line 173, in _wait
raise _socketcommon.ConcurrentObjectUseError('This socket is already
used by another greenlet: %r' % (watcher.callback, ))
ConcurrentObjectUseError: This socket is already used by another greenlet:
<bound method Waiter.switch of <gevent.hub.Waiter object at 0x7fe487cc1f00>>
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi