rhoentier / ss22_fp_mapc-group_5

4 stars 0 forks source link

BUG #55

Closed A-V-Lorenz closed 2 years ago

A-V-Lorenz commented 2 years ago

Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "this.lastAction" is null at massim.javaagents.agents.NextAgentStatus.UpdateMap(NextAgentStatus.java:215) at massim.javaagents.agents.NextPerceptReader.convertGeneratedSets(NextPerceptReader.java:247) at massim.javaagents.agents.NextPerceptReader.evaluate(NextPerceptReader.java:209) at massim.javaagents.agents.NextAgent.step(NextAgent.java:128) at massim.javaagents.Scheduler.lambda$step$2(Scheduler.java:153) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at massim.javaagents.Scheduler.step(Scheduler.java:152) at massim.javaagents.Main.main(Main.java:69)

A-V-Lorenz commented 2 years ago

Der Fehler killt aktuell den NextAgent komplett, so dass er sich auch nicht mehr erholt, man ihn neustarten muss, und somit die Karte und das ganze Wissen verliert.

rhoentier commented 2 years ago

Ich bekomm den Fehler nicht geworfen. Kannst du nochmal beschreiben, wie man den Reproduzieren kann? Und lastAction wird, wenn ich mich nicht irre, nur im perceptReader gesetzt und sollte also bestenfalls niemals null sein.

A-V-Lorenz commented 2 years ago

Das passiert, sobald man die Ausführung des Agenten pausiert und danach die Ausführung fortsetzt. Das könnte denke ich auch passieren, wenn man den Agenten neustartet, und die Verarbeitung noch nicht 100% stabil ist.

Instabile Verbindung, und Agentenresilienz war ein großes Thema bei der letzten Massim Runde, also sollten wir uns das insgesamt gut anschauen.

Ich habe mir das Thema noch nicht genau angeschaut, mir ist der Fehler jetzt aber 3-4 mal begegnet.

rhoentier commented 2 years ago

Ah okay. Gut zu wissen. Dann lass uns darüber irgendwann mal genauer nachdenken. Durch die Abstraktionen des Agentenstatus können wir die Sachen ja vermutlich ganz gut in eine Datei schreiben und im notfall wieder einlesen

A-V-Lorenz commented 2 years ago

Lasst uns das zürückstellen. Aktuell taucht der Fehler nicht auf.