triplea-game / triplea

TripleA is a turn based strategy game and board game engine, similar to Axis & Allies or Risk.
https://triplea-game.org/
GNU General Public License v3.0
1.33k stars 392 forks source link

Bot crashes #3554

Closed DanVanAtta closed 6 years ago

DanVanAtta commented 6 years ago

Tracking here notes/investigation and any information related to bot crashes being observed July 2018.

prastle commented 6 years ago

@DanVanAtta I slapped ya in the lobby but maybe you will notice this here quickly. Perhaps grab some saves of bot 300 server. since it has two long games running with many observers on it. No problems yet just mentioning.

prastle commented 6 years ago

Bot 403 has been booted from the lobby for you to look at @DanVanAtta

DanVanAtta commented 6 years ago

Thanks @prastle , I'll check 403 out.

DanVanAtta commented 6 years ago

I do not see a persistent issue, I do see this error pretty recently in logs:

Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]: WARNING: null
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]: java.lang.NullPointerException
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.chat.Chat$1.speakerAdded(Chat.java:295)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at java.lang.reflect.Method.invoke(Method.java:498)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeSingle(EndPoint.java:157)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeMultiple(EndPoint.java:140)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeLocal(EndPoint.java:126)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.UnifiedMessenger.invoke(UnifiedMessenger.java:152)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.UnifiedInvocationHandler.invoke(UnifiedInvocationHandler.java:48)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at com.sun.proxy.$Proxy2.speakerAdded(Unknown Source)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.chat.ChatController.joinChat(ChatController.java:116)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at java.lang.reflect.Method.invoke(Method.java:498)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeSingle(EndPoint.java:157)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeMultiple(EndPoint.java:140)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.EndPoint.invokeLocal(EndPoint.java:126)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.unifiedmessenger.UnifiedMessenger.invokeAndWait(UnifiedMessenger.java:105)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.message.UnifiedInvocationHandler.invoke(UnifiedInvocationHandler.java:52)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at com.sun.proxy.$Proxy1.joinChat(Unknown Source)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.chat.Chat.<init>(Chat.java:83)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.chat.HeadlessChat.<init>(HeadlessChat.java:33)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.framework.startup.mc.ServerModel.createServerMessenger(ServerModel.java:280)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.framework.startup.mc.ServerModel.lambda$createServerMessenger$1(ServerModel.java:250)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at java.util.Optional.map(Optional.java:215)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.framework.startup.mc.ServerModel.createServerMessenger(ServerModel.java:250)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.framework.headlessGameServer.HeadlessServerSetupPanelModel.showSelectType(HeadlessServerSetupPanelModel.java:24)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at games.strategy.engine.framework.headlessGameServer.HeadlessGameServer.lambda$new$1(HeadlessGameServer.java:95)
Jul 16 16:37:47 bot45_atlanta_ga run_bot.sh[8375]:         at java.lang.Thread.run(Thread.java:748)
DanVanAtta commented 6 years ago

Chat.java:

      if (version > chatInitVersion) {
        synchronized (mutexNodes) {
          nodes.add(node);   // <<<,   NPE on this line 
          addToNotesMap(node, tag);
          updateConnections();
        }
prastle commented 6 years ago

@DanVanAtta All the new bots don't have any maps!!!

ron-murhammer commented 6 years ago

@DanVanAtta Is that the same issue as @RoiEXLab tried to fix in https://github.com/triplea-game/triplea/issues/3371?

prastle commented 6 years ago

His new mega server is working red. I do like the one change I have noticed is that when the bot empties it now it leaves a blank. Which in the past indicated a rebooted server and always made any user nervous...

I think it should stay this way just my two cents. @DanVanAtta @ron-murhammer

DanVanAtta commented 6 years ago

Looks like it could be

RoiEXLab commented 6 years ago

@DanVanAtta It is, the "fix" is uneccessary. The bots need to be updated.

prastle commented 6 years ago

Bot 302 is mia if anyone wants to look at it. @DanVanAtta @RoiEXLab

DanVanAtta commented 6 years ago

Closing: