Skip to content

TimeoutError #168

@fivepe

Description

@fivepe

Checklist

  • I am sure the error is coming from Pyrogram's code and not elsewhere
  • I have searched in the issue tracker for similar bug reports, including closed ones
  • I ran pip3 install https://github.com/TelegramPlayground/pyrogram/archive/dev.zip --force-reinstall and reproduced the issue using the latest development version

Description

One of my telegram robots (with many users) often stops responding after running for a while (about 3-7 days). It can only be restored after restarting the robot. There are many TimeoutErrors in the log. Is it because there are too many users online at the same time? Is there a way to avoid this situation? Some logs are as follows

Steps to reproduce

Traceback (most recent call last):
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/dispatcher.py", line 364, in handler_worker
    await handler.callback(self.client, *args)
  File "/www/wwwroot/bots/xxxbot.py", line 874, in my_handler
    await message.reply(f"id:`{message.chat.id}`", link_preview_options=types.LinkPreviewOptions(is_disabled=True), reply_markup=btn_keybord)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()

Traceback (most recent call last):
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/dispatcher.py", line 364, in handler_worker
    await handler.callback(self.client, *args)
  File "/www/wwwroot/bots/xxxbot.py", line 634, in my_handler
    await message.reply(text="input:", reply_markup=keybord, reply_parameters=ReplyParameters(message_id=message.id), link_preview_options=types.LinkPreviewOptions(is_disabled=True))
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "contacts.ResolveUsername" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "channels.GetMessages" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()
[5] Retrying "messages.SendMessage" due to TimeoutError()

Traceback (most recent call last):
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/dispatcher.py", line 364, in handler_worker
    await handler.callback(self.client, *args)
  File "/www/wwwroot/bots/xxxbot.py", line 874, in my_handler
    await message.reply(f"id:`{message.chat.id}`", link_preview_options=types.LinkPreviewOptions(is_disabled=True), reply_markup=btn_keybord)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError
Traceback (most recent call last):
  File "/www/wwwroot/bots/xxxbot.py", line 2542, in tiqu_muilt_msg
    download_msg = await message.reply("loading...", reply_parameters=ReplyParameters(message_id=message.id))
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError

Traceback (most recent call last):
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/dispatcher.py", line 364, in handler_worker
    await handler.callback(self.client, *args)
  File "/www/wwwroot/bots/xxxbot.py", line 874, in my_handler
    await message.reply(f"id:`{message.chat.id}`", link_preview_options=types.LinkPreviewOptions(is_disabled=True), reply_markup=btn_keybord)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError
[5] Retrying "updates.GetState" due to TimeoutError()
Traceback (most recent call last):
  File "/www/wwwroot/bots/xxxbot.py", line 2542, in tiqu_muilt_msg
    download_msg = await message.reply("loading...", reply_parameters=ReplyParameters(message_id=message.id))
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/types/messages_and_media/message.py", line 1602, in reply_text
    return await self._client.send_message(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/messages/send_message.py", line 322, in send_message
    r = await self.invoke(rpc)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/methods/advanced/invoke.py", line 79, in invoke
    r = await self.session.invoke(
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 446, in invoke
    return await self.invoke(query, retries - 1, timeout)
  [Previous line repeated 2 more times]
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 439, in invoke
    raise e from None
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 415, in invoke
    return await self.send(query, timeout=timeout)
  File "/root/py3.9/lib/python3.9/site-packages/pyrogram/session/session.py", line 378, in send
    raise TimeoutError
TimeoutError

Code example

Logs

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingduplicateThis issue or pull request already existsenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions