Bug 1401 - back-to-back proc requests panic proc state machine
Summary: back-to-back proc requests panic proc state machine
Status: RESOLVED FIXED
Alias: None
Product: frysk
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
: P1 normal
Target Milestone: ---
Assignee: Andrew Cagney
URL:
Keywords:
Depends on:
Blocks: 1553
  Show dependency treegraph
 
Reported: 2005-09-30 16:22 UTC by Andrew Cagney
Modified: 2005-11-07 00:15 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Cagney 2005-09-30 16:22:27 UTC
Back to back requests, created by a call sequence like:
Proc.requestAttachedStop (); Proc.requestAttachedStop()
are not tested.
Comment 1 Phil Muldoon 2005-10-04 17:54:28 UTC
Additional Data:

This occurs both for properly sequenced requests (as well as odd scenarios where
you try to attach a process several times in quick succession).

If you send an attach -> stop -> resume -> detach via the GUI without waiting
for the log window to show the message back from the observable, you will get
the following stack trace:

Exception in thread "Thread-1" java.lang.RuntimeException: [Proc,id={ProcId,3405
},state=[ContinupingAllTasksState]] in state "ContinupingAllTasks" did not handl
e RequestDetachedContinue
   at frysk.proc.State.unhandled(java.lang.Object, java.lang.String) (/home/pmul
doon/workspace/frysk-gui/frysk/proc/State.java:67)
   at frysk.proc.ProcState.processRequestDetachedContinue(frysk.proc.Proc) (/hom
e/pmuldoon/workspace/frysk-gui/frysk/proc/ProcState.java:83)
   at frysk.proc.Proc$3.execute() (/home/pmuldoon/workspace/frysk-gui/frysk/proc
/Proc.java:197)
   at frysk.event.EventLoop.runPending() (/home/pmuldoon/workspace/frysk-gui/fry
sk/event/EventLoop.java:201)
   at frysk.event.EventLoop.run() (/home/pmuldoon/workspace/frysk-gui/frysk/even
t/EventLoop.java:255)
   at frysk.gui.FryskGui$2.run() (/home/pmuldoon/workspace/frysk-gui/frysk/gui/F
ryskGui.java:178)
   at java.lang.Thread.run() (/usr/lib/libgcj.so.6.0.0)
Comment 2 Andrew Cagney 2005-11-07 00:15:21 UTC
No longer applicable (just wonder what happens if back-to-back add-observer
events are sent).