What is causing the code to unravel in large games and when did this start happening?
-
As per this thread https://forums.triplea-game.org/topic/3411/toc19-results-thread/23 it happens to quite a few people. I think in general that it happens to everyone but if it doesn't happen to someone please do mention that here. Essentially browsing a large save starts causing errors and distortions on the map, risk of it happening grows with how many turns the save is.
I do not recall this being an issue a few years back and Im not sure myself when it started. It's really common the further back the save goes. What triggers it I do not yet know but depending on how you go back in the game you can trigger it at different points. Meaning if you go back turn by turn or if you click on 3 turns back at a time you may trigger it at different points or get different exceptions.
Try any large save from someone in the lobby and you might experience it yourself. I Believe it happens in Singleplayer games as well.
Someone brave should start looking into this before the the issue becomes so burried in new code that it becomes impossible to remedy . The exceptions are many and varried in terms of their situations and how they occur but are primarailly (or only?) related to errors like: "Java.Iang.IllegalStateException: Not all units present: XYZ" or "Java.lang.IllegalArgumentException: Cant remove more than player has of resources" or even one about territory. It seems to be that what ever is causing it is related to some sort of counter/memory issue (bare with me here I dont code a lot) that is keeping track of what units, territories and resources belong to who and that this somehow gets wrong values compared to what is actually present on the map as you revert backwards in the save. Potentially its not loading the data correctly as you move backwards in the save, it might be loading the wrong value of a later turn than the one you want to go back to.
What are your thoughts? Is anyone working on this?
Im assuming this is already reported about as most people including developers must have encountered it (?). -
@ondis said in What is causing the code to unravel in large games and when did this start happening?:
I do not recall this being an issue a few years back
I don't either
-
-
@ubernaut Happens on the simplest of maps right now, but memory plays tricks on us all.(Hah, no pun intended) Im really not sure tbh. Woudlnt be too hard to test I guess.
edit: Running a 2.0xxx test atm which is the earliest compiled version i could find on a quit glance but testing 1.9 or 1.7 would be better.
Edit 2: works flawlessly. Dunno if its because I have data in RAM atm though or not. See if it works for you and if it does we can at least isolate it to happening somewhere between https://github.com/triplea-game/triplea/releases/tag/2.0.20123 and now.
-
Are any developers looking into this? A new version is about to be changed but it could be good to clean up the old versions bugs first, perhaps?
-
@ondis said in What is causing the code to unravel in large games and when did this start happening?:
Are any developers looking into this?
No
triplea adrift at the moment
-
@ondis said in What is causing the code to unravel in large games and when did this start happening?:
Someone brave should start looking into this before the the issue becomes so burried in new code that it becomes impossible to remedy . The exceptions are many and varried in terms of their situations and how they occur but are primarailly (or only?) related to errors like: "Java.Iang.IllegalStateException: Not all units present: XYZ" or "Java.lang.IllegalArgumentException: Cant remove more than player has of resources" or even one about territory. It seems to be that what ever is causing it is related to some sort of counter/memory issue (bare with me here I dont code a lot) that is keeping track of what units, territories and resources belong to who and that this somehow gets wrong values compared to what is actually present on the map as you revert backwards in the save. Potentially its not loading the data correctly as you move backwards in the save, it might be loading the wrong value of a later turn than the one you want to go back to.
Best idea would be to hit "Report to TripleA" once those errors pop up to either create an issue at Github or see that the issue has already been reported and read about related ideas.
What do you mean by "code that unravels"? The error messages themselves? Or something else?
Just asking because I never saw something like you seem to describe...
I am not sure if this is related, but I have always set the (Xmx and Xms) RAM to 4096M in the vmoptions file.
-
Overall sounds like logic errors with how the history is loaded. If you can find consistent repro cases, it could be worthwhile to report them to bug tracking. The 'report to triplea' and add a detailed description (along with looking up the github issue that is created and attaching a save-game) will be the best way to get more traction. If a bug report has clear reproduction steps with save game; it is far more likely to be picked up.
-
Is it happening with 2.6 prerelease or 2.5? I believe a bunch of history bugs were fixed in 2.6...
-
@myrd 2.5 for me, havent tried 2.6 yet, Ill try it in a few days to see.