pika: RABBITMQ: FRAME_ERROR. [RE-OPEN]
Hello everyone,
I have a problem with pika and rabbitmq, the user is connected to a channel, called “/profile/username”
When I send a 30MB file through a django form and ajax, I get the following error (I do not use channel or rabbitmq in the action of sending the form, (Django http request to a view)):
[2017/09/01 02:16:33] WebSocket CONNECT /profile/username/stream/ [127.0.0.1:45582]
WARNING:pika.adapters.base_connection:Socket closed when connection was open
WARNING:pika.connection:Disconnected from RabbitMQ at localhost:5672 (501): FRAME_ERROR - type 3, first 16 octets = <<42,171,223,145,112,216,92,19,214,170,218,214,186,
64,138,171>>: {invalid_frame_end_marker,39}
2017-09-01 02:16:39,792 - ERROR - server - Error trying to receive messages:
ERROR:daphne.server:Error trying to receive messages:
Exception in thread Thread-5:
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/management/commands/runserver.py", line 175, in run
worker.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/worker.py", line 87, in run
channel, content = self.channel_layer.receive_many(channels, block=True)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgiref/base_layer.py", line 43, in receive_many
return self.receive(channels, block)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgi_rabbitmq/core.py", line 822, in receive
return future.result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 405, in result
return self.__get_result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 357, in __get_result
raise self._exception
pika.exceptions.ConnectionClosed
Exception in thread Thread-3:
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/management/commands/runserver.py", line 175, in run
worker.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/worker.py", line 87, in run
channel, content = self.channel_layer.receive_many(channels, block=True)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgiref/base_layer.py", line 43, in receive_many
return self.receive(channels, block)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgi_rabbitmq/core.py", line 822, in receive
return future.result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 405, in result
return self.__get_result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 357, in __get_result
raise self._exception
pika.exceptions.ConnectionClosed
Exception in thread Thread-6:
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/management/commands/runserver.py", line 175, in run
worker.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/worker.py", line 87, in run
channel, content = self.channel_layer.receive_many(channels, block=True)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgiref/base_layer.py", line 43, in receive_many
return self.receive(channels, block)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgi_rabbitmq/core.py", line 822, in receive
return future.result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 405, in result
return self.__get_result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 357, in __get_result
raise self._exception
pika.exceptions.ConnectionClosed
INFO:neo4j.bolt:~~ [CLOSE]
Exception in thread Thread-4:
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/management/commands/runserver.py", line 175, in run
worker.run()
File "/home/adrian/project/venv/lib/python3.5/site-packages/channels/worker.py", line 87, in run
channel, content = self.channel_layer.receive_many(channels, block=True)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgiref/base_layer.py", line 43, in receive_many
return self.receive(channels, block)
File "/home/adrian/project/venv/lib/python3.5/site-packages/asgi_rabbitmq/core.py", line 822, in receive
return future.result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 405, in result
return self.__get_result()
File "/usr/lib/python3.5/concurrent/futures/_base.py", line 357, in __get_result
raise self._exception
pika.exceptions.ConnectionClosed
Software used:
- Pika 0.10.0
- Django 1.11.4
- Python3.5
- asgi_rabbitmq==0.5.3
- channels (last version)
I have created a project with the configuration of the project:
https://github.com/adriancarayol/issue-871
Steps:
install requeriments.txt makemigrations + migrate runserver enter the URL: 127.0.0.1:8000/example Upload a file larger than 30 MB in the rabbitmq log file I also found this:
=ERROR REPORT==== 6-Sep-2017::00:34:55 ===
Error on AMQP connection <0.2183.0> (127.0.0.1:36466 -> 127.0.0.1:5672, vhost: '/', user: 'guest', state: running), channel 2:
operation none caused a connection exception frame_error: "type 3, first 16 octets = «132,2,158,13,120,86,89,177,63,47,150,109,77,252,\n 102,160»: {invalid_frame_end_marker,83}"
=ERROR REPORT==== 6-Sep-2017::00:34:58 ===
closing AMQP connection <0.2183.0> (127.0.0.1:36466 -> 127.0.0.1:5672):
fatal_frame_error
Wireshark captures: http://imgur.com/fxoKunol.png http://imgur.com/dyjfivll.png http://imgur.com/R3QYOS8l.png
Thanks.
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Comments: 17 (8 by maintainers)
Hi, guys.
I’m
asgi_rabbitmqdeveloper. I will try to upgrade my library to recent pika and check it against given project.Hope I will have time to do it soon.
@lukebakken yes, frame error has been solved, we are waiting for profit404 to do the pull request.
@adriancarayol if I use Pika
0.10.0your example works. I suspect there is a change in0.11.0thatasgi_rabbitmqis not handling. I’ll see what I can do. There’s no sense in reproducing or fixing this for an old version of Pika.