Commcare-sync auto sync problem

we have installed commcare-sync and using it for about a month , so based on the requirement from the team we need to sync all the data from echis data for every one minute , we allowed it but it seems the auto sync is not working ,i have checked the celery task in the back end as well . seems not work if any one could help i would be happy ?

Hi Dan,

Can you provide some more details about how you have set it up and what is not working? Off the top of my head, here are a few ways this could fail:

  1. Celery task is not firing every minute (likely an infrastructure-specific problem)
  2. Export is not configured to run every minute (can be changed in UI)
  3. It takes longer than one minute for the exports to sync, so the tasks are unable to keep up.
  4. Requests are being rate limited by CommCare, causing the incremental updates to fail.

I'm sure there's others, but without more detail it's hard to know how to diagnose.


hi @czue thanks for your quick reply here is how it is configured ,form, i have setup the commcare-sync based on the steps given on the documentation.
1, celery task is up and active and working b.c while on manuel run i am able to sync all the data
2 i have configured the export on the ui to auto run for every one minutes
3, ya some of the exports are huge but while checking even after a week while checking Last Run(it shows the last time i have runned it manually ) so the update seems not to take the effect
as you have seen the shared screen shots i have configured it on the ui but the changes seems not to take an effect , while firing manuel it works well . if you need any further info i am happy to share

How are you running celery? Do you know if celery beat is running? (-B command line argument).

Is there anything in the celery logs indicating that there are any periodic tasks running?

hi @czue i have configured celery to run as a service , i have checked the logs it no tasks are running please refer the image below

while firing sync manuelly the tasks will be shown on the logs

You need to add -B to the end of the command running celery. So the full thing would be:

/path/to/celery -A commcare_sync.worker -l info -B