From e3d685109632df05c0ed50b3a1b141a11c2f2c5b Mon Sep 17 00:00:00 2001 From: Etienne LESOT Date: Fri, 22 May 2026 16:40:00 +0200 Subject: [PATCH 1/2] add missing indexes on all foreign keys Signed-off-by: Etienne LESOT --- pom.xml | 3 +- .../catalog/LimitsForLineTypeEntity.java | 2 +- .../ConverterStationCreationEntity.java | 2 +- .../CreateVoltageLevelTopologyEntity.java | 2 +- .../LccConverterStationCreationEntity.java | 2 +- .../deletion/ByFilterDeletionEntity.java | 1 + .../ConverterStationModificationEntity.java | 2 +- ...LccConverterStationModificationEntity.java | 4 +- .../modification/LimitsPropertyEntity.java | 3 +- .../MoveVoltageLevelFeederBaysEntity.java | 2 +- .../modification/VariationFilterEntity.java | 5 +- .../changesets/changelog_20260522T143544Z.xml | 53 +++++++++++++++++++ .../db/changelog/db.changelog-master.yaml | 3 ++ 13 files changed, 73 insertions(+), 11 deletions(-) create mode 100644 src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml diff --git a/pom.xml b/pom.xml index f02220a8d..bdd492de0 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ org.gridsuite gridsuite-network-modification-server - 2.36.0-SNAPSHOT + 2.35.0-SNAPSHOT jar Network modification server @@ -54,6 +54,7 @@ org.gridsuite:network-modification-server 0.83.0 + 4.31.1 diff --git a/src/main/java/org/gridsuite/modification/server/entities/catalog/LimitsForLineTypeEntity.java b/src/main/java/org/gridsuite/modification/server/entities/catalog/LimitsForLineTypeEntity.java index 11181a164..1a7f21b82 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/catalog/LimitsForLineTypeEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/catalog/LimitsForLineTypeEntity.java @@ -28,7 +28,7 @@ @AllArgsConstructor @SuperBuilder @Entity -@Table(name = "limits_for_line_type") +@Table(name = "limits_for_line_type", indexes = {@Index(name = "limits_for_line_type_idx", columnList = "line_type_id")}) public class LimitsForLineTypeEntity { @Id diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/ConverterStationCreationEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/ConverterStationCreationEntity.java index 580d81ca1..362ac5867 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/ConverterStationCreationEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/ConverterStationCreationEntity.java @@ -53,7 +53,7 @@ public class ConverterStationCreationEntity extends InjectionCreationEntity { private Double voltageSetpoint; @ElementCollection - @CollectionTable(name = "converter_station_creation_rcc_points") + @CollectionTable(name = "converter_station_creation_rcc_points", indexes = @Index(name = "converter_station_creation_rcc_points_entity_id_idx", columnList = "converter_station_creation_entity_id")) private List reactiveCapabilityCurvePoints; @Column diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/CreateVoltageLevelTopologyEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/CreateVoltageLevelTopologyEntity.java index 9c496a654..f43a6d259 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/CreateVoltageLevelTopologyEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/CreateVoltageLevelTopologyEntity.java @@ -35,7 +35,7 @@ public class CreateVoltageLevelTopologyEntity extends ModificationEntity { private Integer sectionCount; @ElementCollection - @CollectionTable(name = "create_voltage_level_topology_switch_kinds", + @CollectionTable(name = "create_voltage_level_topology_switch_kinds", indexes = @Index(name = "create_voltage_level_topology_switch_kinds_entity_id_idx", columnList = "create_voltage_level_topology_id"), joinColumns = @JoinColumn(name = "create_voltage_level_topology_id", foreignKey = @ForeignKey(name = "create_voltage_level_topology_switch_kinds"))) private List switchKinds; diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/LccConverterStationCreationEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/LccConverterStationCreationEntity.java index 6ca292a14..5eb27d7da 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/LccConverterStationCreationEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/creation/LccConverterStationCreationEntity.java @@ -42,7 +42,7 @@ public class LccConverterStationCreationEntity extends InjectionCreationEntity { private Float powerFactor; @ElementCollection - @CollectionTable(name = "shunt_compensator_on_side", + @CollectionTable(name = "shunt_compensator_on_side", indexes = {@Index(name = "shunt_compensator_on_side_index", columnList = "lcc_converter_station_creation_entity_id")}, foreignKey = @ForeignKey(name = "lcc_converter_station_creation_shunt_compensators_on_side_fk")) private List shuntCompensatorsOnSide; diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/deletion/ByFilterDeletionEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/deletion/ByFilterDeletionEntity.java index 7bdb037ef..3ec9d6073 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/deletion/ByFilterDeletionEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/deletion/ByFilterDeletionEntity.java @@ -37,6 +37,7 @@ public class ByFilterDeletionEntity extends ModificationEntity { @JoinTable( name = "byFilterDeletionFilters", joinColumns = @JoinColumn(name = "id"), foreignKey = @ForeignKey(name = "by_filter_deletion_id_fk"), + indexes = @Index(name = "by_filter_deletion_filters_id_idx", columnList = "id"), inverseJoinColumns = @JoinColumn(name = "filterId"), inverseForeignKey = @ForeignKey(name = "variation_filter_id_fk")) private List filters; diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/ConverterStationModificationEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/ConverterStationModificationEntity.java index d63279fd4..e3f05324c 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/ConverterStationModificationEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/ConverterStationModificationEntity.java @@ -66,7 +66,7 @@ public class ConverterStationModificationEntity extends InjectionModificationEnt private DoubleModificationEmbedded voltageSetpoint; @ElementCollection - @CollectionTable(name = "converter_station_modification_rcc_points") + @CollectionTable(name = "converter_station_modification_rcc_points", indexes = @Index(name = "converter_station_modification_rcc_points_entity_id_idx", columnList = "converter_station_modification_entity_id")) private List reactiveCapabilityCurvePoints; @Embedded diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LccConverterStationModificationEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LccConverterStationModificationEntity.java index 80f310aef..1c3feb204 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LccConverterStationModificationEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LccConverterStationModificationEntity.java @@ -40,8 +40,8 @@ public class LccConverterStationModificationEntity extends InjectionModification private FloatModificationEmbedded powerFactor; @ElementCollection - @CollectionTable(name = "lcc_converter_station_modification_on_side", joinColumns = @JoinColumn(name = "lcc_converter_station_modification_id"), - foreignKey = @ForeignKey(name = "lcc_converter_station_modification_on_side_fk")) + @CollectionTable(name = "lcc_converter_station_modification_on_side", indexes = {@Index(name = "lcc_converter_station_modification_on_side_index", columnList = "lcc_converter_station_modification_id")}, + joinColumns = @JoinColumn(name = "lcc_converter_station_modification_id"), foreignKey = @ForeignKey(name = "lcc_converter_station_modification_on_side_fk")) private List shuntCompensatorsOnSide; public LccConverterStationModificationEntity(LccConverterStationModificationInfos converterStationModificationInfos) { diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LimitsPropertyEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LimitsPropertyEntity.java index 8390a2f70..f57a433a8 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LimitsPropertyEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/LimitsPropertyEntity.java @@ -25,7 +25,8 @@ @NoArgsConstructor @AllArgsConstructor @Entity -@Table(name = "limits_property") +@Table(name = "limits_property", + indexes = {@Index(name = "limits_property_modification_operational_limit_group_id_idx", columnList = "operational_limit_group_id")}) public class LimitsPropertyEntity { @Id @GeneratedValue(strategy = GenerationType.AUTO) diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/MoveVoltageLevelFeederBaysEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/MoveVoltageLevelFeederBaysEntity.java index 013eee476..9c520fbcf 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/MoveVoltageLevelFeederBaysEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/MoveVoltageLevelFeederBaysEntity.java @@ -32,7 +32,7 @@ public class MoveVoltageLevelFeederBaysEntity extends ModificationEntity { @ElementCollection @CollectionTable( - name = "move_feeder_bay", + name = "move_feeder_bay", indexes = {@Index(name = "move_feeder_bay_modification_idx", columnList = "modification_id")}, joinColumns = @JoinColumn(name = "modification_id"), foreignKey = @ForeignKey(name = "move_feeder_bay_modification_id_fk_constraint") ) diff --git a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/VariationFilterEntity.java b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/VariationFilterEntity.java index 5401a6473..69becd6bf 100644 --- a/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/VariationFilterEntity.java +++ b/src/main/java/org/gridsuite/modification/server/entities/equipment/modification/VariationFilterEntity.java @@ -19,6 +19,7 @@ import jakarta.persistence.Id; import jakarta.persistence.Table; import jakarta.validation.constraints.NotNull; + import java.util.UUID; /** @@ -28,7 +29,9 @@ @Getter @Setter @Entity -@Table(name = "VariationFilter", indexes = @Index(name = "formula_id_idx", columnList = "formula_id")) +@Table(name = "VariationFilter", indexes = { + @Index(name = "formula_id_idx", columnList = "formula_id"), + @Index(name = "variation_filter_assignment_id_idx", columnList = "assignment_id")}) public class VariationFilterEntity { @Id diff --git a/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml b/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml new file mode 100644 index 000000000..31e579e10 --- /dev/null +++ b/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/db/changelog/db.changelog-master.yaml b/src/main/resources/db/changelog/db.changelog-master.yaml index 2752eba51..6cb66fb01 100644 --- a/src/main/resources/db/changelog/db.changelog-master.yaml +++ b/src/main/resources/db/changelog/db.changelog-master.yaml @@ -486,3 +486,6 @@ databaseChangeLog: - include: file: changesets/changelog_20260522T132309Z.xml relativeToChangelogFile: true + - include: + file: changesets/changelog_20260522T143544Z.xml + relativeToChangelogFile: true From d38d75e8273e95025b6bfba9971dceaa0e2ccce3 Mon Sep 17 00:00:00 2001 From: Etienne LESOT Date: Fri, 22 May 2026 16:45:33 +0200 Subject: [PATCH 2/2] fix Signed-off-by: Etienne LESOT --- .../db/changelog/changesets/changelog_20260522T143544Z.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml b/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml index 31e579e10..9a211b65c 100644 --- a/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml +++ b/src/main/resources/db/changelog/changesets/changelog_20260522T143544Z.xml @@ -35,11 +35,6 @@ - - - - -