package com.alibaba.doris.algorithm.mirgate; import java.util.List; import com.alibaba.doris.algorithm.vpm.VpmMapping; /** * 返回物理节点的虚拟节点列表 * 临时失效恢复时,供临时节点迁移用 * @author frank * */ public class TempFailResolveRouter { private List<List<Integer>> vpm; public TempFailResolveRouter(int virtualNodesNum, int physicalNodesNum) { vpm = VpmMapping.makeP2VMapping(physicalNodesNum, virtualNodesNum); } /** * 返回临时失效恢复物理节点的虚拟节点列表 * @param physicalNodeId 临时失效恢复节点的逻辑ID * @return 虚拟节点列表 */ public List<Integer> getTempFailMigerateVirtialNodes(int nodeLogicId) { if (nodeLogicId < 0 || nodeLogicId > vpm.size()) { return null; } return vpm.get(nodeLogicId); } }