diff --git a/arkindex/dataimport/tasks.py b/arkindex/dataimport/tasks.py
index a0c6601c454279225d9db91dbbdc6d62942340c3..ec440f49027f45358458ce1317936df74b82acef 100644
--- a/arkindex/dataimport/tasks.py
+++ b/arkindex/dataimport/tasks.py
@@ -3,15 +3,16 @@ from typing import Optional
 from django.conf import settings
 from django.db import transaction
 from django_rq import job
+from rq import Retry
 
 from arkindex.dataimport.models import ActivityState, DataImport, WorkerActivity, WorkerActivityState
 
 
-@job('default', timeout=settings.RQ_TIMEOUTS['initialize_activity'])
+@job('default', timeout=settings.RQ_TIMEOUTS['initialize_activity'], retry=Retry(max=4))
 def initialize_activity(process: DataImport):
     """
     List all worker versions used in a process and initialize their activity on processed elements.
-    Timeout is set to 1 hour
+    4 retries allowed, for a total of 5 attempts, to try to mitigate some database errors from the large query.
     """
     try:
         with transaction.atomic():