Why is Bitcoin Core full node so slow to sync? After 12 hours, progress changed from progress=0.533751 to progress=0.541254, less than 1% progress.

$ ./bitcoind
... 0 hours:
2019-10-12T17:57:11Z UpdateTip: new best=00000000000000000126b2b7fccdfa34176fa546f2fadb91894ed4d65a9bb84e height=479855 version=0x20000002 log2_work=86.909956 tx=245200772 date='2017-08-09T21:27:46Z' progress=0.533751 cache=1.2MiB(9101txo)
2019-10-12T17:57:44Z UpdateTip: new best=0000000000000000008642926c765b5b9463613e6b3ed71044f0a4299e631975 height=479856 version=0x20000002 log2_work=86.909995 tx=245203098 date='2017-08-09T21:40:43Z' progress=0.533756 cache=2.3MiB(16894txo)
2019-10-12T17:58:25Z UpdateTip: new best=000000000000000000a5ca291f556033c0025ab3759a9faa8e090c07580faff8 height=479857 version=0x20000002 log2_work=86.910034 tx=245203927 date='2017-08-09T21:44:19Z' progress=0.533758 cache=2.7MiB(20324txo)
... 12 hours:
2019-10-13T03:41:24Z UpdateTip: new best=000000000000000000e226d20ce5690f40b0ea8c53b21b5f585bdc98d6acd4ca height=481659 version=0x20000002 log2_work=86.979252 tx=248713371 date='2017-08-23T00:57:07Z' progress=0.541245 cache=594.8MiB(4457815txo)
2019-10-13T03:41:33Z UpdateTip: new best=00000000000000000073002a56f4c75f273105b3b6efa15ed4f671c2bfbe777b height=481660 version=0x20000002 log2_work=86.97929 tx=248715388 date='2017-08-23T01:01:59Z' progress=0.541249 cache=595.2MiB(4461557txo)
2019-10-13T03:41:37Z UpdateTip: new best=00000000000000000071fa18dbf2c4a08387ea31465ba8bdc20dbe3b60fd6b1a height=481661 version=0x20000002 log2_work=86.979327 tx=248717445 date='2017-08-23T01:17:05Z' progress=0.541254 cache=595.3MiB(4462014txo)


My internet connection seems fast enough (512 KB/s down, 128 KB/s up), but that doesn't appear to be the issue, as bitcoind doesn't even seem to using much or any bandwidth anymore (it did before, but I'm guessing it downloaded enough and needs to process now).

However, I would expect the CPU to be working hard now to validate everything, but the CPU is barely busy at all.

Why is this so slow? Where is the bottleneck? The process doesn't appear to be hitting anything hard (CPU, network, or hard drive). Why not?
First of all you need to tail your $BITCOIN_DATADIR/debug.log and search for clues. You might solve your problem by just looking at the messages there. Here's a sample:

2019-10-13T18:17:11Z socket recv error Connection reset by peer (104)
2019-10-13T18:24:48Z socket recv error Connection reset by peer (104)
2019-10-13T18:28:17Z socket recv error Connection reset by peer (104)
2019-10-13T18:29:10Z socket recv error Connection reset by peer (104)


In my case I had several peers drop their connection but the syncing soon restarted with fresh peers.

The blocks you're stuck on are from August 2017, right after the Bitcoin Cash fork. Are you running the most recent version of Bitcoin Core? Have you tried clearing the blockchain altogether and restarting sync from zero? (Note: do not delete your wallet.dat file, just the files under blocks/ subdirectory.)

Is there other software running that could be connecting to peers' port 8333? Peers might be banning your IP for some reason. Is this PC clear of malware that could be scanning for port 8333 of network peers? This could cause your IP to be blacklisted.

Finally, have you tried forcing a IP address change? If this is network-related then rebooting your gateway to force a new IP could solve the problem.