June 29, 2006
Auto Request Configuration Fix - A bug in the configuration of the Auto Request station has been fixed. The bug resulted from the station thinking that it was interoperating with S4PA even though it was, in fact, interoperating with ECS (TT 17591).
New Required-If Production Rule - This new production rule supports a rule that says that if a condition is met, the data type is considered to be required. Otherwise, that data set is not needed. The condition is a test which is run on the trigger data file for a particular run. The test can also be run on the associated metadata file. If the test is successful, the data type is treated as a normal required data type. If the test fails, the rule is dropped all together. The tests can be commands or scripts that are run. As examples, two such scripts are included: s4pm_reqif_day.pl and s4pm_reqif_night.pl. These scripts test the metadata file and succeed only if the DayNightFlag therein is set to "Day" or "Both"; or "Night", respectively.
Fixes in Acquire Station - A number of fixes were made to the Acquire Data station, mostly in configuration, based upon real-world tests of S4PM with S4PA.
S4PM Monitor Disabled Station Filter - By default, the S4PM Monitor was modified to not show stations that are disabled ("grayed out"). To accomplish this, a new option, -F, was added to tkstat.pl and the Stringmaker derived configuration file was modified to set this option by default.
FAILPGE Export Bug Fix - FAILPGE jobs in the Export station were failing because the metadata for the FAILPGE data type contains no LocalGranuleId attribute. When Export tried to rename the file according to this attribute (the default behavior) and couldn't find it, the job failed. The fix was to make the FAILPGE data type a permanent exception to this rule (Trouble Ticket 17649).
Support for Interoperating with Both ECS and S4PA - Although experimental, this release should allow strings to work with both ECS and S4PA archives. Note that the Auto Request Tool now defaults to working only with the ECS archive. To work with S4PA, an extra argument needs to be passed: s4pm_tk_auto_request -o AUTO_ACQUIRE
Detailed File Changes
New script to support the required-if-day production rule. The script is also a template for generating other examples of the new required-if production rule. The script simply examines the DayNightFlag attribute in the metadata file. It exits 1 if the attribute is set to "Day" or "Both", 0 otherwise.
Modified the %cfg_commands setting for the Auto Request station where the archive system is ECS. Version 5.12.0 had added in the new -f option which points to the s4pm_tk_compose_request.cfg file. But this should only be done if the system is S4PA. The bug caused Auto Request to think it was talking to S4PA even when it wasn't.
Modified the %cfg_commands hash in Acquire Data for work orders named DAN.* rather than ACQUIRE_DATA. Also, added the $cfg_work_order_pattern setting it equal to 'DAN*.PDR.
Modified $cfg_work_order_pattern in the Receive PAN station to include 'DO.' prepended if the external archive system is S4PA. This might be temporary since S4PA will likely be modified to not include the 'DO.' prefix in a future release.
Modified configuration in Receive DN so that the station is disabled if the external archive system is S4PA.
Modified the building of the s4pm_start.ksh file so that tkstat.pl is run with the -F option that prevents disabled stations from being shown.
Added support for connectivity with both ECS and S4PA by allowing $external_archive_system to be set to "both" as well as "ecs" and "s4pa".
- Minor fix to the checking of the parameter $external_archive_system.
Added support for the required-if production rule.
Added pass_trigger_test() function to execute tests defined by the new 'test' attribute of the %inputs hash parameter when the 'need' is set to REQIF.
Also, did some minor clean up of the code in the area.
Added a new argument -o that dictates whether the data are to be retrieved from an ECS or a S4PA archive. If -o AUTO_REQUEST is set, the request will be routed through the Request Data station which works with ECS; if -o AUTO_REQUIRE is set, the request will be routed to the Acquire Data station which works with S4PA. The default is an AUTO_REQUEST routed to Request Data for ECS.