Node Activity - #1046
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (31)
🚧 Files skipped from review as they are similar to previous changes (29)
📝 WalkthroughWalkthroughThe application replaces blocked-node state with persisted node activities. Controllers and asynchronous consumers track edits, builds, imports, and computations. Notifications, cleanup scheduling, database migrations, and tests now use the activity model. ChangesNode activity coordination
Suggested reviewers: 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
3031954 to
6ed5000
Compare
There was a problem hiding this comment.
Actionable comments posted: 5
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/main/java/org/gridsuite/study/server/service/ConsumerService.java (1)
415-452: 🩺 Stability & Availability | 🟠 Major | ⚡ Quick winFix unsafe
studyUuidresolution in the error-cleanup paths.In
consumeCalculationStopped,studyUuidis declared beforetry(Line 458) and assigned insidetry(Line 461). IfnetworkModificationTreeService.getStudyUuidForNodeIdthrows there (for example, the node was deleted concurrently),studyUuidstaysnull. Thefinallyblock still runsendComputationActivity(studyUuid, receiverObj, computationType)with anullstudyUuid(Line 481), because the guard only checksreceiverObj != null. This can silently fail to remove the node activity, or throw an unrelatedNullPointerExceptionthat hides the original failure.
consumeCalculationFailedhas a related risk: it resolvesstudyUuidentirely insidefinally(Line 439). If that lookup throws, thefinallyblock aborts before quota release (Line 443) and beforeemitStudyError(Line 448) run. The user never receives the failure notification.Guard the
nullcase explicitly, and keep the original defensive intent (always attempt cleanup even if earlier steps failed).🛡️ Proposed fix for consumeCalculationStopped
} catch (JsonProcessingException e) { LOGGER.error(e.toString()); } finally { - if (receiverObj != null) { + if (receiverObj != null && studyUuid != null) { endComputationActivity(studyUuid, receiverObj, computationType); + } else if (receiverObj != null) { + LOGGER.error("Could not resolve study for node '{}'; computation activity not released", receiverObj.getNodeUuid()); } }Run the following to confirm how
removeNodeActivitybehaves with anullstudy identifier:#!/bin/bash rg -n -B3 -A15 'void removeNodeActivity' src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.javaAlso applies to: 454-485
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/main/java/org/gridsuite/study/server/service/ConsumerService.java` around lines 415 - 452, Harden the finally cleanup in consumeCalculationStopped and consumeCalculationFailed against getStudyUuidForNodeId failures or null results. Resolve studyUuid defensively, call endComputationActivity and emitStudyError only when a valid studyUuid is available, and structure cleanup so quota release still runs independently even if study lookup or notification cleanup fails. Preserve the existing receiverObj guard and ensure earlier failures are not masked by null-related exceptions.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/main/java/org/gridsuite/study/server/controller/StudyController.java`:
- Around line 1322-1327: Update the build flow around StudyController’s
isNodeBuilt check and setNodeActivityUntilResult call so the built-state
decision and BUILD activity acquisition occur atomically, preventing a second
request from launching a duplicate build. Add a no-launch path that returns
without retaining an activity when the node is already built, while preserving
normal activity cleanup for launched builds, and add a concurrent regression
test covering this race.
In
`@src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.java`:
- Around line 100-113: Serialize activity admission on a stable study-level
resource before the read and insert in NodeActivityService, ensuring concurrent
requests cannot both pass assertNoConflict; alternatively use serializable
admission with retry. In NodeActivityEntity, retain or update the database
uniqueness backstop so nullable all-root scopes are treated as non-distinct
duplicates, using matching Liquibase DDL where required. Apply changes at
src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.java
lines 100-113 and
src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.java
lines 28-30.
- Around line 106-108: Deduplicate nodeUuids before conflict detection and
persistence in the activity-creation flow surrounding NodeActivityEntity.from
and saveAllAndFlush. Use the normalized UUID collection for both
existing-activity checks and entity creation, preserving one activity per unique
node UUID and preventing duplicate entries from being reported as
NODE_ACTIVITY_CONFLICT.
In `@src/main/java/org/gridsuite/study/server/service/StudyService.java`:
- Around line 1500-1507: Update getFirstLevelChildrenToBuild to clamp the value
returned by getAllowedBuildNodesUpToQuota to zero with Math.max before passing
it to Stream.limit, preventing negative limits while preserving the existing
child filtering and quota behavior.
In `@src/test/java/org/gridsuite/study/server/WorkflowTest.java`:
- Around line 84-85: Add assertions in WorkflowTest for result consumption to
verify node activity cleanup: after consuming the build or computation result,
assert nodeActivityRepository.count() and/or the matching activity rows are
zero. Keep the existing NodeActivityService mock setup for rerun-start
verification and use the repository-backed flow to validate creation and
clearance.
---
Outside diff comments:
In `@src/main/java/org/gridsuite/study/server/service/ConsumerService.java`:
- Around line 415-452: Harden the finally cleanup in consumeCalculationStopped
and consumeCalculationFailed against getStudyUuidForNodeId failures or null
results. Resolve studyUuid defensively, call endComputationActivity and
emitStudyError only when a valid studyUuid is available, and structure cleanup
so quota release still runs independently even if study lookup or notification
cleanup fails. Preserve the existing receiverObj guard and ensure earlier
failures are not masked by null-related exceptions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 3bbe96bf-43e8-46a6-9640-6b349aa61241
📒 Files selected for processing (71)
src/main/java/org/gridsuite/study/server/StudyApplication.javasrc/main/java/org/gridsuite/study/server/controller/NodeActivityController.javasrc/main/java/org/gridsuite/study/server/controller/StudyController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowParametersController.javasrc/main/java/org/gridsuite/study/server/controller/pccmin/PccMinController.javasrc/main/java/org/gridsuite/study/server/controller/securityanalysis/SecurityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/sensitivityanalysis/SensitivityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/shortcircuit/ShortCircuitController.javasrc/main/java/org/gridsuite/study/server/controller/stateestimation/StateEstimationController.javasrc/main/java/org/gridsuite/study/server/controller/voltageinit/VoltageInitController.javasrc/main/java/org/gridsuite/study/server/dto/InvalidateNodeTreeParameters.javasrc/main/java/org/gridsuite/study/server/error/StudyBusinessErrorCode.javasrc/main/java/org/gridsuite/study/server/error/StudyExceptionHandler.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatus.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/dto/NodeBuildStatus.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/entities/RootNetworkNodeInfoEntity.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityLabel.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityType.javasrc/main/java/org/gridsuite/study/server/nodeactivity/ScheduledNodeActivitySweep.javasrc/main/java/org/gridsuite/study/server/notification/NotificationService.javasrc/main/java/org/gridsuite/study/server/repository/nodeactivity/NodeActivityRepository.javasrc/main/java/org/gridsuite/study/server/repository/rootnetwork/RootNetworkNodeInfoRepository.javasrc/main/java/org/gridsuite/study/server/service/ConsumerService.javasrc/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.javasrc/main/java/org/gridsuite/study/server/service/RebuildNodeService.javasrc/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.javasrc/main/java/org/gridsuite/study/server/service/StudyService.javasrc/main/java/org/gridsuite/study/server/service/SupervisionService.javasrc/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/impl/DynamicSimulationServiceImpl.javasrc/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.javasrc/main/resources/db/changelog/changesets/changelog_20260803T101500Z.xmlsrc/main/resources/db/changelog/db.changelog-master.yamlsrc/test/java/org/gridsuite/study/server/NetworkModificationTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationTreeTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationUnitTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicMarginCalculationTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSecurityAnalysisTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSimulationTest.javasrc/test/java/org/gridsuite/study/server/StudyServiceTest.javasrc/test/java/org/gridsuite/study/server/SupervisionControllerTest.javasrc/test/java/org/gridsuite/study/server/VoltageInitTest.javasrc/test/java/org/gridsuite/study/server/WorkflowTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowIntegrationTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowUnitTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFlowTest.javasrc/test/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatusTest.javasrc/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.javasrc/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationServiceTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/NodeControllerTest.java
💤 Files with no reviewable changes (31)
- src/main/java/org/gridsuite/study/server/networkmodificationtree/entities/RootNetworkNodeInfoEntity.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.java
- src/test/java/org/gridsuite/study/server/SupervisionControllerTest.java
- src/test/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatusTest.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.java
- src/test/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationServiceTest.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.java
- src/main/java/org/gridsuite/study/server/repository/rootnetwork/RootNetworkNodeInfoRepository.java
- src/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.java
- src/main/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatus.java
- src/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationService.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.java
- src/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.java
- src/test/java/org/gridsuite/study/server/studycontroller/NodeControllerTest.java
- src/main/java/org/gridsuite/study/server/networkmodificationtree/dto/NodeBuildStatus.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.java
- src/test/java/org/gridsuite/study/server/loadflow/LoadFLowUnitTest.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.java
- src/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.java
- src/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationService.java
- src/main/java/org/gridsuite/study/server/service/dynamicsimulation/impl/DynamicSimulationServiceImpl.java
- src/test/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisServiceTest.java
- src/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.java
- src/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.java
- src/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisService.java
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
6ed5000 to
00c16be
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@src/main/java/org/gridsuite/study/server/nodeactivity/ScheduledNodeActivityCleaner.java`:
- Around line 35-37: Update removeAbandonedNodeActivities and the underlying
nodeActivityService cleanup so activities still awaiting an in-flight result are
excluded from age-based removal; use the activity’s completion/result state
alongside startedAt when applying the abandonedAfter cutoff, or renew eligible
activities before cleanup. Preserve removal of genuinely abandoned activities.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 06b0eaf3-96be-4e70-8181-209126988549
📒 Files selected for processing (73)
src/main/java/org/gridsuite/study/server/StudyApplication.javasrc/main/java/org/gridsuite/study/server/controller/NodeActivityController.javasrc/main/java/org/gridsuite/study/server/controller/StudyController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowParametersController.javasrc/main/java/org/gridsuite/study/server/controller/pccmin/PccMinController.javasrc/main/java/org/gridsuite/study/server/controller/securityanalysis/SecurityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/sensitivityanalysis/SensitivityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/shortcircuit/ShortCircuitController.javasrc/main/java/org/gridsuite/study/server/controller/stateestimation/StateEstimationController.javasrc/main/java/org/gridsuite/study/server/controller/voltageinit/VoltageInitController.javasrc/main/java/org/gridsuite/study/server/dto/InvalidateNodeTreeParameters.javasrc/main/java/org/gridsuite/study/server/error/StudyBusinessErrorCode.javasrc/main/java/org/gridsuite/study/server/error/StudyExceptionHandler.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatus.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/dto/NodeBuildStatus.javasrc/main/java/org/gridsuite/study/server/networkmodificationtree/entities/RootNetworkNodeInfoEntity.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityLabel.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityType.javasrc/main/java/org/gridsuite/study/server/nodeactivity/ScheduledNodeActivityCleaner.javasrc/main/java/org/gridsuite/study/server/notification/NotificationService.javasrc/main/java/org/gridsuite/study/server/repository/nodeactivity/NodeActivityRepository.javasrc/main/java/org/gridsuite/study/server/repository/rootnetwork/RootNetworkNodeInfoRepository.javasrc/main/java/org/gridsuite/study/server/service/ConsumerService.javasrc/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.javasrc/main/java/org/gridsuite/study/server/service/RebuildNodeService.javasrc/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.javasrc/main/java/org/gridsuite/study/server/service/StudyService.javasrc/main/java/org/gridsuite/study/server/service/SupervisionService.javasrc/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/impl/DynamicSimulationServiceImpl.javasrc/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.javasrc/main/resources/application-local.ymlsrc/main/resources/config/application.yamlsrc/main/resources/db/changelog/changesets/changelog_20260803T101500Z.xmlsrc/main/resources/db/changelog/db.changelog-master.yamlsrc/test/java/org/gridsuite/study/server/NetworkModificationTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationTreeTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationUnitTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicMarginCalculationTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSecurityAnalysisTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSimulationTest.javasrc/test/java/org/gridsuite/study/server/StudyServiceTest.javasrc/test/java/org/gridsuite/study/server/SupervisionControllerTest.javasrc/test/java/org/gridsuite/study/server/VoltageInitTest.javasrc/test/java/org/gridsuite/study/server/WorkflowTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowIntegrationTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowUnitTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFlowTest.javasrc/test/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatusTest.javasrc/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.javasrc/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationServiceTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/NodeControllerTest.java
💤 Files with no reviewable changes (31)
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.java
- src/test/java/org/gridsuite/study/server/SupervisionControllerTest.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.java
- src/test/java/org/gridsuite/study/server/studycontroller/NodeControllerTest.java
- src/main/java/org/gridsuite/study/server/service/dynamicsimulation/impl/DynamicSimulationServiceImpl.java
- src/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.java
- src/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.java
- src/test/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatusTest.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.java
- src/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.java
- src/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisService.java
- src/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.java
- src/test/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisServiceTest.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.java
- src/main/java/org/gridsuite/study/server/networkmodificationtree/dto/BuildStatus.java
- src/test/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationServiceTest.java
- src/main/java/org/gridsuite/study/server/repository/rootnetwork/RootNetworkNodeInfoRepository.java
- src/test/java/org/gridsuite/study/server/loadflow/LoadFLowUnitTest.java
- src/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationService.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.java
- src/main/java/org/gridsuite/study/server/networkmodificationtree/entities/RootNetworkNodeInfoEntity.java
- src/main/java/org/gridsuite/study/server/networkmodificationtree/dto/NodeBuildStatus.java
- src/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.java
- src/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationService.java
🚧 Files skipped from review as they are similar to previous changes (38)
- src/test/java/org/gridsuite/study/server/StudyControllerDynamicSecurityAnalysisTest.java
- src/main/java/org/gridsuite/study/server/notification/NotificationService.java
- src/test/java/org/gridsuite/study/server/StudyControllerDynamicSimulationTest.java
- src/test/java/org/gridsuite/study/server/NetworkModificationUnitTest.java
- src/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowController.java
- src/main/java/org/gridsuite/study/server/error/StudyExceptionHandler.java
- src/test/java/org/gridsuite/study/server/StudyControllerDynamicMarginCalculationTest.java
- src/main/java/org/gridsuite/study/server/service/SupervisionService.java
- src/main/java/org/gridsuite/study/server/controller/stateestimation/StateEstimationController.java
- src/test/java/org/gridsuite/study/server/loadflow/LoadFlowTest.java
- src/main/java/org/gridsuite/study/server/controller/pccmin/PccMinController.java
- src/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowParametersController.java
- src/main/java/org/gridsuite/study/server/controller/NodeActivityController.java
- src/test/java/org/gridsuite/study/server/VoltageInitTest.java
- src/main/java/org/gridsuite/study/server/repository/nodeactivity/NodeActivityRepository.java
- src/main/java/org/gridsuite/study/server/controller/sensitivityanalysis/SensitivityAnalysisController.java
- src/main/java/org/gridsuite/study/server/service/RebuildNodeService.java
- src/test/java/org/gridsuite/study/server/StudyServiceTest.java
- src/test/java/org/gridsuite/study/server/NetworkModificationTest.java
- src/main/java/org/gridsuite/study/server/service/ConsumerService.java
- src/main/resources/db/changelog/db.changelog-master.yaml
- src/main/resources/db/changelog/changesets/changelog_20260803T101500Z.xml
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.java
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.java
- src/main/java/org/gridsuite/study/server/service/StudyService.java
- src/test/java/org/gridsuite/study/server/WorkflowTest.java
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityType.java
- src/main/java/org/gridsuite/study/server/error/StudyBusinessErrorCode.java
- src/main/java/org/gridsuite/study/server/StudyApplication.java
- src/main/java/org/gridsuite/study/server/controller/voltageinit/VoltageInitController.java
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityLabel.java
- src/test/java/org/gridsuite/study/server/NetworkModificationTreeTest.java
- src/test/java/org/gridsuite/study/server/loadflow/LoadFLowIntegrationTest.java
- src/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.java
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.java
- src/main/java/org/gridsuite/study/server/controller/shortcircuit/ShortCircuitController.java
- src/main/java/org/gridsuite/study/server/controller/securityanalysis/SecurityAnalysisController.java
- src/main/java/org/gridsuite/study/server/dto/InvalidateNodeTreeParameters.java
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.java`:
- Around line 105-114: Propagate a stable activity ID from request creation
through result handling, and update NodeActivityService.removeNodeActivity to
delete only that correlated activity row rather than all rows in the
node/root-network scope. In NodeActivityRepository, remove the scope-wide
deletion methods used by this lifecycle path and add or use an activity-ID-based
delete operation; update all affected callers and preserve notification
behavior.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 9e591b90-5119-4986-aecb-905f8cee8987
📒 Files selected for processing (24)
src/main/java/org/gridsuite/study/server/controller/StudyController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowController.javasrc/main/java/org/gridsuite/study/server/controller/loadflow/LoadFlowParametersController.javasrc/main/java/org/gridsuite/study/server/controller/pccmin/PccMinController.javasrc/main/java/org/gridsuite/study/server/controller/securityanalysis/SecurityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/sensitivityanalysis/SensitivityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/shortcircuit/ShortCircuitController.javasrc/main/java/org/gridsuite/study/server/controller/stateestimation/StateEstimationController.javasrc/main/java/org/gridsuite/study/server/controller/voltageinit/VoltageInitController.javasrc/main/java/org/gridsuite/study/server/error/StudyBusinessErrorCode.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityRules.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityType.javasrc/main/java/org/gridsuite/study/server/repository/networkmodificationtree/NodeRepository.javasrc/main/java/org/gridsuite/study/server/repository/nodeactivity/NodeActivityRepository.javasrc/main/java/org/gridsuite/study/server/service/ConsumerService.javasrc/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.javasrc/main/java/org/gridsuite/study/server/service/RebuildNodeService.javasrc/main/java/org/gridsuite/study/server/service/StudyService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.javasrc/test/java/org/gridsuite/study/server/WorkflowTest.javasrc/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.java
💤 Files with no reviewable changes (4)
- src/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.java
- src/test/java/org/gridsuite/study/server/WorkflowTest.java
- src/main/java/org/gridsuite/study/server/error/StudyBusinessErrorCode.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.java
🚧 Files skipped from review as they are similar to previous changes (11)
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.java
- src/main/java/org/gridsuite/study/server/controller/voltageinit/VoltageInitController.java
- src/main/java/org/gridsuite/study/server/controller/securityanalysis/SecurityAnalysisController.java
- src/main/java/org/gridsuite/study/server/controller/pccmin/PccMinController.java
- src/main/java/org/gridsuite/study/server/controller/sensitivityanalysis/SensitivityAnalysisController.java
- src/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityEntity.java
- src/main/java/org/gridsuite/study/server/controller/stateestimation/StateEstimationController.java
- src/main/java/org/gridsuite/study/server/service/RebuildNodeService.java
- src/main/java/org/gridsuite/study/server/controller/shortcircuit/ShortCircuitController.java
- src/main/java/org/gridsuite/study/server/service/ConsumerService.java
- src/main/java/org/gridsuite/study/server/service/StudyService.java
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
711f1a3 to
c7085fa
Compare
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
There was a problem hiding this comment.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
src/main/java/org/gridsuite/study/server/controller/StudyController.java (1)
254-255: 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy liftTrack the destination anchor for every tree insertion. For CHILD insertion,
reparentedNodesreturns an empty list. The affected flows then create no activity for the node whose children they modify. A conflicting delete, stash, or tree edit on that anchor can run concurrently.
src/main/java/org/gridsuite/study/server/controller/StudyController.java#L254-L255: includereferenceNodeUuidfor CHILD node duplication.src/main/java/org/gridsuite/study/server/controller/StudyController.java#L345-L346: includereferenceNodeUuidwhen moving a subtree.src/main/java/org/gridsuite/study/server/controller/StudyController.java#L362-L363: wrap subtree duplication in EDIT_TREE activity tracking forreferenceNodeUuid.src/main/java/org/gridsuite/study/server/controller/StudyController.java#L1133-L1135: includereferenceIdfor CHILD node creation.src/main/java/org/gridsuite/study/server/controller/StudyController.java#L1150-L1152: wrap sequence creation in EDIT_TREE activity tracking forreferenceId.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/main/java/org/gridsuite/study/server/controller/StudyController.java` around lines 254 - 255, Update StudyController at src/main/java/org/gridsuite/study/server/controller/StudyController.java:254-255 to include referenceNodeUuid for CHILD node duplication; at 345-346 include referenceNodeUuid when moving a subtree; at 362-363 wrap subtree duplication in EDIT_TREE activity tracking for referenceNodeUuid; at 1133-1135 include referenceId for CHILD node creation; and at 1150-1152 wrap sequence creation in EDIT_TREE activity tracking for referenceId. Ensure every insertion tracks the destination anchor even when reparentedNodes returns no affected nodes.src/main/java/org/gridsuite/study/server/service/ConsumerService.java (1)
498-500: 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy liftCorrelate every terminal message with the activity that it ends. These cleanup calls identify an activity only by node and root network. If an old terminal message is delayed or replayed after a later operation starts, it can remove the later operation's activity and admit conflicting work.
src/main/java/org/gridsuite/study/server/service/ConsumerService.java#L498-L500: require an activity or operation correlation identifier before deleting a computation activity.src/main/java/org/gridsuite/study/server/service/ConsumerService.java#L135-L136: apply the same correlation check to successful build cleanup.src/main/java/org/gridsuite/study/server/service/ConsumerService.java#L202-L208: apply the same correlation check to failed or cancelled build cleanup.src/main/java/org/gridsuite/study/server/service/ConsumerService.java#L393-L396: apply the same correlation check to reimport cleanup.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/main/java/org/gridsuite/study/server/service/ConsumerService.java` around lines 498 - 500, Require and validate an activity or operation correlation identifier before removing computation activities, ensuring each terminal message cleans up only the activity it ends. Apply this consistently in ConsumerService.java at lines 498-500 (endComputationActivity), 135-136 (successful build cleanup), 202-208 (failed or cancelled build cleanup), and 393-396 (reimport cleanup); reject or skip cleanup when the identifier does not match the active operation.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@src/main/java/org/gridsuite/study/server/nodeactivity/ScheduledNodeActivityCleaner.java`:
- Around line 40-49: Update removeAbandonedNodeActivities and its surrounding
cleanup flow so selecting abandoned activities, releasing them, and calling
StudyService.invalidateAbandonedNode occur within one transaction. Move the
invalidation into the transactional service operation or otherwise ensure the
transaction remains active through the forEach loop, preventing new activity
creation between NodeActivityService.removeAbandonedNodeActivities and
invalidation.
In
`@src/test/java/org/gridsuite/study/server/NetworkVisualizationParamsTest.java`:
- Line 159: Restore or define the 1000 ms TIMEOUT constants in
NetworkVisualizationParamsTest, SingleLineDiagramTest, and
SpreadsheetConfigCollectionTest where removed, then update every listed
receiveStudyUpdate or study-update event read in
src/test/java/org/gridsuite/study/server/NetworkVisualizationParamsTest.java
(83-83, 159-159), PccMinTest.java (227-227, 240-240, 422-422, 519-523),
SensitivityAnalysisTest.java (264-264, 285-295, 513-513, 582-582, 647-653,
687-687, 837-837), ShortCircuitTest.java (224-228, 618-618, 629-629, 768-778,
890-890), SingleLineDiagramTest.java (529-529),
SpreadsheetConfigCollectionTest.java (497-497), StateEstimationTest.java
(238-238, 313-313, 459-463), StudyControllerDynamicSecurityAnalysisTest.java
(214-214, 256-256, 276-276, 288-288, 361-361, 381-390, 437-437, 457-457,
545-549), and StudyControllerDynamicSimulationTest.java (243-243, 284-284,
304-304, 316-316, 389-389, 409-418, 465-465, 485-485, 683-691, 703-711) to pass
TIMEOUT, using an explicit 1000 ms value only where specified.
In `@src/test/java/org/gridsuite/study/server/studycontroller/StudyTest.java`:
- Around line 657-665: Update the study-creation message drain in the test block
around the existing TestUtils.receiveStudyUpdate calls to use
TestUtils.receiveStudyUpdate with output, studyUpdateDestination, and TIMEOUT *
3 instead of plain output.receive. Keep the surrounding message-draining order
unchanged and align it with the equivalent block.
---
Outside diff comments:
In `@src/main/java/org/gridsuite/study/server/controller/StudyController.java`:
- Around line 254-255: Update StudyController at
src/main/java/org/gridsuite/study/server/controller/StudyController.java:254-255
to include referenceNodeUuid for CHILD node duplication; at 345-346 include
referenceNodeUuid when moving a subtree; at 362-363 wrap subtree duplication in
EDIT_TREE activity tracking for referenceNodeUuid; at 1133-1135 include
referenceId for CHILD node creation; and at 1150-1152 wrap sequence creation in
EDIT_TREE activity tracking for referenceId. Ensure every insertion tracks the
destination anchor even when reparentedNodes returns no affected nodes.
In `@src/main/java/org/gridsuite/study/server/service/ConsumerService.java`:
- Around line 498-500: Require and validate an activity or operation correlation
identifier before removing computation activities, ensuring each terminal
message cleans up only the activity it ends. Apply this consistently in
ConsumerService.java at lines 498-500 (endComputationActivity), 135-136
(successful build cleanup), 202-208 (failed or cancelled build cleanup), and
393-396 (reimport cleanup); reject or skip cleanup when the identifier does not
match the active operation.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 482f63c8-14b6-4f26-bd4a-bfadb6847ff7
📒 Files selected for processing (75)
src/main/java/org/gridsuite/study/server/controller/StudyController.javasrc/main/java/org/gridsuite/study/server/controller/dynamicmargincalculation/DynamicMarginCalculationController.javasrc/main/java/org/gridsuite/study/server/controller/dynamicsecurityanalysis/DynamicSecurityAnalysisController.javasrc/main/java/org/gridsuite/study/server/controller/dynamicsimulation/DynamicSimulationController.javasrc/main/java/org/gridsuite/study/server/controller/dynamicsimulation/DynamicSimulationEventsController.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityInfos.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityRules.javasrc/main/java/org/gridsuite/study/server/nodeactivity/NodeActivityService.javasrc/main/java/org/gridsuite/study/server/nodeactivity/ScheduledNodeActivityCleaner.javasrc/main/java/org/gridsuite/study/server/notification/NotificationService.javasrc/main/java/org/gridsuite/study/server/repository/networkmodificationtree/NodeRepository.javasrc/main/java/org/gridsuite/study/server/service/ConsumerService.javasrc/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.javasrc/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.javasrc/main/java/org/gridsuite/study/server/service/StudyService.javasrc/main/java/org/gridsuite/study/server/service/SupervisionService.javasrc/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationRestService.javasrc/main/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationRestService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationService.javasrc/main/java/org/gridsuite/study/server/service/dynamicsimulation/impl/DynamicSimulationRestServiceImpl.javasrc/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.javasrc/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.javasrc/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.javasrc/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.javasrc/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.javasrc/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.javasrc/main/resources/db/changelog/changesets/changelog_20260812T035357Z.xmlsrc/main/resources/db/changelog/db.changelog-master.yamlsrc/test/java/org/gridsuite/study/server/ComputationResultFiltersTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationTreeTest.javasrc/test/java/org/gridsuite/study/server/NetworkModificationUnitTest.javasrc/test/java/org/gridsuite/study/server/NetworkVisualizationParamsTest.javasrc/test/java/org/gridsuite/study/server/PccMinTest.javasrc/test/java/org/gridsuite/study/server/RebuildNodeServiceTest.javasrc/test/java/org/gridsuite/study/server/SensitivityAnalysisTest.javasrc/test/java/org/gridsuite/study/server/ShortCircuitTest.javasrc/test/java/org/gridsuite/study/server/SingleLineDiagramTest.javasrc/test/java/org/gridsuite/study/server/SpreadsheetConfigCollectionTest.javasrc/test/java/org/gridsuite/study/server/SpreadsheetConfigTest.javasrc/test/java/org/gridsuite/study/server/StateEstimationTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicMarginCalculationTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSecurityAnalysisTest.javasrc/test/java/org/gridsuite/study/server/StudyControllerDynamicSimulationTest.javasrc/test/java/org/gridsuite/study/server/VoltageInitTest.javasrc/test/java/org/gridsuite/study/server/WorkspaceConfigTest.javasrc/test/java/org/gridsuite/study/server/config/DisableJpa.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowIntegrationTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFLowUnitTest.javasrc/test/java/org/gridsuite/study/server/loadflow/LoadFlowTest.javasrc/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.javasrc/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityServiceTest.javasrc/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkControllerTest.javasrc/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.javasrc/test/java/org/gridsuite/study/server/rootnetworks/SecurityAnalysisTest.javasrc/test/java/org/gridsuite/study/server/service/ReportServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsecurityanalysis/DynamicSecurityAnalysisRestServiceTest.javasrc/test/java/org/gridsuite/study/server/service/dynamicsimulation/DynamicSimulationRestServiceTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/NodeControllerTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/StudyControllerCreationTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/StudyControllerRebuildNodeTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/StudyTest.javasrc/test/java/org/gridsuite/study/server/studycontroller/StudyTestBase.javasrc/test/java/org/gridsuite/study/server/utils/TestUtils.java
🚧 Files skipped from review as they are similar to previous changes (24)
- src/main/java/org/gridsuite/study/server/service/RootNetworkNodeInfoService.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinRestService.java
- src/test/java/org/gridsuite/study/server/service/dynamicmargincalculation/DynamicMarginCalculationServiceTest.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisService.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationService.java
- src/main/resources/db/changelog/db.changelog-master.yaml
- src/main/java/org/gridsuite/study/server/service/loadflow/LoadFlowRestService.java
- src/main/java/org/gridsuite/study/server/service/stateestimation/StateEstimationRestService.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisService.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitRestService.java
- src/main/java/org/gridsuite/study/server/service/securityanalysis/SecurityAnalysisRestService.java
- src/main/java/org/gridsuite/study/server/service/pccmin/PccMinService.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitService.java
- src/test/java/org/gridsuite/study/server/NetworkModificationUnitTest.java
- src/main/java/org/gridsuite/study/server/service/sensitivityanalysis/SensitivityAnalysisRestService.java
- src/main/java/org/gridsuite/study/server/service/SupervisionService.java
- src/test/java/org/gridsuite/study/server/StudyControllerDynamicMarginCalculationTest.java
- src/main/java/org/gridsuite/study/server/service/voltageinit/VoltageInitService.java
- src/test/java/org/gridsuite/study/server/rootnetworks/RootNetworkTest.java
- src/main/java/org/gridsuite/study/server/service/shortcircuit/ShortCircuitRestService.java
- src/main/java/org/gridsuite/study/server/service/NetworkModificationTreeService.java
- src/test/java/org/gridsuite/study/server/nodeactivity/NodeActivityRulesTest.java
- src/test/java/org/gridsuite/study/server/loadflow/LoadFLowIntegrationTest.java
- src/main/java/org/gridsuite/study/server/service/StudyService.java
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
a667eb0 to
a3ceee8
Compare
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
…sybl-study-server into ayolab/node-activity
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
|
Remove assertIsNodeNotReadOnly ? |
|
Warning Your free Security trial is over. An organization admin can activate billing to continue. |
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
…sybl-study-server into ayolab/node-activity
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
|
Signed-off-by: Ayoub LABIDI <ayoub.labidi@protonmail.com>
1db4e8c to
5d9cf39
Compare



No description provided.