fix(bot): 🐛 Deadlock in on_message.
This commit is contained in:
@@ -11,6 +11,8 @@ from discord.utils import find
|
|||||||
|
|
||||||
from tortoise import transactions
|
from tortoise import transactions
|
||||||
|
|
||||||
|
import asyncpg.exceptions
|
||||||
|
|
||||||
import aiohttp
|
import aiohttp
|
||||||
|
|
||||||
from payphone import bot
|
from payphone import bot
|
||||||
@@ -718,6 +720,8 @@ class Calls(base.Cog):
|
|||||||
wait=True,
|
wait=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
message_row = await models.Message.create(
|
message_row = await models.Message.create(
|
||||||
id=message.id,
|
id=message.id,
|
||||||
call=call,
|
call=call,
|
||||||
@@ -728,6 +732,10 @@ class Calls(base.Cog):
|
|||||||
propagation_id=webhook_message.id if webhook_message else None,
|
propagation_id=webhook_message.id if webhook_message else None,
|
||||||
propagation_channel=other_channel if webhook_message else None,
|
propagation_channel=other_channel if webhook_message else None,
|
||||||
)
|
)
|
||||||
|
break
|
||||||
|
|
||||||
|
except asyncpg.exceptions.DeadlockDetectedError:
|
||||||
|
continue
|
||||||
|
|
||||||
await models.MessageContent.create(
|
await models.MessageContent.create(
|
||||||
message=message_row,
|
message=message_row,
|
||||||
|
|||||||
Reference in New Issue
Block a user