Bitcoin Core has some confusing UI text I'm trying to localize following UI texts of Bitcoin Core, but I cannot understand them:


  Cannot upgrade a non HD split wallet without upgrading to support pre split keypool. Please use -upgradewallet=169900 or -upgradewallet with no version specified.


What's "non HD split wallet"? What's "pre split keypool"?


  Warning: Private keys detected in wallet {%s} with disabled private keys


What's "disabled private key"?
What's "non HD split wallet"? What's "pre split keypool"?


Bitcoin Core uses something called HD chain split for generating private keys. This means that it derives private keys using two different derivation paths to distinguish between addresses that the wallet gives out and change addresses (also known as internal addresses). This split also means that there are two different keypools.

However the initial implementation of HD wallets in Bitcoin Core did not use HD chain split hence such wallets are non HD split wallets.

Furthermore, non HD split wallets and non-HD wallets had only one keypool from which all addresses (including change) were retrieved from. When upgrading such wallets, they need to be upgraded to a specific version that allows upgrading the unified keypool to the split keypool. This results in those wallets having a third keypool called the pre-split keypool. This keypool contains all of the keys from the original unified keypool and lets that run out of keys before the split keypool is used.


  What's "disabled private key"?


Wallets can be created such that they will not have any private keys and are not allowed to contain private keys. Such wallets thus have private keys disabled. (this string should really say "with private keys disabled" not "with disabled private keys").