ARMv6 0.8.5 build on Raspbian hangs, cpu-bound

The repo I’m syncing has about 8GB of data in about 10k files. My local client on a Mac connects to the remote Raspberry Pi and then starts syncing, but stops at 93%.

Running top on the Pi shows syncthing is cpu-bound, and changing a bunch of options in the config.xml (disable gui, change listenAddress, disable globalAnnouncement [It’s reachable via a FQDN], disable startBrowser, disable upnp) has no effect after restarting. There doesn’t seem to be any data transferring between the two nodes, or if there is, it is very small and sporadic.

I’ve been collecting trace data from the output of the binary, but it’s massive and will take time to sort out. So far it looks like it’s looping back over the whole repo repeatedly. I looked for any symlinks with “find . -type l” and there are none.

It scans the repo for changes every 60 seconds, if that is what you mean by looping over the repo.

Hard to say what could be going on here. The only really CPU intensive operations are hashing files (when they are detected as new or changed) and shuffling data (due to compression and encryption)…

One thigh you could do is gather some profiler dumps and I can take a look. On the raspberry pi, start syncthing like STPROFILER=:9090 syncthing, let it run until it gets stuck in the above scenario. Then run (date ; curl 'http://localhost:9090/debug/pprof/goroutine?debug=1') >> somefile ten times and send me somefile.