Comment 0 for bug 1020569

Revision history for this message
Adam Young (ayoung) wrote :

RIght now, the Monkeypatch call is in the imports of keystone/common/wsgi.py. Recently, a bug fix added in the monkeypatch of "threading" This has a couple of implications:

1. The integrated debuggers are now is incapable of stepping through code. They cannot switch threads anymore.
2. Any other program that pulls in the middleware pieces is going to be monkey patched.

The first one is acceptable. The work around is to remove the monkey patch of threading when you are working with this code.

The second one is a little more serious. Assuming that the middleware is only going to be called from Eventlet code is probably going to cause trouble for someone in the future. Specifically, it should be possible to call the auth_token middleware from Nova/Glance running under HTTPD or some other wsgi container. Also, If third party integrators are going to write code that uses the middleware, that might be a stand alone Python program, and not want to use Eventlet. Even the CLI is now eventlet specific, and I don't think that is what we want.

The Eventlet code should be triggered by calling the keystone-manage executable so it is only used if we are running a Keystone server explicitly.