View ProjeQtOr On SourceForge.net
ProjeQtOr - Project Management Tool
Supportez nous sur Capterra
OIN - Open Invention Network
ProjeQtOr free project management software - [SOLVED] cyclic dependencies via parents - creating a stack overflow - ProjeQtOr

Prochaines Sessions

Les prochaines formations et démonstrations sont ouvertes, inscrivez-vous rapidement !

 

Démonstration de ProjeQtOr

(gratuit, sur inscription)
 

13 mai 2025 (10h30-12h)

5 juin 2025 (16h-17h30)

 
 

Planifiez avec ProjeQtOr

14 et 15 mai 2025 (9h-12h30)

18 et 19 juin 2025 (9h-12h30)

 
 

Administrez avec ProjeQtOr

20 et 21 mai (9h-12h30)

25 et 26 juin (9h-12h30)

 

 

 

[SOLVED] cyclic dependencies via parents - creating a stack overflow

More
22 Fév 2016 16:51 - 23 Fév 2016 10:38 #1 by matthiaspnowak
One user entered dependencies in the project, effectively disabling the planning functionality.

He created a milestone. Then an activity with a successor link to that milestone. A sub-activity had the same milestone as a predecessor. This created a cycle via a parent.

When pressing the planning button - i get no response, probably there is a stack overflow message on the remote server. Using traceLog i was able to pinpoint the problem.

In model/PlanningElement in the function initializeFullList($list) there is a call to a recursive function self::getRecursivePredecessor($directPredecessors,...) which keeps running and probably running out of space.

What is the best idea and place to discover cycles in the planning structure?
Attachments:
Last edit: 23 Fév 2016 10:38 by matthiaspnowak. Reason: added picture of project setup

Please Connexion or Create an account to join the conversation.

More
23 Fév 2016 11:34 - 23 Fév 2016 11:38 #2 by matthiaspnowak
(third trial to add my solution)

I added a check to the getRecursivePredecessor function in PlanningElement.php The added argument $visited keeps tabs on which $idPrec are already visited. Therefore it will prevent a stack overflow. It seems that the dependency check also used this function and wasn't able to discover a cycle due to the stack overflow.
Attachments:
Last edit: 23 Fév 2016 11:38 by matthiaspnowak. Reason: added explanation

Please Connexion or Create an account to join the conversation.

More
24 Fév 2016 18:32 #3 by babynus
Hi,

Great.
Tanks for the fix : it will ensure that planning will wotk on any cases.

On my side, I worked on fixing dependency loop control to avoid this use case.
Will be included in V5.3

Babynus
Administrator of ProjeQtOr web site

Please Connexion or Create an account to join the conversation.

Moderators: babynusprotion
Time to create page: 0.041 seconds

Paramétrages de cookies

×

Cookies fonctionnels

Ce site utilise des cookies pour assurer son bon fonctionnement et ne peuvent pas être désactivés de nos systèmes. Nous ne les utilisons pas à des fins publicitaires. Si ces cookies sont bloqués, certaines parties du site ne pourront pas fonctionner.

Session

Veuillez vous connecter pour voir vos activités!

Autres cookies

Ce site web utilise un certain nombre de cookies pour gérer, par exemple, les sessions utilisateurs.