erreur dans la regle CantonnementPreSimu
Bonjour je viens de relancer une vieille simu en changeant le parametrage de le regle PreSimu. Dans la vielle simu cette regle s'appliquait tous les mois de l'annee et là j'ai tester de janvier à Juin. Et ca plante... merci Steph voici le log INFO|18:27:17,684|CantonnementPreSimu.java|159|init_aroundBody0|l engin du métier est bien concerné INFO|18:27:17,688|CantonnementPreSimu.java|154|init_aroundBody0|metier examiné metier benth jum INFO|18:27:17,688|CantonnementPreSimu.java|159|init_aroundBody0|l engin du métier est bien concerné INFO|18:27:17,695|CantonnementPreSimu.java|172|init_aroundBody0|il y a bien intersection entre la zone métier et le cantonnement pour la saison [janvier, février, mars, avril, mai, juin, juillet, août, septembre, octobre, novembre, décembre] INFO|18:27:17,704|CantonnementPreSimu.java|245|init_aroundBody0|il y a intersection de la saison de fermeture avec la saison métier de janvier àdécembre INFO|18:27:17,705|CantonnementPreSimu.java|265|init_aroundBody0|de janvier àjuin le metier peche en MetaCantonnement-metier benth jum -[janvier, février, mars, avril, mai, juin, juillet, août, septembre, octobre, novembre, décembre] INFO|18:27:17,705|CantonnementPreSimu.java|266|init_aroundBody0|de juillet àdécembre le metier peche en [zone metier benth] ERROR|18:27:17,706|InProcessSimulatorLauncher.java|484|localSimulateSameThread|Error during simulation java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(Unknown Source) at java.util.ArrayList$Itr.next(Unknown Source) at org.hibernate.collection.internal.AbstractPersistentCollection$IteratorProxy.next(AbstractPersistentCollection.java:789) at rules.CantonnementPreSimu.init_aroundBody0(CantonnementPreSimu.java:161) at rules.CantonnementPreSimu$AjcClosure1.run(CantonnementPreSimu.java:1) at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149) at fr.ifremer.isisfish.aspect.RuleAspect.makeTimedCall(RuleAspect.java:121) at fr.ifremer.isisfish.aspect.RuleAspect.initCall(RuleAspect.java:70) at rules.CantonnementPreSimu.init(CantonnementPreSimu.java:140) at simulators.DefaultSimulator.simulate(DefaultSimulator.java:111) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:441) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:271) INFO|18:27:17,734|InProcessSimulatorLauncher.java|513|localSimulateSameThread|Simulation time: 4.660 INFO|18:27:17,737|IsisCacheBackendOnGuava.java|239|adjustedCache|Cache size ajusted to 3,316Ko (equivalent to 2 step need) INFO|18:27:17,750|InProcessSimulatorLauncher.java|202|message|Simulation terminée INFO|18:27:17,750|SimulationControl.java|206|setText|Simulation terminée
Le 15/01/2016 18:40, smahevas a écrit :
Bonjour
je viens de relancer une vieille simu en changeant le parametrage de le regle PreSimu. Dans la vielle simu cette regle s'appliquait tous les mois de l'annee et là j'ai tester de janvier à Juin. Et ca plante...
Salut, L'erreur est logique, je l'ai corrigé. Si tu relance isis, tu devrais avoir une notification comme quoi j'ai modifié la regle CantonnementPreSimu. -- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
Bonjour je reviens sur un bug que l'on avait eu pendant le cours que l'on donne à l'agro avec ISIS et qu'Eric pensait avoirr resolu. Il semblerait que non... voir ci-dessous. en rappel : utilisation de la regle CantonnementPreSimu en modifiant le mois de debut et de fin (ISIS 4.3.1.3 et base GolfedeGascogneEcoMod_EC2010) Tu peux regarder Eric? merci Stephanie INFO|09:05:49,219|DefaultSimulator.java|112|simulate|Rule CantonnementPreSimu initialized ERROR|09:05:49,225|InProcessSimulatorLauncher.java|484|localSimulateSameThread|Error during simulation org.nuiton.topia.TopiaException: Une erreur est apparue pendant le commit : Found shared references to a collection: fr.ifremer.isisfish.entities.MetierSeasonInfoImpl.zone at org.nuiton.topia.framework.TopiaContextImpl.commitTransaction(TopiaContextImpl.java:781) at simulators.DefaultSimulator.simulate(DefaultSimulator.java:119) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:441) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:271) Caused by: org.hibernate.HibernateException: Found shared references to a collection: fr.ifremer.isisfish.entities.MetierSeasonInfoImpl.zone at org.hibernate.engine.internal.Collections.processReachableCollection(Collections.java:180) at org.hibernate.event.internal.FlushVisitor.processCollection(FlushVisitor.java:59) at org.hibernate.event.internal.AbstractVisitor.processValue(AbstractVisitor.java:121) at org.hibernate.event.internal.AbstractVisitor.processValue(AbstractVisitor.java:82) at org.hibernate.event.internal.AbstractVisitor.processEntityPropertyValues(AbstractVisitor.java:76) at org.hibernate.event.internal.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:172) at org.hibernate.event.internal.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:231) at org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:102) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:55) at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1222) at org.nuiton.topia.framework.TopiaContextImpl.commitTransaction(TopiaContextImpl.java:764) ... 3 more INFO|09:05:49,227|InProcessSimulatorLauncher.java|513|localSimulateSameThread|Simulation time: 3.333 INFO|09:05:49,248|IsisCacheBackendOnGuava.java|239|adjustedCache|Cache size ajusted to 17,531Ko (equivalent to 2 step need) INFO|09:05:49,256|InProcessSimulatorLauncher.java|202|message|Simulation terminée INFO|09:05:49,257|SimulationControl.java|206|setText|Simulation Le 18/01/2016 10:40, Eric Chatellier a écrit :
Le 15/01/2016 18:40, smahevas a écrit :
Bonjour
je viens de relancer une vieille simu en changeant le parametrage de le regle PreSimu. Dans la vielle simu cette regle s'appliquait tous les mois de l'annee et là j'ai tester de janvier à Juin. Et ca plante... Salut,
L'erreur est logique, je l'ai corrigé. Si tu relance isis, tu devrais avoir une notification comme quoi j'ai modifié la regle CantonnementPreSimu.
-- ...................................................................... Stephanie MAHEVAS (Stephanie.Mahevas@ifremer.fr) IFREMER/EMH (Ecologie et Modèles pour l'Halieutique) Tel: (33) 2 40 37 41 81 Fax: (33) 2 40 37 40 75 o \ o / _ o __| \ / |__ o _ \ o / o /|\ | /\ ___\o \o | o/ o/__ /\ | /|\ / \ / \ | \ /) | ( \ /o\ / ) | (\ / | / \ / \ ......................................................................
Le 14/09/2016 09:10, Stephanie MAHEVAS a écrit :
Bonjour je reviens sur un bug que l'on avait eu pendant le cours que l'on donne à l'agro avec ISIS et qu'Eric pensait avoirr resolu. Il semblerait que non... voir ci-dessous. en rappel : utilisation de la regle CantonnementPreSimu en modifiant le mois de debut et de fin (ISIS 4.3.1.3 et base GolfedeGascogneEcoMod_EC2010) Tu peux regarder Eric?
@Benjamin: Tu pourrais modifier la règle stp ? Je pense que l'erreur viens de la ligne 297 : NouvelInfoSaison2.setZone(saisonmetier.getZone()); Il faudrait : NouvelInfoSaison2.setZone(new ArrayList<Zone>(saisonmetier.getZone())); ou NouvelInfoSaison2.addAllZone(saisonmetier.getZone()); C'est à commiter dans le trunk et la branche 4.3.1. Merci
apres correction : ERROR|14:13:41,534|InProcessSimulatorLauncher.java|484|localSimulateSameThread|Error during simulation java.lang.NullPointerException at scripts.SiMatrix.matrixFishingMortality_aroundBody38(SiMatrix.java:700) at scripts.SiMatrix$AjcClosure39.run(SiMatrix.java:1) at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149) at fr.ifremer.isisfish.util.IsisCache.realCall(IsisCache.java:202) at fr.ifremer.isisfish.util.IsisCache.get(IsisCache.java:143) at fr.ifremer.isisfish.aspect.CacheAspect.call(CacheAspect.java:73) at scripts.SiMatrix.matrixFishingMortality(SiMatrix.java:658) at simulators.DefaultSimulator.computeMonth(DefaultSimulator.java:468) at simulators.DefaultSimulator.simulate(DefaultSimulator.java:216) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:441) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:271) INFO|14:13:41,609|InProcessSimulatorLauncher.java|513|localSimulateSameThread|Simulation time: 6.394 INFO|14:13:41,615|IsisCacheBackendOnGuava.java|239|adjustedCache|Cache size ajusted to 17,93Ko (equivalent to 2 step need) INFO|14:13:41,642|InProcessSimulatorLauncher.java|202|message|Simulation terminée INFO|14:13:41,643|SimulationControl.java|206|setText|Simulation terminée Le 2016-09-14 10:06, Eric Chatellier a écrit :
Le 14/09/2016 09:10, Stephanie MAHEVAS a écrit :
Bonjour je reviens sur un bug que l'on avait eu pendant le cours que l'on donne à l'agro avec ISIS et qu'Eric pensait avoirr resolu. Il semblerait que non... voir ci-dessous. en rappel : utilisation de la regle CantonnementPreSimu en modifiant le mois de debut et de fin (ISIS 4.3.1.3 et base GolfedeGascogneEcoMod_EC2010) Tu peux regarder Eric?
@Benjamin: Tu pourrais modifier la règle stp ?
Je pense que l'erreur viens de la ligne 297 : NouvelInfoSaison2.setZone(saisonmetier.getZone());
Il faudrait : NouvelInfoSaison2.setZone(new ArrayList<Zone>(saisonmetier.getZone())); ou NouvelInfoSaison2.addAllZone(saisonmetier.getZone());
C'est à commiter dans le trunk et la branche 4.3.1.
Merci _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
apres discussion avec Benjamin, le probleme est plus important. La saisonnalite de la regle CantonnementPreSimu ne marche pas. L'erreur est dans l'algorithme qui ne cree pas les nouvelles saisons dans les metiers correctement. Je ne peux pas faire la correction maintenant. DONC A CE JOUR ON NE PEUT PAS FAIRE TOURNER CETTE REGLE AVEC UNE SAISON DE FERMETURE. elle ne marche correctement que si on laisse beginMonth = janvier, endMonth= decembre. Le 2016-09-16 14:15, smahevas a écrit :
apres correction :
ERROR|14:13:41,534|InProcessSimulatorLauncher.java|484|localSimulateSameThread|Error during simulation java.lang.NullPointerException at scripts.SiMatrix.matrixFishingMortality_aroundBody38(SiMatrix.java:700) at scripts.SiMatrix$AjcClosure39.run(SiMatrix.java:1) at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:149) at fr.ifremer.isisfish.util.IsisCache.realCall(IsisCache.java:202) at fr.ifremer.isisfish.util.IsisCache.get(IsisCache.java:143) at fr.ifremer.isisfish.aspect.CacheAspect.call(CacheAspect.java:73) at scripts.SiMatrix.matrixFishingMortality(SiMatrix.java:658) at simulators.DefaultSimulator.computeMonth(DefaultSimulator.java:468) at simulators.DefaultSimulator.simulate(DefaultSimulator.java:216) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher.localSimulateSameThread(InProcessSimulatorLauncher.java:441) at fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher$SimThread.run(InProcessSimulatorLauncher.java:271) INFO|14:13:41,609|InProcessSimulatorLauncher.java|513|localSimulateSameThread|Simulation time: 6.394 INFO|14:13:41,615|IsisCacheBackendOnGuava.java|239|adjustedCache|Cache size ajusted to 17,93Ko (equivalent to 2 step need) INFO|14:13:41,642|InProcessSimulatorLauncher.java|202|message|Simulation terminée INFO|14:13:41,643|SimulationControl.java|206|setText|Simulation terminée
Le 2016-09-14 10:06, Eric Chatellier a écrit : Le 14/09/2016 09:10, Stephanie MAHEVAS a écrit : Bonjour je reviens sur un bug que l'on avait eu pendant le cours que l'on donne à l'agro avec ISIS et qu'Eric pensait avoirr resolu. Il semblerait que non... voir ci-dessous. en rappel : utilisation de la regle CantonnementPreSimu en modifiant le mois de debut et de fin (ISIS 4.3.1.3 et base GolfedeGascogneEcoMod_EC2010) Tu peux regarder Eric? @Benjamin: Tu pourrais modifier la règle stp ?
Je pense que l'erreur viens de la ligne 297 : NouvelInfoSaison2.setZone(saisonmetier.getZone());
Il faudrait : NouvelInfoSaison2.setZone(new ArrayList<Zone>(saisonmetier.getZone())); ou NouvelInfoSaison2.addAllZone(saisonmetier.getZone());
C'est à commiter dans le trunk et la branche 4.3.1.
Merci _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
participants (3)
-
Eric Chatellier -
smahevas -
Stephanie MAHEVAS