Revival of #30610 (comment) with the remaining comments applied on top
Since #28280, the cost of a non-wiping sync of the UTXO cache is only proportional to the number of dirty entries, rather than proportional to the size of the entire cache. Because of that, there is no reason to perform a wiping flush in case the contents of the cache is still useful.
Split the
FlushStateMode::ALWAYSmode into aFORCE_SYNC(non-wiping) and aFORCE_FLUSH(wiping), and then use the former inscantxoutset,gettxoutsetinfo, and in the currently-unusedCreateUTXOSnapshot.