Timeout waiting for chunking.

Sometimes the bot would keep waiting for chunks that somehow finished
before getting to the `wait` call. This is more so a temporary fix
rather than a fully correct one.
This commit is contained in:
Rapptz 2016-12-16 21:27:47 -05:00
parent 6306fc08db
commit a0f4ad36eb

View File

@ -186,10 +186,16 @@ class ConnectionState:
# wait for the chunks
if chunks:
yield from asyncio.wait(chunks)
try:
yield from asyncio.wait(chunks, timeout=len(chunks))
except asyncio.TimeoutError:
log.info('Somehow timed out waiting for chunks.')
# remove the state
try:
del self._ready_state
except AttributeError:
pass # already been deleted somehow
# call GUILD_SYNC after we're done chunking
if not self.is_bot:
@ -206,7 +212,7 @@ class ConnectionState:
servers = self._ready_state.servers
for guild in guilds:
server = self._add_server_from_data(guild)
if server.large or not self.is_bot:
if not self.is_bot and server.large:
servers.append(server)
for pm in data.get('private_channels'):