SwarmRoboticResearch / platypus3000

An easy to program, use and debug 2D-swarm-simulator in Java
GNU General Public License v3.0
0 stars 1 forks source link

Controller is not executed -> Message Overflow #2

Closed d-krupke closed 9 years ago

d-krupke commented 9 years ago

I observed some Message Overflows induced by the StateManager (which only sends one Message per Timestep). As the Message Queue is cleaned in each timestep this is kind of funny because a robot should at most receive one StateManager-Message from each robot, but this time it where far more than robots where in the simulation. As I tried to move this robot by the left-mouse, it failed. It seems like the robot is not looped at all. At this moment I have absolutly no idea and I observed this only with my new algorithms (which use more messages). There should be no possibility for a controller to kill itself without an exception. Also I have no idea how to reproduce this (it happens in like 10% of the runs). It is possible that this bug has been unnoticed for a long time, as I still fix Synchronization Errors from time to time (Especially in the Visualization).

d-krupke commented 9 years ago

It looks like as if Assertions are swallowed and lead to this issue without any notification. They are not catched but the finally block is called. I don't think that Java always behaved liked this, because it is stupid.