1) Create a simple exec bomb (a program that execs itself every 1 or so seconds) 2) Attach to that process Stack trace produced: Exception in thread "Thread-1" java.lang.RuntimeException: Linux[Task,id={TaskId,29203},proc=[Proc,id={ProcId,29203},state=[runningState]],state=[unattachedState]] in state "unattached" did not handle [Execed[TaskEvent,taskLinux[Task,id={TaskId,29203},proc=[Proc,id={ProcId,29203},state=[runningState]],state=[unattachedState]]]] at frysk.proc.State.unhandled(java.lang.Object, java.lang.String) (/home/pmuldoon/workspace/frysk-gui/frysk/proc/State.java:67) at frysk.proc.State.unhandled(java.lang.Object, frysk.event.Event) (/home/pmuldoon/workspace/frysk-gui/frysk/proc/State.java:58) at frysk.proc.TaskState.process(frysk.proc.Task, frysk.proc.TaskEvent$Execed) (/home/pmuldoon/workspace/frysk-gui/frysk/proc/TaskState.java:98) at frysk.proc.TaskEvent$Execed.execute() (/home/pmuldoon/workspace/frysk-gui/frysk/proc/TaskEvent.java:133) at frysk.event.EventLoop.runPending() (/home/pmuldoon/workspace/frysk-gui/frysk/event/EventLoop.java:201) at frysk.event.EventLoop.run() (/home/pmuldoon/workspace/frysk-gui/frysk/event/EventLoop.java:255) at frysk.gui.FryskGui$2.run() (/home/pmuldoon/workspace/frysk-gui/frysk/gui/FryskGui.java:178) at java.lang.Thread.run() (/usr/lib/libgcj.so.6.0.0)
Created attachment 684 [details] Very Simple Exec bomb
It seems that this just occurs at any time. The rapid Exec exposes it more rapidly than in normal usage. But in the sceanrio where an observer is added to "normal" process (ie ones that do not magnify troubling behaviour on a larger scale) these stack traces occur then too.
Currently there does not have to be an exec observer attached to the PID for this to occur now (it occurs just on startup) Exception in thread "Thread-2" java.lang.RuntimeException: Linux{frysk.proc.LinuxTask@5b63c60,id={TaskId,9455},proc={frysk.proc.LinuxProc@5b2c820,id={ProcId,9455},state=running},state=unattached} in state "unattached" did not handle PerformExeced at frysk.proc.State.unhandled(java.lang.Object, java.lang.String) (/home/pmuldoon/workspace/frysk-gui/frysk/proc/State.java:70) at frysk.proc.TaskState.processPerformExeced(frysk.proc.Task) (/home/pmuldoon/workspace/frysk-gui/frysk/proc/TaskState.java:106) at frysk.proc.Task$19.execute() (/home/pmuldoon/workspace/frysk-gui/frysk/proc/Task.java:442) at frysk.event.EventLoop.runEventLoop(boolean) (/home/pmuldoon/workspace/frysk-gui/frysk/event/EventLoop.java:290) at frysk.event.EventLoop.run() (/home/pmuldoon/workspace/frysk-gui/frysk/event/EventLoop.java:384) at frysk.gui.FryskGui$3.run() (/home/pmuldoon/workspace/frysk-gui/frysk/gui/FryskGui.java:189) at java.lang.Thread.run() (/usr/lib/libgcj.so.6.0.0)
*** Bug 1500 has been marked as a duplicate of this bug. ***
*** Bug 1988 has been marked as a duplicate of this bug. ***
The exec observer now works okay. Changed Proc.java.