`RewindBlockIndex` was made to allow nodes upgrading to new consensus rules post-segwit fork to 
download new consensus data (i.e witnesses) without having to go through a whole IBD. It has been pointed than now really few pre-segwit nodes care to upgrade and that this logic may be irrelevant.

See https://github.com/bitcoin/bitcoin/pull/17737#discussion_r358514335 in review  of #17737 for more context pointers.
if (version != MEMPOOL_DUMP_VERSION) {
            return false;
        }
        uint64_t num;
        file >> num;
        while (num--) {
            CTransactionRef tx;
            int64_t nTime;
            int64_t nFeeDelta;
            file >> tx;
            file >> nTime;
            file >> nFeeDelta;
            CAmount amountdelta = nFeeDelta;
            if (amountdelta) {
                pool.PrioritiseTransaction(tx->GetHash(), amountdelta);
            }
            if (nTime > nNow - nExpiryTimeout) {
                LOCK(cs_main);
                assert(std::addressof(::ChainstateActive()) == std::addressof(active_chainstate));
                if (AcceptToMemoryPoolWithTime(chainparams, pool, active_chainstate, tx, nTime, false ,
                                               false ).m_result_type == MempoolAcceptResult::ResultType::VALID) {
                    ++count;
                } else {
                    
                    
                    
                    
                    if (pool.exists(tx->GetHash())) {
                        ++already_there;
                    } else {