And waits for them. That's pointless.
[[fallthrough]];
        case LogEntry::GET_PART:
            do_fetch = true;
            break;
        case LogEntry::MERGE_PARTS:
            
            
            do_fetch = !tryExecuteMerge(entry);
            break;
        case LogEntry::MUTATE_PART:
            
            do_fetch = !tryExecutePartMutation(entry);
            break;
        case LogEntry::ALTER_METADATA:
            return executeMetadataAlter(entry);
        case LogEntry::SYNC_PINNED_PART_UUIDS:
            syncPinnedPartUUIDs();
            return true;
        case LogEntry::CLONE_PART_FROM_SHARD:
            executeClonePartFromShard(entry);
            return true;
        default:
            throw Exception(ErrorCodes::LOGICAL_ERROR, "Unexpected log entry type: {}", static_cast<int>(entry.type));
    }
    if (do_fetch)
        return executeFetch(entry);
    return true;
}
bool StorageReplicatedMergeTree::tryExecuteMerge(const LogEntry & entry)