When an observer fires - frysk.gui.monitor.observers.TaskObserverRoot$1.addFailed(FryskGui) Followup to bug: http://www.sourceware.org/bugzilla/show_bug.cgi?id=2802 If you then force the configured (e.g., Exec or Fork) observer to fire, by executing a shell command (e.g., ls) from the tcsh shell being observed, this exception results: Error occurred while adding observer frysk.gui.monitor.observers.TaskObserverRoot$1.addFailed(FryskGui) frysk.proc.OffspringObserver$1.execute(FryskGui) frysk.event.EventLoop.runEventLoop(FryskGui) frysk.event.EventLoop.run(FryskGui) frysk.gui.Gui$3.run(FryskGui) frysk.gui.Gui$3.run(FryskGui) java.lang.Thread.run(libgcj.so.7) I'm not sure if this is a problem - or if something is just not yet complete - but this is the same behavior as the RHEL4/U4 Frysk update errata.
Created attachment 1103 [details] Screenshot
This is actually a rewrapped exception from the core indicating that adding an observer had failed. The core message was lost, but I fixed that. 2006-06-19 Phil Muldoon <pmuldoon@redhat.com> * observers/TaskObserverRoot.java (addFailed): Wrap original core exception up in Runtime Exception. The original message from the core should now be preserved intact. I have a hunch that it is the OffspringObserver throwing Process Lost.
The exception that occurs is now preserved. I've pasted the traceback: java.lang.RuntimeException: Process lost: could not get the main thread of this process. {frysk.proc.LinuxProc@10333c0,pid=15639,state=running} frysk.gui.monitor.observers.TaskObserverRoot$1.addFailed(FryskGui) frysk.proc.OffspringObserver$1.execute(FryskGui) frysk.event.EventLoop.runEventLoop(FryskGui) frysk.event.EventLoop.run(FryskGui) frysk.gui.Gui$3.run(FryskGui) java.lang.Thread.run(libgcj.so.7)
On FC5, with Frysk built from CVS head on June 21 (16:00), a fork observer attached to a tcsh process responds to 'ls' being executed from the tcsh process with this entry in the Frysk gui 'Main Log' Fri Jun 23 11:31:59 EDT 2006 PID 8960 triggered Fork Observer triggered Fork Observer And no exceptions are displayed in the gui or in the console from which FryskGui was invoked.
Performing the same test as in comment #4 on RHEL4/U4 with the June22 spin - write this to the Main Log when tcsh runs 'ls': Fri Jun 23 11:32:07 EDT 2006 PID 9033 triggered Fork Observer triggered Fork Observer Fri Jun 23 11:32:07 EDT 2006 addFailed(Object observable, Throwable w): {frysk.proc.LinuxProc@25c4c30,pid=9055,state=running} failed to add And it writes this to the console from where Frysk was invoked: frysk.gui.monitor.observers.TaskForkedObserver$1@2a909c0: .run() running runnable frysk.gui.monitor.filters.TaskFilterPoint@fcf0f0 forking thread: TaskFilterPoint.filter() frysk.gui.monitor.filters.TaskFilterPoint@fcf0c8 forked thread: TaskFilterPoint.filter() frysk.gui.monitor.observers.TaskForkedObserver@256dea0 Fork Observer: ObserverRoot.runActions() 23-Jun-06 11:32:07 AM frysk.gui.monitor.actions.LogAction execute INFO: PID 9033 triggered Fork Observer triggered Fork Observer
Sorry the exception was being sent to the wrong log. Fixed in HEAD. It will now produce dialog with message in comment #3
2006-06-27 Phil Muldoon <pmuldoon@redhat.com> * StressAttachDetachRapidlyForkingMainTask.java: Add refreshTimer. Add brokenXXX() to make sure testsuite passes. 2006-06-26 Phil Muldoon <pmuldoon@redhat.com> * StressAttachDetachRapidlyForkingMainTask.java: New. This testcase simulates a refresh during a short lived fork() event. It will produce many short lived forks. Helps to reproduce the scenario as described in the bz.
Verified that this bug is fixed - the exception is not raied - as of Frysk built from CVS head on 20060629.