ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> tdk
tdk
Re: [TDK] [Komodo-discuss] Tcl remote debugger and spawnpoints
by Hemang Lavana other posts by this author
Nov 18 2008 1:53PM messages near this date
view in the new Beta List Site
Re: [TDK] [Komodo-discuss] Tcl remote debugger and spawnpoints | Re: [TDK] [Komodo-discuss] Tcl remote debugger and spawnpoints
Hi all,

Any updates on whether this issue has been resolved or not?

Thanks,
Hemang.
Alex Panchenko wrote:
>  Hi,
> 
>  Here is the detailed information.
> 
>  There are to files: parent.tcl and child.tcl
> 
>  === parent.tcl ===
>  proc spawn {cmd args} {
>      puts [exec [info nameofexecutable] $cmd $args]
>  }
> 
>  puts "PARENT STARTED"
>  spawn child.tcl
>  puts "PARENT FINISHED"
>  === child.tcl ====
>  puts "CHILD STARTED"
>  puts "CHILD FINISHED"
>  ==================
> 
>  The contents of the files is based on the 
>  http://docs.activestate.com/tdk/5.0/Debugger.html#mult_processes
> 
>  The command line used to start debugger is (all on the same line):
>  C:\TCL-Debug\5\dbgp_tcldebug.exe
>   -dbgp 192.168.3.135:10000
>   -app-shell C:\Tcl85\bin\tclsh85.exe
>   -ide-key dbgp_1225872443074
>   -log -logfile C:\TCL-Debug\log
>   -app-file C:\home\tcl-spawnpoints\parent.tcl --
> 
>  DBGP request:
>  spawnpoint_set -s enabled -n 6 -i 68 -f 
>  file:///C:/home/tcl-spawnpoints/parent.tcl
> 
>  DBGP response:
>  <?xml version="1.0" encoding="UTF-8" ?>
>  <response xmlns="urn:debugger_protocol" command="spawnpoint_set" 
>  transaction_id="68" state="enabled" id="0" />
> 
>  After that:
>  run -i 70
> 
>  response:
>  - a few stream/OUTPUT packets, followed by
>  <?xml version="1.0" encoding="UTF-8" ?>
>  <response xmlns="urn:debugger_protocol" command="run" 
>  transaction_id="70" status="stopping" reason="ok" />
> 
>  Debuggger log:
>  The whole log file size is about 200kb, the spawnpoint handling part is:
> 
>  ...
>  LOG(timing,3271527680): HandleNubEvent ENTER
>  LOG(message,3271527680): reading 105 bytes
>  LOG(message,3271527680): got (105): 'SPAWN_RQ {{0 {} global} {0 {1 6 {97 
>  16}} source C:/home/tcl-spawnpoints/parent.tcl}} {} {spawn child.tcl}'
>  LOG(timing,3271527680): HandleNubEvent SPAWN_RQ
>  debug     | appState = stopped (traced, sync'd)
>  LOG(timing,3271527680): DeliverEvent stdin ()
>  debug     | appState = running (traced, sync'd)
>  LOG(message,3271527680): sent: len=117 'SPAWN_ACK alex 
>  {::dbgp::client::Spawn request {spawn child.tcl} ::client} 
>  C:/TCL-Debug/5/appLaunch.tcl {} tcldbgp2472'
>  LOG(timing,3271542680): HandleNubEvent ENTER
>  ...
> 
>  Output:
>  PARENT STARTED
>  PARENT FINISHED
> 
>  Output if there is no spanwpoint or if spawnpoint is disabled:
>  PARENT STARTED
>  CHILD STARTED
>  CHILD FINISHED
>  PARENT FINISHED
> 
>  So it looks like the new process is not started if there is a spawnpoint.
> 
>  Also, it should made subsequent DBGP connection from the child process, 
>  but it also does not happen.
> 
>  It should be enough information to reproduce the issue. If you need more 
>  information - please let me know.
> 
>  Thanks,
>  Alex
> 
> 
>  Jeff Hobbs wrote:
>    
> > Alex Panchenko wrote:
> >     
> >> I am not sure what mailing list should be used for my question, so I 
> >> will post to all related ones.
> >>
> >> I am interested in the DBGP support of the spawnpoints. Does tcl 
> >> remote debugger support spawnpoints?
> >>
> >> At the moment Komodo IDE does not allow me even to setup spawnpoints 
> >> when remote debugger is attached.
> >> I can debug the same code with spawnpoint using Tcl Dev Kit Debugger, 
> >> but it looks like it uses proprietary protocol to communicate with 
> >> the launched process.
> >>       
> > Yes, the TDK Debugger uses a different Tcl-oriented protocol as it 
> > preceded dbgp and was designed just for Tcl.  The debugger backends 
> > between TDK and Komodo use the same debugging core for Tcl though. 
> > There handling of spawnpoints will vary as the protocol allows, but as 
> > it is the debugging core with the support, it should be "the same".
> >
> >     
> >> Back to the DBGP: I can send spawnpoint_set command (and verify the 
> >> result with spawnpoint_list), but when the process reaches the 
> >> specified line nothing happens. Should I use some undocumented 
> >> commands to make it work, is it a bug or a missing feature?
> >>
> >> My configuration is
> >> - Windows XP
> >> - Tcl 8.4
> >> - latest tcl remote debugger
> >>       
> > In my testing, one obvious variation that I noted was that TDK will 
> > report invalid spawnpoint lines (lines not recognized by the debugger 
> > as allowable spawn points).  In TDK, a dialog will show to indicate 
> > this, but I received no such feedback from Komodo.
> >
> > Currently only [exec], [spawn] and [thread::create] are recognized 
> > spawn point generators.  This is a hardcoded core list (unless you 
> > extend with .pdx files), and I noticed one quirk about this ... 
> > exp_spawn was not recognized, whereas spawn was.  This is something we 
> > need to correct.
> >
> > In any case, that may be what you hit.  You are using the correct dbgp 
> > commands though.  Can you describe in more detail the tests you are 
> > using?  Have you tried running dbgp_tcldebug with -log (activate 
> > logging) and -logfile myfile.txt (redirect log from stdout to file)? 
> > That should provide more detailed information.
> >
> > Regards,
> >
> > Jeff
> >     
>  _______________________________________________
>  TDK mailing list
>  TDK@[...].com
>  http://listserv.ActiveState.com/mailman/listinfo/tdk
>    

_______________________________________________
TDK mailing list
TDK@[...].com
http://listserv.ActiveState.com/mailman/listinfo/tdk
Thread:
Alex Panchenko
Jeff Hobbs
Alex Panchenko
Hemang Lavana
Andreas Kupries
Andreas Kupries
Hemang Lavana

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved