Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,16 @@
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.gson.annotations.SerializedName;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class PrimaryKeyConstraint extends Constraint {
public static final Logger LOG = LogManager.getLogger(PrimaryKeyConstraint.class);

@SerializedName(value = "cols")
private final Set<String> columns;

Expand All @@ -55,9 +59,15 @@ public void addForeignTable(TableIf table) {
}

public List<TableIf> getForeignTables() {
return foreignTables.stream()
.map(TableIdentifier::toTableIf)
.collect(ImmutableList.toImmutableList());
ImmutableList.Builder<TableIf> tableIfBuilder = ImmutableList.builder();
for (TableIdentifier tableIdentifier : foreignTables) {
try {
tableIfBuilder.add(tableIdentifier.toTableIf());
} catch (Exception e) {
LOG.warn("get foreign table failed", e);
}
}
return tableIfBuilder.build();
}

public void removeForeignTable(TableIdentifier tableIdentifier) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@

import org.apache.doris.catalog.TableIf;
import org.apache.doris.catalog.constraint.Constraint;
import org.apache.doris.catalog.constraint.ForeignKeyConstraint;
import org.apache.doris.catalog.constraint.PrimaryKeyConstraint;
import org.apache.doris.nereids.NereidsPlanner;
import org.apache.doris.nereids.exceptions.AnalysisException;
import org.apache.doris.nereids.properties.PhysicalProperties;
Expand All @@ -33,11 +31,9 @@
import org.apache.doris.qe.ConnectContext;
import org.apache.doris.qe.StmtExecutor;

import com.google.common.collect.Lists;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import java.util.List;
import java.util.Set;

/**
Expand All @@ -58,16 +54,6 @@ public DropConstraintCommand(String name, LogicalPlan plan) {
this.plan = plan;
}

private static List<TableIf> getConstraintRelatedTables(Constraint constraint) {
List<TableIf> tables = Lists.newArrayList();
if (constraint instanceof PrimaryKeyConstraint) {
tables.addAll(((PrimaryKeyConstraint) constraint).getForeignTables());
} else if (constraint instanceof ForeignKeyConstraint) {
tables.add(((ForeignKeyConstraint) constraint).getReferencedTable());
}
return tables;
}

@Override
public void run(ConnectContext ctx, StmtExecutor executor) throws Exception {
TableIf table = extractTable(ctx, plan);
Expand Down
Loading