mirror of
https://github.com/flibusta-apps/telegram_files_cache_server.git
synced 2025-12-06 06:35:38 +01:00
Set random retry defer
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
import collections
|
import collections
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
import logging
|
import logging
|
||||||
|
import random
|
||||||
from tempfile import SpooledTemporaryFile
|
from tempfile import SpooledTemporaryFile
|
||||||
from typing import Optional, cast
|
from typing import Optional, cast
|
||||||
|
|
||||||
@@ -68,7 +69,7 @@ async def cache_file(book: Book, file_type: str) -> Optional[CachedFile]:
|
|||||||
).exists():
|
).exists():
|
||||||
return
|
return
|
||||||
|
|
||||||
retry_exc = Retry(defer=timedelta(minutes=15))
|
retry_exc = Retry(defer=timedelta(minutes=15).seconds * random.random())
|
||||||
|
|
||||||
try:
|
try:
|
||||||
data = await download(book.source.id, book.remote_id, file_type)
|
data = await download(book.source.id, book.remote_id, file_type)
|
||||||
@@ -126,7 +127,7 @@ async def cache_file_by_book_id(
|
|||||||
async with lock:
|
async with lock:
|
||||||
return await cache_file(book, file_type)
|
return await cache_file(book, file_type)
|
||||||
except LockError:
|
except LockError:
|
||||||
raise Retry(defer=timedelta(minutes=15))
|
raise Retry(defer=timedelta(minutes=15).seconds * random.random())
|
||||||
except Retry as e:
|
except Retry as e:
|
||||||
if by_request:
|
if by_request:
|
||||||
return None
|
return None
|
||||||
|
|||||||
Reference in New Issue
Block a user