[Bug] Missing in memory property for restore meta info (#2950)

This commit is contained in:
Mingyu Chen
2020-02-20 11:46:36 +08:00
committed by GitHub
parent ed299d5d8b
commit 180bf0251e
2 changed files with 9 additions and 2 deletions

View File

@ -388,6 +388,7 @@ public class OlapTable extends Table {
rangePartitionInfo.getIdToRange().put(newPartId,
rangePartitionInfo.getIdToRange().remove(entry.getValue()));
rangePartitionInfo.idToInMemory.put(newPartId, rangePartitionInfo.idToInMemory.remove(entry.getValue()));
idToPartition.put(newPartId, idToPartition.remove(entry.getValue()));
}
} else {
@ -397,6 +398,7 @@ public class OlapTable extends Table {
partitionInfo.idToDataProperty.put(newPartId, partitionInfo.idToDataProperty.remove(entry.getValue()));
partitionInfo.idToReplicationNum.remove(entry.getValue());
partitionInfo.idToReplicationNum.put(newPartId, (short) restoreReplicationNum);
partitionInfo.idToInMemory.put(newPartId, partitionInfo.idToInMemory.remove(entry.getValue()));
idToPartition.put(newPartId, idToPartition.remove(entry.getValue()));
}
}

View File

@ -23,6 +23,9 @@ import org.apache.doris.common.io.Writable;
import com.google.common.base.Preconditions;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
@ -34,6 +37,8 @@ import java.util.Map;
* Repository of a partition's related infos
*/
public class PartitionInfo implements Writable {
private static final Logger LOG = LogManager.getLogger(PartitionInfo.class);
protected PartitionType type;
// partition id -> data property
protected Map<Long, DataProperty> idToDataProperty;
@ -42,7 +47,7 @@ public class PartitionInfo implements Writable {
// true if the partition has multi partition columns
protected boolean isMultiColumnPartition = false;
Map<Long, Boolean> idToInMemory;
protected Map<Long, Boolean> idToInMemory;
public PartitionInfo() {
this.idToDataProperty = new HashMap<Long, DataProperty>();
@ -118,7 +123,7 @@ public class PartitionInfo implements Writable {
Text.writeString(out, type.name());
Preconditions.checkState(idToDataProperty.size() == idToReplicationNum.size());
Preconditions.checkState(idToInMemory.size() == idToReplicationNum.size());
Preconditions.checkState(idToInMemory.keySet().equals(idToReplicationNum.keySet()));
out.writeInt(idToDataProperty.size());
for (Map.Entry<Long, DataProperty> entry : idToDataProperty.entrySet()) {
out.writeLong(entry.getKey());