diff --git a/opds_catalog/management/commands/sopds_scanner.py b/opds_catalog/management/commands/sopds_scanner.py
index 44b6d60074613c37967801d52b53a9f5db7eb540..450a0b04e61d28b59499bb4a5373743845e0dae9 100644
--- a/opds_catalog/management/commands/sopds_scanner.py
+++ b/opds_catalog/management/commands/sopds_scanner.py
@@ -101,7 +101,7 @@ class Command(BaseCommand):
         if config.SOPDS_SCAN_START_DIRECTLY:
             config.SOPDS_SCAN_START_DIRECTLY = False
             self.stdout.write('Startup scannyng directly by SOPDS_SCAN_START_DIRECTLY flag.')
-            self.scan()
+            self.sched.add_job(self.scan, id='scan_directly')
                        
     def start(self):
         writepid(self.pidfile)