Android CPU pegging / reboots

Using Syncthing via Play Store, v0.8.8 / 0.14.9 on Android 5.0.2

I’ve noticed when I have >500MB or so of data to sync to my HTC One (M8), the entire phone becomes extremely unresponsive, sometimes taking 10 seconds to respond to input. After 5-10 minutes of this, the phone reboots, presumably as a watchdog timer is being exceeded. A bandwidth graph on my desktop shows constant spikes where the data is being sent in bursts, presumably as a result of the CPU being pegged.

I’ve tried enabling “run in foreground” which seems to make the phone reboot a little less often but is still unresponsive. The logs window never seems to end up displaying anything, unfortunately. Whether the phone is plugged into AC or on battery doesn’t seem to make a difference.

The phone is a fairly fast device, and particularly after a reboot, there are few other apps vying for processor usage. I think this has only started happening since 0.14.

As soon as I pause the device on the other end, or toggle the WiFi off, the phone resumes normal operation. Does anyone have any suggestions as to what I can do to further diagnose this? I’m a bit stumped.

It’s probably the new hashing algorithm implmentation that’s around 10 times faster than the old one. If you can pin point which release this started happening we can verift the theory.

Ah that’d make sense. It could well have been early October (0.14.8 was released 4th Oct) when it started - it’s not often I sync large files to the Android so I can’t really be sure. I can’t see where to specify the hash algo, any pointers?

It’s an env var, STHASHING=legacy

Hrm unless I’m missing something, it looks like the “Debug options” is only for STTRACE, as it won’t let me enter STHASHING=legacy: Only a-z, 0-9 and ',' are allowed in STTRACE options

Are you using an sd card? If yes, which card?

I had that problems when syncing large files to a crappy Samsung microSD card (<20MB/s write speed) inside my Moto X Style.

After changing the card to a fast sandisk (~70MB/s write speed; and much better access times), I didn’t notice any of that problems anymore.

Nope, just to the internal storage.

It’s not a trace option. I don’t think you can actually toggle it, suggest you check on the android issue tracker.

If you’re willing to build the app from source, you can set environment variables in the SyncthingRunnable class.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.