Skip to content. | Skip to navigation

Personal tools
You are here: GES DISC Home Additional Features Technology Lab S4PM 5.22.0 RELEASE NOTES


Release Date

June 26, 2007

Functional Changes

  1. Bug 1482 Fixed: Better Success/Failure Message From Stringmaker - A modification was made to make the exit status of Stringmaker more clear.

  2. Bug 1517 Fixed: XML Files Not Getting Deleted in Some Cases - A fix was made to try to take care of the problem where XML files are left behind after the data have been deleted.

  3. Bug 1909 Fixed: Error in AIRS Pentad Production Rule - The pentad production rule (specific to processing of AIRS data) had an error that occurred at the end of the month resulting in an incorrect interval being returned. This has been fixed.

  4. Bug 1965 Fixed: Bug in Smart Polling Functionality - A bug in Smart Polling caused the polling frequency to revert to the highest value (30 seconds by default) when the maximum polling interval was reached rather than going to the lowest frequency.

  5. Bug 2008 Fixed: Modify Thresholds GUI Doesn't Show Granules Available - The Modify Thresholds GUI, which is run in the Select Data station, allows the wait time and granule number threshold to be modified when the station is preselecting many granules. The GUI, however, didn't show how many granules were actually found for any particular job. This has been fixed.

  6. Bug 1003: Run S4PM Under Individual Not Group) Accounts - Added capability to terminate, suspend and resume jobs without by dropping a signal file instead of directly sending a kill signal. This is activated by setting $cfg_end_job_interval.

  7. Suspend and Resume Fixed - Fixed suspend and resume to send signals to the running processes, not the stationmaster child.


Detailed File Changes

  • Added nervous_system(), a fork/exec simulation of system() that keeps checking for a signal file to terminate the child job
  • Added end_job(), a way to generate the signal file for nervous_system() if the $cfg_end_job_interval is set. If not, it calls terminate_job() directly.
  • Refactored terminate_job and added alert_job() in order to support job control in a multi-user setting.
  • Deprecated suspend_job() and resume_job() in favor of suspend_job_child() and resume_job_child() so as to send the signal to the process doing the actual executing, not the stationmaster child.

  • Calls end_job() instead of terminate_job().

  • Terminate_job() calls end_job() instead of terminate_job().
  • The suspend_job() and resume_job() call alert_job() now, so that multi-user signal-file signaling can be invoked if appropriate

  • Fix for Bug 1909 for the pentad production rule problem in function update_info().
  • For for AIRS pentad production rule.

  • Fix for Bug 1517 where the XML file cannot be found based on the data file name. Code was added to try to find the XML file by opening up the UR file and extracting the UR string, pulling off the file name portion, and appending .xml to it.

  • Modified so that it finds data based on the end time rather than the mid time.
  • Added support for the PREV granule.

  • Fix for Bug 1965 in function get_polling(). There was an indexing error which caused the return value to be null when the maximum polling interval was reached.
  • Added checking for duplicate output groups in the @OUTPUTFILEGROUPS array in subroutine fill_in_optional_file_groups() where a duplicate means that it has the same UR as another. If found, the duplicates are removed.

  • Fix for Bug 2008 so that the number of granules currently available are passed to the Modify Thresholds GUI and displayed there.

  • Fix for AIRS pentad production rule in subroutine mk_work_order_header().

  • Fix for Bug 1482. Modified to print out clear success/failure messages.


  • Modified to set $cfg_stop_interval, $cfg_end_job_interval, and $cfg_deadline in the stations if $multiuser_mode is set.
    Also for $multiuser_mode, added PATH environment variable setting to the s4pm_start.ksh file.

  • Added invocation of nervous_system() instead of system() if $cfg_end_job_interval is set.
Document Actions
NASA Logo -
NASA Privacy Policy and Important Notices
Last updated: Dec 08, 2010 11:06 AM ET