Allowing active syncs to be interrupted to support better prioritization

I built a small testing app to write a mixture of large and small files, across multiple directories. I setup syncthing to prioritize smallest → largest I limited the bandwidth of sync thing to 100k/second.

After 15 minutes the current small files had been replicated, and it was currently using all the threads to sync the big files.

I than created a couple very small files. And after an hour those small files still hadn’t been synced.

I tried to help them be synced, by pausing and unpausing both servers. and also click re-scan folder.

In the end I needed to restart both syncthing instances to get the small file to sync.

I want to improving the quality of service, so a new small file would only wait for a certain amount of time before being pushed. I’d like to do this without having to kill/restart syncthing every 5 minutes.

Maybe this is already an option, that I just haven’t found ?

If not any help in pointing me in a direction would be greatly appreciated!

Basically I’m looking at adding a ‘max_file_sync_time’ before putting a file back on the queue and picking up the current highest priority item.

Thanks Jakob!
That request looks just like what I’m hoping for. Any idea where I’ll find the queue?
I haven’t yet dug around in the syncthing code much.