Closed A-V-Lorenz closed 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.
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.
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.
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
Lasst uns das zürückstellen. Aktuell taucht der Fehler nicht auf.
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)