The default limit for StreamReader.readline is to stop after 64 KiB. It seems that this limit is sometimes being reached:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/asyncio/streams.py", line 540, in readline
line = await self.readuntil(sep)
File "/usr/local/lib/python3.9/asyncio/streams.py", line 635, in readuntil
raise exceptions.LimitOverrunError(
asyncio.exceptions.LimitOverrunError: Separator is found, but chunk is longer than limit
This probably never happened with the QDataStream protocol because it doesn't use readline, instead implementing the message deserialization in python using readexactly.
There are some messages that the client sends which can be pretty large, in particular the GameStats message contains a large JSON structure which can probably exceed the 64 KiB limit. We probably need to increase that limit to something much higher.
The default limit for
StreamReader.readline
is to stop after 64 KiB. It seems that this limit is sometimes being reached:This probably never happened with the QDataStream protocol because it doesn't use
readline
, instead implementing the message deserialization in python usingreadexactly
.There are some messages that the client sends which can be pretty large, in particular the GameStats message contains a large JSON structure which can probably exceed the 64 KiB limit. We probably need to increase that limit to something much higher.