Sync client takes 11 minutes to detect & apply changes in shared folders

During our tests we’ve observed that when we create, remove or modify some file on a shared folder (folder is owned by a 3rd user), clients take more than 10 minutes to detect that change. It doesn’t matter if client is on linux, mac or windows. If we ask for “Sync now” button, client says “All synced”. In web all the changes are visible inmediatelly.

Changes on self-owned folders are detected and applied inmediately in all clients.

Let me describe it in a more precise way:

  • UserA owns “Shared_folder”. He shares that folder with Circle_ABC where UserA, UserB and UserC belongs to.
  • UserB has two computers: one mac and one windows
  • UserC has a win computer.

At 10.00 a.m.

  • UserB adds “New_file” to “Shared folder” in his client folder of his windows computer
  • UserB removes “Dropped_file” from “Shared folder” in his client folder in his mac
  • UserB adds “Another_new_file” into his personal folder of his windows machine
  • UserC upload a file “userC_new file” through web interface to “Shared folder”

A few seconds later

  • All users can see the changes in the web interface
  • UserB can see “Another_new_file” in his mac machine (personal space)
  • No other changes are observed in the sync clients. It doesn’t matter if “Sync now” button in clicked

At 10.05
…still waiting
At 10.10
…still waining

At 10.11

  • All changes are applied on the respective clients.

As we use intensively shares for work. There’s any way to reduce that timeframe with shared folders? Any config parameter? maybe use the notify_push application?

Just a guess, in which interval are you running your Nextcloud cronjob?

5 min. Yes, I realized that could be related. Maybe needs 2 cronjob executions to extend the change. Tomorrow will do some tests

Today I made some test running cronjob manually as the www-data crontab does …

php --define apc.enable_cli=1 -f /xxxxxx/www/nextcloud/cron.php

I ran it multiple times in a minute and I didn’t observe any significative difference. To be precise, the first time I tried, sync client detected the change after 2-3 minutes instead of 11, but other tests gave me the usual 10 minutes time to detect changes.

That makes me suspect that the job in charge to propagate the changes is only run every certain time, not in every cronjob execution. Son increasing cronjob frequency from 5 to less should not make any difference. But this is only a supposition.

So back to start! Is there any way to reduce that timeframe from 10-11 minutes to 5? Notify_push application would make any difference? Maybe there’s some config parameter that I can set?