fix some race conditions
This commit is contained in:
parent
3087399186
commit
ee881f99d7
1 changed files with 16 additions and 12 deletions
|
@ -111,15 +111,17 @@ def post_fetched(pk, post_data):
|
||||||
|
|
||||||
|
|
||||||
def _post_fetched(pk, local, post_data, create: bool | None = None):
|
def _post_fetched(pk, local, post_data, create: bool | None = None):
|
||||||
try:
|
retry = 1
|
||||||
post: Post = Post.objects.get(pk=pk)
|
while True:
|
||||||
except Post.DoesNotExist:
|
|
||||||
sleep(2)
|
|
||||||
try:
|
try:
|
||||||
post: Post = Post.objects.get(pk=pk)
|
post: Post = Post.objects.get(pk=pk)
|
||||||
|
break
|
||||||
except Post.DoesNotExist:
|
except Post.DoesNotExist:
|
||||||
logger.error(f"Fetched post {pk} not found")
|
if retry > 5:
|
||||||
return
|
logger.error(f"Fetched post {pk} not found")
|
||||||
|
return
|
||||||
|
sleep(retry)
|
||||||
|
retry += 1
|
||||||
owner = Takahe.get_or_create_remote_apidentity(post.author)
|
owner = Takahe.get_or_create_remote_apidentity(post.author)
|
||||||
if local:
|
if local:
|
||||||
activate_language_for_user(owner.user)
|
activate_language_for_user(owner.user)
|
||||||
|
@ -248,15 +250,17 @@ def identity_deleted(pk):
|
||||||
|
|
||||||
|
|
||||||
def identity_fetched(pk):
|
def identity_fetched(pk):
|
||||||
try:
|
retry = 1
|
||||||
identity = Identity.objects.get(pk=pk)
|
while True:
|
||||||
except Identity.DoesNotExist:
|
|
||||||
sleep(2)
|
|
||||||
try:
|
try:
|
||||||
identity = Identity.objects.get(pk=pk)
|
identity = Identity.objects.get(pk=pk)
|
||||||
|
break
|
||||||
except Identity.DoesNotExist:
|
except Identity.DoesNotExist:
|
||||||
logger.error(f"Fetched identity {pk} not found")
|
if retry > 5:
|
||||||
return
|
logger.error(f"Fetched identity {pk} not found")
|
||||||
|
return
|
||||||
|
sleep(retry)
|
||||||
|
retry += 1
|
||||||
if identity.username and identity.domain:
|
if identity.username and identity.domain:
|
||||||
apid = Takahe.get_or_create_remote_apidentity(identity)
|
apid = Takahe.get_or_create_remote_apidentity(identity)
|
||||||
if apid:
|
if apid:
|
||||||
|
|
Loading…
Add table
Reference in a new issue