|
22 | 22 | import org.apache.doris.catalog.Partition;
|
23 | 23 | import org.apache.doris.catalog.PartitionItem;
|
24 | 24 | import org.apache.doris.catalog.PartitionKey;
|
| 25 | +import org.apache.doris.catalog.RangePartitionItem; |
25 | 26 | import org.apache.doris.catalog.ReplicaAllocation;
|
26 | 27 | import org.apache.doris.persist.PartitionPersistInfo;
|
27 | 28 | import org.apache.doris.persist.gson.GsonUtils;
|
@@ -69,23 +70,34 @@ public AddPartitionRecord(long commitSeq, PartitionPersistInfo partitionPersistI
|
69 | 70 | this.isMutable = partitionPersistInfo.isMutable();
|
70 | 71 |
|
71 | 72 | StringBuilder sb = new StringBuilder();
|
72 |
| - sb.append("ADD PARTITION ").append("`").append(partition.getName()).append("`").append(" VALUES "); |
73 |
| - if (this.listPartitionItem.equals(ListPartitionItem.DUMMY_ITEM)) { |
| 73 | + sb.append("ADD "); |
| 74 | + if (isTempPartition) { |
| 75 | + sb.append("TEMPORARY "); |
| 76 | + } |
| 77 | + sb.append("PARTITION `"); |
| 78 | + sb.append(partition.getName()); |
| 79 | + sb.append("` "); |
| 80 | + |
| 81 | + // See fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java:addPartition for details. |
| 82 | + if (!this.range.equals(RangePartitionItem.DUMMY_ITEM)) { |
74 | 83 | // range
|
75 |
| - sb.append("["); |
| 84 | + sb.append("VALUES ["); |
76 | 85 | sb.append(range.lowerEndpoint().toSql());
|
77 | 86 | sb.append(", ");
|
78 | 87 | sb.append(range.upperEndpoint().toSql());
|
79 |
| - sb.append(")"); |
80 |
| - } else { |
| 88 | + sb.append(") (\"version_info\" = \""); |
| 89 | + sb.append(partition.getVisibleVersion()); |
| 90 | + sb.append("\");"); |
| 91 | + } else if (!this.listPartitionItem.equals(ListPartitionItem.DUMMY_ITEM)) { |
81 | 92 | // list
|
82 |
| - sb.append("IN ("); |
| 93 | + sb.append("VALUES IN "); |
83 | 94 | sb.append(((ListPartitionItem) listPartitionItem).toSql());
|
84 |
| - sb.append(")"); |
| 95 | + sb.append(" (\"version_info\" = \""); |
| 96 | + sb.append(partition.getVisibleVersion()); |
| 97 | + sb.append("\");"); |
| 98 | + } else { |
| 99 | + // unpartitioned. |
85 | 100 | }
|
86 |
| - sb.append("(\"version_info\" = \""); |
87 |
| - sb.append(partition.getVisibleVersion()).append("\""); |
88 |
| - sb.append(");"); |
89 | 101 | this.sql = sb.toString();
|
90 | 102 | }
|
91 | 103 |
|
|
0 commit comments