Skip to main content
Jump to: navigation, search

Difference between revisions of "PTP/planning/2.0/TODO"

< PTP‎ | planning‎ | 2.0
Line 56: Line 56:
# [[Image:Tick.gif]] (RMR) Manual launch needs UI Dialog to tell user the port number and that she needs to launch manually
# [[Image:Tick.gif]] (RMR) Manual launch needs UI Dialog to tell user the port number and that she needs to launch manually
#* Log to "Error Log" instead of bringing up a UI Dialog
#* Log to "Error Log" instead of bringing up a UI Dialog
#* (RMR) Add Queues view
# (RMR) Add Queues view

Revision as of 15:09, 26 June 2007

Please mark off the items as you complete the, and if possible, provide a brief description of the solution.

  1. Tick.gif Fix model events.
    • The old model event system has been replaced by a completely new approach. Each element in the model generates three kinds of events: element events, child events and error events. Element events are generated when the model element changes in some way (e.g. an attribute change). Child events are generated when a child of the element changes (e.g. a new child is created, removed or changed). Error events are used to propagate an out-of-band message, such as when a job submission fails.
  2. Tick.gif Random node icons change to running in Machines View.
    • This problem was related trying to retain the old event model. This is fixed now that this has been replaced.
  3. Tick.gif Remove all terminated jobs doesn't remove processes from nodes in UI.
    • Implemented a removeAllTerminated() method on a resource manager, and make sure that the views responded to events correctly.
  4. Tick.gif What needs to happen for handleRuntimeShutdownStateEvent in AbstractRuntimeResourceManager?
    • This is now handled during RM shutdown.
  5. Tick.gif Dynamic launch page problems.
    • This problem was caused by changes to the order that UI elements are created in the launch configuration pages in Eclipse 3.3. This has now been updated.
  6. Tick.gif What to do about errors. e.g. if job submission fails?
    • The error event generated as a result of job submission failure is now handled. It currently results in a null return from submitJob().
  7. Tick.gif Asynchronous job submission and debug launch
    • The actual job submission is still synchronous, however everthing is asynchronous once the job has been queued. The synchronous portion consists requesting a job submission and the creation of the (queued) job. The submitJob() method will block (using an IProgressMonitor) until the job has been created, then returns the IPJob. This avoids the client having to know anything about how job submission actually occurs, or worrying about job submission ID's, etc. Note that submitted jobs will normally be returned in a queued state, not in a running state, so it is still necessary to listen for job change events to determine when the job is actually run.
  8. Tick.gif Two names showing up in machine properties.
    • Removed hard coded attributes
  9. Tick.gif NPE when removing terminated jobs
    • Not checking for null return.
  10. Tick.gif (RMR) Launch manually option does not work.
    • Now works but needs Dialog
  11. Tick.gif "Not Already Started" message
    • Stopping a stopped resource manager is now a no-op. Added confirm dialog when stopping a running RM.
  12. Tick.gif Unable to find resource manager factory
    • (what was the solution?)
  13. Tick.gif Fix stdout in process view
    • View was not registering itself as a listener on the process, so was not being notified of the process attribute changes.
  14. Tick.gif Cancel RM start if there is an error
    • Added state machine to deal with RM startup and shutdown. Errors on startup are now handled correctly.
  15. Tick.gif (RMR) ResourceManager view doesn't display until all RM's have started.
  16. Delay in starting RM
    • Need to quantify this problem once things have stabilized a bit
  17. Tick.gif Update UI views
    • The jobs view has been updated to display all the jobs known by all resource managers. It will automatically display the last job launched.
    • The machines view has been substantially rewritten. It now displays all machines known by all resources managers. By selecting a machine, the nodes associated with that machine will be displayed. The machine status (UP, DOWN, ALERT, UNKNOWN) is now displayed as an icon next to the machine name. The 'Node Info' panel has been renamed to 'Node Attributes' and now allows adjusting the column width. Processes displayed in the 'Process Info' panel use an abbreviated name that is a combination of the job name and the process name. This allows processes from different jobs to be identified. Both panels now use TableViewers for better flexibility
    • The PTP Runtime perspective has been reorganized to improve the layout.
  18. Unique model ID's using RM type + RM name
    • Not sure if this is still needed
  19. (RMR) Ability to edit a resource manager configuration
  20. (RMR) Preference to automatically hide the RM/queue dropdowns in the parallel tab if there is only one active RM and the RM only has one queue.
    • Randy to discuss this with Dave Wootton
  21. (GRW) Add new process icon to indicate stdout available
  22. Tick.gif (RMR) The progress view doesn't work properly with 2 or more RMs.
    • Looks like a bug
    • I can't find anything wrong with the code, but it is adding two "Starting Model Manager" progresses on PTP startup
  23. (GRW) Allow commands to be extended. e.g. The INIT command should be extensible to allow additional attributes to be supplied. This will require providing a hook (extension point?) into the RM package when commands are created.
  24. (GRW) Add a field to the proxy preference page that allows arguments to be supplied to the proxy on launch.
  25. (GRW) Provide a per-job console that will allow the user to supply standard input to the executing application. The console will be enabled using a launch configuration option (default will be no console). The console will redirect stdin/stdout to the proxy via a separate socket connection. It will be up to the proxy to ensure that the I/O is sent/received from the correct job, and also which processes receive stdin (if required, this can be supplied as a RM-specific launch attibute). This will be separate to the process view display of stdout.
  26. (GRW) Add a message view. This will display error messages that are sent from the proxy (regardless of other action taken as a result of the message). Messages will be categorized into the following levels: FATAL, ERROR, WARNING, and INFO. Colors will be used to distinguish the different level.
    • Stage 1 of this has been implemented. Error events have been replaced with general message events, each of which can be categorized using levels. In addition to the above levels, I've also added DEBUG.
  27. (GRW) Event throttling. This will be implemented in the proxy base class, and will provide automatic flow control to prevent event overload of the UI. Eclipse will queue events on arrival. If events of a particular type reach a high water make on the event queue, a STOP_EVENTS command will be sent to the proxy. The STOP_EVENTS command will only apply to the event type. Once the events have been processed, a START_EVENTS command will be sent.
  28. Tick.gif The #defines used by the C proxy code to match attribute ID's will be moved to a common header file for use by other proxy implementations.
    • These have been moved to org.eclipse.ptp.proxy/include/proxy_attr.h
  29. (CC) Implement the totalview startup mechanism in the PTP debugger.
  30. Tick.gif (RMR) Manual launch needs UI Dialog to tell user the port number and that she needs to launch manually
    • Log to "Error Log" instead of bringing up a UI Dialog
  31. (RMR) Add Queues view

Back to the top