squeaky-pl / japronto

Screaming-fast Python 3.5+ HTTP toolkit integrated with pipelining HTTP server based on uvloop and picohttpparser.
MIT License
8.61k stars 581 forks source link

When run the examples I have got issue "SystemError: NULL result without error in PyObject_Call" #99

Closed anillabs closed 6 years ago

anillabs commented 6 years ago

I have checked the post in https://medium.freecodecamp.org/million-requests-per-second-with-python-95c137af319 and git clone source code when run the example then got below issue

I have Python to 3.6 and pip version 9.0.1

command : python3.6 hello.py

Accepting connections on http://0.0.0.0:8080 Exception in callback UVTransport._call_connection_made handle: Traceback (most recent call last): File "uvloop/cbhandles.pyx", line 52, in uvloop.loop.Handle._run File "uvloop/handles/tcp.pyx", line 149, in uvloop.loop.TCPTransport._call_connection_made File "uvloop/handles/basetransport.pyx", line 140, in uvloop.loop.UVBaseTransport._call_connection_made File "uvloop/handles/basetransport.pyx", line 137, in uvloop.loop.UVBaseTransport._call_connection_made SystemError: NULL result without error in PyObject_Call

Please let me know where I change the configuration to work on it. I new to Python.

mohammad1234 commented 6 years ago

I also encountered the exact same issue with python 3.6 on mac

Necklaces commented 6 years ago

Same problem here using the "Hello World!" example.

Exception in callback UVTransport._call_connection_made
handle: <Handle UVTransport._call_connection_made>
Traceback (most recent call last):
  File "uvloop/cbhandles.pyx", line 52, in uvloop.loop.Handle._run
  File "uvloop/handles/tcp.pyx", line 149, in uvloop.loop.TCPTransport._call_connection_made
  File "uvloop/handles/basetransport.pyx", line 156, in uvloop.loop.UVBaseTransport._call_connection_made
  File "uvloop/handles/basetransport.pyx", line 153, in uvloop.loop.UVBaseTransport._call_connection_made
SystemError: NULL result without error in PyObject_Call

I'm on Arch GNU/Linux:

$ uname -a
Linux egzl 4.13.12-1-ARCH #1 SMP PREEMPT Wed Nov 8 11:54:06 CET 2017 x86_64 GNU/Linux

Installed through pip:

$ pip --version
pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)

$ pip3 freeze | grep japronto
japronto==0.1.1
abrarmahmood commented 6 years ago

Same problem here on mac os high sierra, python 3.6.3, japronto 0.1.1

I've tried running the docker image (as per hello world instructions) and that seems to work fine. Not had time to look in to it yet though

squeaky-pl commented 6 years ago

The fact that it works from docker leads me to believe that this might be related to recent update of uvloop, try using older versions of uvloop. It might be that uvloop broke something.

Necklaces commented 6 years ago

@squeaky-pl confirmed, it seems to work on uvloop-0.8.0 and uvloop-0.8.1 (haven't tested further down), but not on uvloop-0.9.0 or uvloop-0.9.1.

pip install uvloop==0.8.1
sitthykun commented 6 years ago

@Necklaces I downgraded it, it works as well.

tejastank commented 6 years ago

Hey, I did same found with ubuntu 17.0

below command fired and issue resolved :) pip3 install uvloop==0.8.1

hieu-n commented 6 years ago

Is there a plan to update Japronto to work with the latest uvloop version?

geyang commented 6 years ago

Dear maintainers,

Is there plan to make this compatible with uvloop v0.9.1?

ifplusor commented 6 years ago

I fixed this in PR #133

squeaky-pl commented 5 years ago

Japronto now works with latest versions of uvloop and this was released to PyPI as version 0.1.2

ice1x commented 5 years ago

Got this error on OSX with uvloop 0.11.3