>> Do you use some WSGI adapter in your custom app (like werkzeug or >> similar) ? >> >> The only things that come to my mind is the exception_info usage (that >> has been added >> only in 0.9.7.2) not being used in 0.9.6 > > Testing uwsgi 0.9.7.2 compiled with Python 3.2 here. > > It seems that uwsgi provides a environ['wsgi.input'] object that returns > unicode strings (native strings in 3.x) but the standard says otherwise > (see below). > > I guess this might be a reason why a read would block expecting to read > more. > > > http://www.python.org/dev/peps/pep-3333/ > > For values referred to in this specification as "bytestrings" (i.e., > values read from wsgi.input, passed to write() or yielded by the > application), the value must be of type bytes under Python 3, and str in > earlier versions of Python. > >
Hi, if you have not enabled --pep3333-input wsgi.input is a simple socket, so you do not have to read more than CONTENT_LENGTH bytes (so read() will block undefinetely). --pep3333-input instead will map wsgi.input to a custom object that returns (in python3.x) bytes and allows read() and read(-1) without blocking. -- Roberto De Ioris http://unbit.it _______________________________________________ uWSGI mailing list [email protected] http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
