weizhengte commented on code in PR #17966:
URL: https://github.com/apache/doris/pull/17966#discussion_r1144232528
##########
fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeStmt.java:
##########
@@ -166,46 +150,81 @@ private void checkAnalyzePriv(String dbName, String
tblName) throws AnalysisExce
}
private void checkPartitionNames() throws AnalysisException {
- if (optPartitionNames != null) {
- optPartitionNames.analyze(analyzer);
- if (tableName != null) {
- Database db =
analyzer.getEnv().getInternalCatalog().getDbOrAnalysisException(tableName.getDb());
- OlapTable olapTable = (OlapTable)
db.getTableOrAnalysisException(tableName.getTbl());
- if (!olapTable.isPartitioned()) {
- throw new AnalysisException("Not a partitioned table: " +
olapTable.getName());
- }
- List<String> names = optPartitionNames.getPartitionNames();
- Set<String> olapPartitionNames = olapTable.getPartitionNames();
- List<String> tempPartitionNames =
olapTable.getTempPartitions().stream()
- .map(Partition::getName).collect(Collectors.toList());
- Optional<String> optional = names.stream()
- .filter(name -> (tempPartitionNames.contains(name)
- || !olapPartitionNames.contains(name)))
- .findFirst();
- if (optional.isPresent()) {
- throw new AnalysisException("Temporary partition or
partition does not exist");
- }
- } else {
- throw new AnalysisException("Specify partition should specify
table name as well");
+ if (partitionNames != null) {
+ partitionNames.analyze(analyzer);
+ Database db = analyzer.getEnv().getInternalCatalog()
+ .getDbOrAnalysisException(tableName.getDb());
+ OlapTable olapTable = (OlapTable)
db.getTableOrAnalysisException(tableName.getTbl());
+ if (!olapTable.isPartitioned()) {
+ throw new AnalysisException("Not a partitioned table: " +
olapTable.getName());
+ }
+ List<String> names = partitionNames.getPartitionNames();
+ Set<String> olapPartitionNames = olapTable.getPartitionNames();
+ List<String> tempPartitionNames =
olapTable.getTempPartitions().stream()
+ .map(Partition::getName).collect(Collectors.toList());
+ Optional<String> optional = names.stream()
+ .filter(name -> (tempPartitionNames.contains(name)
+ || !olapPartitionNames.contains(name)))
+ .findFirst();
+ if (optional.isPresent()) {
+ throw new AnalysisException("Temporary partition or partition
does not exist");
Review Comment:
This is because of the variable name, making it look a little weird. Changed
the variable name.
##########
fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisTaskInfo.java:
##########
@@ -62,6 +63,8 @@ public enum ScheduleType {
public final String colName;
+ public final List<String> partitionNames;
Review Comment:
Sure
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]