Apologies if this is not the right place to ask for help with this, but I don't know where is.
I have a Bitcoin Core full node (Windows 11), but one that doesn't run all the time. Node is not pruned, full blockchain is on a HDD. I normally spin it up once every few weeks to catch up with the blockchain, and it used to take few/several hours, until recently...
I've been trying to sync it since the weekend, at which point it showed the last block is 6 weeks old. This was when I last spun it up after an upgrade to v.25.0 (when it synced fine, as usual).
Last weekend I spun it up again to sync and it was very unresponsive, even after the initial loading screen. Every few moments the window is unresponsive until it unfreezes for a bit, and then it repeats. Pain to navigate the GUI as it keeps freezing. At one point it wouldn't unfreeze and I had to kill the process. I then noticed v.25.1 came out and upgraded to that, but it didn't help. I also had
dbcache set at 450 Mb (1.5 x the default) which used to be fine, but now increased it to 2000 Mb hoping it would help, but it didn't. Didn't change any other flags.
I had it running for most of the day today and it only synced from the last block being 6 weeks ago to the last block being 4 weeks ago in the whole day (~10 hrs). This is very unusual, but I cannot even begin to think how to diagnose the issue definitively.
Checking the resource monitor, the RAM it uses doesn't come close to the
dbcache limit, mostly staying around 1 Gb or less. The main activity is reading chainstate .ldb files from the HDD and little to no writing. (Avg. reading speed is ~3 Mb/s, while my WD Black SATA3 HDD is capable of up to 6 Gb/s... HDD dashboard shows a read queue of ~120 Mb/s, what is it?). I also don't understand why it's reading those files, as I thought the blockchain (headers) was read during the initial loading screen. After the loading screen in the GUI, I thought it should be getting new blocks not verifying old ones? It did get 2 Gb of new blocks (~ 2 weeks of activity) and stopped. There is 0 network traffic. I'm having 3-4 outgoing connections and 0 incoming (inbound port 8333 is also open with port forwarding configured). Am I not getting enough outbound connections? Or did the blochckain get corrupted on a HDD?
It is still syncing as I write this, but extremely slowly with last blocks being around 4 weeks old. I also thought it might be blockchain finally growing to a size when it becomes unwieldy, it is around 600 Gb, but it used to sync much quicker only a few months ago, so I doubt it is the reason.