| 540.75 Fix Asgard and Infoconnect T27 paging |
| Fri, August 27 2010 |
|
The change applied by DNote 540.67 caused the Asgard and Infoconnect
T27 emulators to fail to detect terminal page dimensions and to display
a confusing error message. This problem has been corrected.
|
| 540.74 Correct accounting of DO loop times |
| Wed, August 25 2010 |
|
Previously, the CPU and elapsed times recorded for a standalone DO that
was terminated because of an OPAL processor loop would be incorrect
when seen in the SUPERVISOR log. This behaviour has been corrected.
The WS display has been changed to show the Advanced Scheduling key
information correctly.
Lastly, an issue with the specification of ACCESSCODEs with multiple
FOR modifiers used with AF commands has been corrected.
|
| 540.73 Show colon in AF ? |
| Wed, August 25 2010 |
|
In order to make it make it easier to distinguish between any
qualifiers and the action in an AF ? response a colon is now added
after any qualifier.
Ex.
1: BEGIN JOB TEST;DISPLAY "TEST"
2: FOR (PRIV0000) :TT DO ASMN_BASIC (PRIV0000)ASAPMIDNIGHT
3: ON 1ST DAY :TT DO ASMN_BASIC (SYSW0000) ABLOGIT_PTODB1
Using a colon in an AF command is optional but if used will now
ensure that the time specification is valid. Previously it was possible
for a bad entry in the time spec to be mistaken for an action.
Conditional Adds and Deletes using AFTER now check time qualifications
more rigorously.
|
| 540.72 Fix INVALID INDEX at 89019000 |
| Fri, August 13 2010 |
|
In some circumstances an AF+ or AF- command which did not find a
matching entry could cause an invalid index fault at 89019000.
This problem has been corrected.
|
| 540.71 Fix incorrect PINGAVGTIME values |
| Thu, August 12 2010 |
|
The attribute PINGAVGTIME will now return valid timings for all PING
requests that issue only one message. This change addresses a bug
that caused very large time values to be returned for some hostnames.
Also, if a PING was issued from a DO with a context of MSG then
SUPERVISOR did not forget the SCHEDULE space used to hold the MSG
parameter passed to the DO. This caused subsequent SUPERVISOR restarts
or SAVE SCHEDULE commands to show 'SCHEDULE UNMARKED AVAIL' warning
messages.
|
| 540.70 Fix SOURCE attribute fault |
| Wed, August 4 2010 |
|
Previously, the SOURCE attribute returned for very large OPAL DEFINEs
(greater than 180 lines) would be truncated and could subsequently
cause a STRING PROTECT fault at 95330000. This problem is now fixed.
|
| 540.69 Fix UNMARKED AVAIL areas after conversion |
| Tue, August 3 2010 |
|
The update to SCHEDULE version 19 described by DNote 540.68 could have
caused 'SCHEDULE UNMARKED AVAIL AT nnnnn THROUGH nnnnn' errors during
the next SAVE SCHEDULE command procedure. This issue has been fixed.
|
| 540.68 Conversion to SCHEDULE version 19 |
| Mon, August 2 2010 |
|
The version of the SCHEDULE file has been updated to 19; this change
allows for future enhancements to the management of AFTER activities.
|
| 540.67 Correct COMS window text handling |
| Mon, August 2 2010 |
|
SUPERVISOR will now correctly handle COMS transferred stations which
have Notify Text associated with the SUPERVISOR window. Previously,
the command could have been lost. Further, the handling of older
terminal emulators, as described by SUPERVISOR DNote 540.62, has been
much improved and no residual screen messages will now be seen.
|
| 540.66 Correct inconsistent FOR handling |
| Mon, August 2 2010 |
|
Previously, use of the FOR modifier for SUPERVISOR commands from MARC
did not always work correctly. In particular, non-privileged MARC
users, allowed access to SUPERVISOR commands via the TTINTERFACE
directive, would not be able to use FOR commands for their own
usercode giving the error 'ONLY ONE USERCODE ALLOWED'.
|
| 540.65 CrackICM |
| Fri, July 16 2010 |
|
Internal Change.
|
| 540.64 Do not force WFL remove or change through queue |
| Mon, July 12 2010 |
|
Previously, the REMOVE and CHANGE WFL functions, when called by the
Opal WFL statement, were always forced through the system queues to
enable better tracking of job messages otherwise WFL always returned a
job number of zero. This is because single REMOVE or CHANGE requests
do not generate a WFL job.
This behaviour has been changed: SUPERVISOR now does not force REMOVE
or CHANGE through a queue but will generate a pseudo EOJ to signal that
the action is complete. The WFL function result will always return the
job number of METALOGIC/SUPERVISOR and the task number of the calling
CONTROLCARD.
The pseudo station allocated to the METALIGIC/SUPERVISOR MCS is now
given the name 'SUPERVISOR' instead of "PSEUDOnnnnn".
|
| 540.63 Clean up slot environment and remove Zip diagnostic |
| Thu, July 8 2010 |
|
Previously, some memory components of a terminated WHEN slot
environment were not being deallocated correctly causing problems when
the slot was subsequently re-used. This issue has been corrected.
Some diagnostic code used to debug the ZIPFILE and UNZIPFILE functions
has been removed.
|
| 540.62 Correct Windows handling with older emulators |
| Thu, July 8 2010 |
|
SUPERVISOR's handling of older T27 emulators has been change to avoid
problems where the emulator is unable to respond to a request for the
terminal page layout (columns and rows numbers). This would cause the
station to return the text "008402" and then unresponsive. Although
the user still sees this text when using the window for the first time,
the station will thereafter perform normally.
|
| 540.61 Fix IK SHOW response handling |
| Tue, July 6 2010 |
|
Previously, on certain MCP 53.1 levels, responses to the IK SHOW
command would be truncated (typically limited to 2 screens) and would
show an additional heading line on each page. This behaviour is due to
MCP returning less lines than expected per page and is now detoured by
SUPERVISOR.
|
| 540.60 Implement MYSELF(PROGRESS) for Zip and Unzip |
| Tue, July 6 2010 |
|
The Metalogic compression routines initially implemented by MAGUS Dnote
540.05 are now formally documented in OPAL DNote 540.37. Please refer
to this change for more detailed information.
|
| 540.59 Add AFTER LOAD command |
| Fri, July 2 2010 |
|
The AFTER command has been extended to allow AFTER LOAD. Anything
scheduled at this 'pseudo time' will be done whenever the new day's
schedule is loaded.
|
| 540.58 Transmit |
| Tue, June 29 2010 |
|
The WFL function and the ON JOBMESSAGE context now allow an ODTS
to participate in Remote File I/O.
Example:
#JobNo:=WFL('BEGIN JOB;STATIONNAME=A;RUN OBJECT/REM',
'MYID(STATIONNAME=A,MYUSE=OUT)');
If the <id> part of the WFL function is followed by an open
parenthesis, then a comma separated list of attributes is
expected, followed by a closing parenthesis. These attributes
define how the ODTS will participate in Remote File I/O.
The attributes are,
STATIONNAME=<filename> (Required)
PAGE=<integer> (Optional,Default 24)
WIDTH=<integer> (Optional,Default 80)
MYUSE=IN|OUT|IO (Optional,Default OUT)
The STATIONNAME specified in the attribute list must match the
STATIONNAME attribute in the WFL Job ,for participation in Remote
File I/O.
If MYUSE is OUT, then a Pseudo Station with the specified
STATIONNAME is allocated.
The ON JOBMESSAGE context receives a WFLOPEN message when the
Remote File is opened, a WFLOUT message when the programs writes
to the Remote File, and a WFLCLOSE message when the Remote File
is closed.
The JOBTEXT attribute contains information about the Remote File,
or the data written, depending on the JOBMSGTYPE.
If MYUSE is IN or IO, then a Schedule Station is allocated,
and the STATIONNAME attribute in the Job is changed to be
a STATION attribute with the LSN of the Schedule Station.
When the Program Reads from the Remote File a WFLIN message is
received by the ODTS and the Program waits for Input.
Input can be sent to the Remote File using the OPAL Transmit
Function. This function requires an FRSN, which is available
from the FRSN attribute of the JOB Context Object.
The LSN and FRSN attributes have been added to the JOB Context,
and are valid for WFLOPEN, WFLOUT, WFLIN and WFLCLOSE messages.
|
| 540.57 Remote |
| Tue, June 29 2010 |
|
Browser Interface to Remote Files.
|
| 540.56 Allow ON HOLIDAYS in AFTER specification |
| Wed, June 23 2010 |
|
The syntax AF <time> ON HOLIDAYS may now be used to schedule activities
which should only be run on holidays.
This change also fixes a bug in the AFTER context where entries with
the verb attribute = QUALIFIED returned some attributes from the
previous entry.
|
| 540.55 Correct multi-page LOG handling |
| Mon, June 21 2010 |
|
The changes described by DNOte 540.54 caused multi-page LOG command
responses to be handled correctly, only showing the first page. This
problem has been corrected.
The LC CLOSE command now works correctly for the ASAP and SITE log
files.
Log entries returned by the METALOG context now respect lower-case text
and will deblank multi-line records.
|
| 540.54 Support MYSELF(TRANSNO) for MAIL usage |
| Tue, June 15 2010 |
|
This change supports several new attributes relevant for the MAILLIB
environment:
MYSELF(TRANSNO) is a system attribute returning the transaction number
of the last MAIL function call from this slot.
NICKLNAMELIST is a new SYSTEM ML attribute returning MAILLIB nickname
information as a delimited list of entities, terminated by a
semi-colon. Each entry has the nickname, mapped to a 'friendly name'
followed by an email address list e.g:
:STIRLING=Local Metalogic Mail:Test1@metalog.com,Test2@metalog.com;"
The TRANSNO attribute in the METALOG context returns the relevant
MAILLIB transaction number, if applicable, for the MAIL subcontext.
|
| 540.53 Another ASAP key fix |
| Mon, June 7 2010 |
|
Internal change.
|
| 540.52 Minimise excess LOGTEXT pbitting |
| Mon, June 7 2010 |
|
Previously, the generation of the LOGTEXT attribute by LOG-based EVALs
caused significant initial pbit overhead for the SUPERVISOR stack.
This overhead has now been eliminated allowing improved EVAL elapsed
and CPU times.
|
| 540.51 Allow ZIP/UNZIP requests own process |
| Mon, June 7 2010 |
|
All ZIP, UNZIP, ZIPFILE and UNZIPFILE requests will now be serviced by
a new SUPERVISOR process called ZIPHANDLER instead of using the GRINDER
task. This avoids GRINDER from being delayed by large ZIP requests.
|
| 540.50 Fix SHOW PERM for long permanent variables |
| Wed, June 2 2010 |
|
By using indirect variables is is possible to create permanent
variables with names longer than 17 characters. If any such
variables existed then a SHOW PERM would cause supervisor to fault
and restart. This problem has been corrected.
|
| 540.49 Surrender_CPED_Priority |
| Tue, June 1 2010 |
|
Grinder runs as a background process with normal PRIORITY.
|
| 540.48 Respect TERM ACCESS setting |
| Sat, May 29 2010 |
|
IF FOR <user1> FOR <USER 2> was entered and <User1> was the log on
user for the Supervisor window and <user1> has accesscode needed then
and ACCESS CODE required error was reported. The log on accesscode
will now be correctly used.
|
| 540.47 Meta_Zip STR |
| Fri, May 28 2010 |
|
Internal Change.
|
| 540.46 ExtraEntry vs Sort |
| Tue, May 25 2010 |
|
The ExtraEntry mechanism now works after a SORT.
|
| 540.45 Myself(Entries) Works In Sorts |
| Tue, May 25 2010 |
|
Myself(Entries) now works in Actions entered from a SORT.
|
| 540.44 Allow FOR <USER> in WFL FN with ASAP Key |
| Fri, May 21 2010 |
|
Recent changes to allow the new 'ASAP' mode in Supervisor did not allow
the use of the FOR modifier in a WFL function. This restriction has
been relaxed.
Although FOR <priv user> FOR <Non priv user> allowed the
<non priv user> to be entered with no password, accesscodes still
required passswords. This restriction has been relaxed.
|
| 540.43 Minor ASAP changes |
| Thu, May 20 2010 |
|
Internal change only.
|
| 540.42 Support MYSELF(CALLDEPTH) |
| Thu, May 20 2010 |
|
Support for the CALLDEPTH value of the MYSELF attribute.
|
| 540.41 Replace ASAP by LOG |
| Wed, May 19 2010 |
|
Internal change to support SUPERVISOR logging facilities to ASAP and
SITE log files.
|
| 540.40 Internal change only |
| Wed, May 19 2010 |
|
In is now possible to enter from a symbol file which is in a
container. In fact even from a container in a container.
Ex
ENTER FROM OPALS/TEST IN "OPALS.CON" IN "META.CON" ON MYFAM
ENTER REF OPALS/TEST IN "REF.CON"
ENTER ODTS BOB_TEST FROM OPALS/BOB IN "BOB.CON"
|
| 540.39 Support for ASAP |
| Mon, May 17 2010 |
Internal change only.
|
| 540.38 TEST |
| Tue, May 11 2010 |
|
The change described in SUPERVISOR DNote 540.35 did not allow
dictionary names that were reserved words such as FROM, AS, FP or
wild-card requests that started with such text e.g AS_=, FROM= etc.
This problem is now fixed.
|
| 540.37 ZIP fix |
| Tue, May 11 2010 |
|
Further changes to the ZIPFILE and UNZIPFILE functions. Documentation
as yet unavailable.
|
| 540.36 Support ZIP and UNZIP |
| Mon, May 3 2010 |
|
Preliminary support for ZIP and UNZIP functions, ZIPFILE and UNZIPFILE
methods in both SUPERVISOR and FLEX.
|
| 540.35 Allow wildcard with DO of DEFINE |
| Mon, May 3 2010 |
|
A parametrised DO of the DEFINE context has been changed in two ways to
allow faster and enhanced searches of the DEFINE dictionary.
1. The definition name passed to the DO may now be a wild-card,
allowing multiple DEFINE names to be processed in a single request.
2. An optional modifier of ODTS, SITU, DISP, MEMO, COMMAND or DEFINE
can be used as a filter for the dictionary search. The filter
prefixes the definition name.
Some examples:
DO (DEFINE:SHOW(NAME)) OPALNAME
DO (DEFINE:SHOW(NAME)) ODTS OPALNAME
DO (DEFINE:SHOW(NAME)) ODTS OP=
DO (DEFINE:SHOW(NAME)) SITU =
|
| 540.34 Fix SAVE APPEND for WHENs and AFTERs |
| Thu, April 29 2010 |
|
SAVE WHENS APPEND ... SAVE AFTERS ... AND SAVE DEF APPEND.... would
overwrite the specified file instead of appending to it. The more
commonly used SAVE DEF <pattern> APPEND.... worked correctly.
|
| 540.33 Allow Trusted as a modifier for ENTER |
| Wed, April 28 2010 |
|
A new variant of the ENTER command is available.
ENTER TRUSTED FROM ... will enter all commands from the specified
file but any WFL command in AFTERs will not be checked. This allows
the saved schedule from another system to be added even if some
families specified in After commands are not yet available.
|
| 540.32 Prevent automatic LOGREADER if TAPELIB reset |
| Wed, April 21 2010 |
|
SUPERVISOR will no longer always automatically run the LOGREADER
utility after a QUIT or restart. This used to occur unconditionally
even if the SO TAPELIB was reset or the TRIM key was absent/expired.
|
| 540.31 Protection for long LOG CONFIG records |
| Mon, April 19 2010 |
|
Previously, long LOG CONFIG records greater than 1500 words received by
a LOG-based WHEN could have caused SUPERVISOR to fault with a variety
of errors including PROCESSOR LOOP. EVAL-based LOG requests were not
affected by this problem which has now been fixed.
|
| 540.30 Fix LOG=N context problem |
| Thu, April 15 2010 |
|
The change described by DNote 540.26 had the inadvertent side-effect of
generic LOG-based WHENs or EVALs that used filtering by Major and Minor
Types to ignore that filtering. For example, a SITUATION defined as
LOG=27,6 would have received all LOG records instead of just Major Type
27,Minor Type 6.
It was also possible for certain LOG-based WHENs to stop receiving log
events once the associated ODTS executed any WAIT statement. This was
caused by SUPERVISOR failing to reinstate REPORT_LOG_ENTRIES
capabilities for the slot after the WAIT had been satisfied.
Further, any PD EVALs that passed a very long directory request (or a
corrupted request) would have caused SUPERVISOR to fault with a STRING
PROTECT at 72092850. This problem also caused the attempted EVAL to
appear in a WHEN ? response marked as 'Pending'.
All the above problems are now fixed.
Processor loop detection within the OPAL machine now provides extra
information for determining the causes of unusual loop detection and
generates both a programdump and timing information in the SUPERVISOR
log. As part of the change, SUPERVISOR logging of various errors and
displays generated out of the OPAL machine has been improved.
|
| 540.29 Less restrictive security for ExternalCommand |
| Tue, April 13 2010 |
|
The ExternalCommand interface to Supervisor requires the caller to
be running from a privileged or system user and for the codefile
calling ExternalCommand to be MPed PU or Taking.
The checks for codefile privilege were done in the ExternalCommand
procedure but the checks for User privilege were done by Supervisor
when processing the command. This had the unfortunate side effect
that if an ODTS had been started via external command using a FOR
prefix then any Supervisor commands issued by that ODTS would be
checked as if they had been entered from External command. If
the 'For Usercode' was neither System nor PU the command would be
rejected with a 'Not Allowed' message.
All security checking has now been moved into ExternalCommand.
If the calling task is not MPed PU or Tasking or if the calling
usercode is not PU or SYSTEMUSER then the task will be dsed with
no error message. If the Supervisor logging option is enabled then
an 'Err' entry will be made in the Supervisor log giving the mix number
of the task which attempted an unauthorised call on ExternalCommand with
the reason that it failed.
|
| 540.28 Fix SESSIONS context bounds error at 92403600 |
| Fri, April 9 2010 |
|
If a DO of an individual SESSIONS context request was invoked after an
earlier EVAL of a DEFINE context, then SUPERVISOR would give a STRING
PROTECT fault at 92403600. This problem is now fixed.
Additional protection has been provided to ensure that failures in the
contexts such as SL, SESSIONS and STATIONS are properly terminated and
that resulting SLOT dumps do not fault too.
|
| 540.27 Correct LOGICAL ASSERTION at 97062000 |
| Wed, April 7 2010 |
|
The change described in DNote 540.26 caused LOGICAL ASSERTION errors at
sequence 97062000 for various EVAL contexts such as PER and MX.
|
| 540.26 Correct SORT mask handling |
| Wed, April 7 2010 |
|
Previously, EVAL/SORT requests for the PD context would fail to sort
correctly if the attributes used to define the SORT were not used in
either the associated Situation or Odtsequence. This problem is now
fixed.
The ODTSCONTEXT attribute in the WHEN context now returns correct
values after being broken by the change applied by SUPERVISOR DNote
540.24.
|
| 540.25 SHIFT BEGIN session time/Minor fixes |
| Tue, April 6 2010 |
|
The SHIFT BEGIN command will now assign a default shift period of 8
hours if the command is not qualified by time. Previously, a SHIFT END
command would have been scheduled for the same time as the SHIFT BEGIN
and may have caused the shift to terminate immediately.
The SHOW GLOBALS command would have missed displaying a variable if it
was a real and its name sorted alphabetically first.
Previously, TT function calls executed by Opal code from another TT
were not logged in the SUPERVISOR log. This behaviour has been
changed: it should be note that TT functions can still only be nested
to one level.
|
| 540.24 Fix myself(inputparam) for non flex PD Dos |
| Fri, April 2 2010 |
|
The MYSELF(INPUTPARAM) or WHENID(INPUTPARAM) attributes now return
the correct parameter when used in a PD context where the command
is not passed to Flex.
HELP ATT :<Context> will now be treated as HElP ATT =:<context>
MYSELF and WHENID are now Synonyms.
When changing usercodes using the TERM USER command the most common
next action was to enter TERM USER - to prevent the new usercode
being used on all commands. This allowed the use of FOR <user> to
be used selectively. The default behaviour for TERM USER has now
been changed so that the new usercode is not active. To get the old
behaviour a TERM USER + is required after a TERM USER.
|
| 540.23 Tighter restrictions on changing USE ..ODTSECURITY |
| Fri, April 2 2010 |
|
If a system is running with the security option 'SECADMIN Authorized'
then Supervisor now requires a SECADMIN usercode to set the USER for
ODTSECURITY. As before to change or delete the USER for ODTSECURITY
the current user must be used.
Error messages associated with the USE command are now more
descriptive than the previous "Not Allowed".
|
| 540.22 LOGTEXT and PRODUCT in METALOG context |
| Mon, March 29 2010 |
|
The LOGTEXT and PRODUCT attributes in all variants of the METALOG
context now return correct values.
Use of the LC command will now cause only one entry to be written into
the SUPERVISOR log instead of two. The log record will include source
information:
11:55:56 Lgc:Via ODT(1):Logged from the ODT
The original case and spacing of any LC text is now preserved though LC
commands from an ODT are always upcased by the MCP unless quoted.
Also, all SUPERVISOR commands issued from the ODT will now be logged
without the 'TT' prefix into the log.
|
| 540.21 Relax SEND_ARY slot checks |
| Fri, March 26 2010 |
|
Occurrences of various 'SEND_ARY' messages seen during PD EVAL requests
and instances of hung PD slots, marked as 'WAIT (FLEX)', have been
corrected.
|
| 540.20 Fiix 'bounds error' in DO of MX ,Prints, or WHEN |
| Thu, March 25 2010 |
|
An unfortunate side effect of the changes in version 540.19 was that
A DO of an ODTS where a parameter was passed would fail for some
contexts. The contexts affected were MX,PRINTS and WHEN.
|
| 540.19 Fix random Whenid(Inputparameter) bug |
| Wed, March 24 2010 |
|
This change fixes a bug when using WHENID(INPUTPARAM) in a PD context.
|
| 540.18 Fixes for WHENID(INPUTPARAM) |
| Wed, March 24 2010 |
|
WHENID(INPUTPARAM) now works correctly in the PD and After contexts.
A 'bounds error' when entering a DO of an ODTS with context AFter has
been corrected;
|
| 540.17 Fix security violation with WFL("FOR * ... |
| Mon, March 15 2010 |
|
The use of FOR * in the WFL function would cause a security violation
to be logged. The WFL function would proceed correctly.
This problem has been corrected
|
| 540.16 Improve 'IN' container error handling for PD |
| Fri, March 12 2010 |
|
The handling and reporting of errors for 'IN' files searches has been
improved to provide more information about the failure. In particular,
failed Supervisor PD searches did not always get an error returned in a
timely manner.
An internal change has been made to prevent SUPERVISOR from overriding
any external program STACK assignment.
|
| 540.15 Fix TT NS handling from ODT |
| Thu, March 4 2010 |
|
The change documented in SUPERVISOR DNote 540.05 caused all TT commands
used from an ODT to be subsequently ignored if an earlier TT command
had generated a TT NS (because the output exceeded a page). This
problem has been fixed.
Also with this change, the MAILERROR attribute will now return correct
MAILLIB messages, causing the MAILLIB library to be invoked if needed.
Previously, if the library was inactive, the text 'Unknown message
error' would have been returned.
|
| 540.14 Protect TT calls from FLEX failures |
| Thu, March 4 2010 |
|
If a PD EVAL or DO request uses a ':' options modifier then FLEX
utility will always be invoked. If the PD request is then called from
a TT function and the ':' option is invalid, FLEX will return an error
and the TT call is terminated.
Unfortunately, two error messages were returned to the TT - these were
'<SITU> returned FALSE' and 'FLEX Option expected' - where only one was
expected. The second message caused SUPERVISOR to handle it as an
event notice and caused several possible subsequent failures. These
were either INVALID OPERATOR at 91619520 or SUPERVISOR could hang
indefinitely waiting for further message fragments for what it believed
an incomplete notice. The only resolution in the latter case was to
manually DS Supervisor.
The above problem has been resolved. SUPERVISOR will now return and
log errors such as 'FLEX Option expected' without queuing a second
message. The handling of incomplete notices has been improved to
timeout after 10 seconds if no further message fragments are received.
In such case, the following message will be displayed: 'Warning! Slot
#nn time-out waiting for last message chunk'.
|
| 540.13 Disable CALL DO flag after SUPERVISOR fault |
| Thu, March 4 2010 |
|
Previously, it was possible for SUPERVISOR to fault with an INVALID
INDEX at 93704000 under the following unusual circumstances.
1. SUPERVISOR had been DS-ed or fault terminated whilst executing a
TT function from within a CALL DO executed from a WHEN.
2. On SUPERVISOR restart, the WHEN too was restarted and the main
ODTSequence was then recompiled and reloaded whilst running.
This sequence of events caused Supervisors' internal ODTS caching
tables to become corrupted and attempted to execute new OPAL code from
the wrong location. This problem is now fixed.
|
| 540.12 Resolve empty TERM(EMAIL) and TERM(PRINTDEFAULT |
| Mon, March 1 2010 |
|
The TERM(EMAIL) and TERM(PRINTDEFAULTS) attributes now respectively
return an empty string when neither EMAIL or PRINTDEFAULTS are set for
the referenced usercode instead of a string of NULs.
|
| 540.11 Correct when status for MSG ODTS |
| Sun, February 28 2010 |
|
Version540.08 corrected the When status display for active system ODTS
nut not MSG ODTS. This change corrects that omission.
|
| 540.10 Fix USERFN function handling |
| Fri, February 26 2010 |
|
The change described by DNote 540.09 caused the Opal USERFN function to
fault in the GRINDER process leaving the calling slot waiting on 'WAIT
USERFN'. This fault has been corrected.
|
| 540.09 Move ENVIRONMENT memory data to global |
| Tue, February 23 2010 |
|
This changes moves heap data areas from the local slot environment to
globally within Supervisors' stack. Opal functions such as KEYIN and
DUMAP now run with improved performance especially where large data
content is returned. This change is also necessary to support the
forthcoming ZIP and UNZIP Opal functions.
|
| 540.08 Correct WHEN ? display if entered in a TT function |
| Wed, February 17 2010 |
|
The information returned by the WHEN ? command was invalid if entered
from an ODTSeqence using the Keyin or TT functions. The ODTS which
executed the command would be marked as "Waiting on time". It will
now be marked as Active.
|
| 540.07 Remove superfluous NOT DELETED msg for AF- |
| Tue, February 9 2010 |
Previously, when using the AF - command to delete scheduled activities
that were either WFL or operator commands, an extraneous message would
always be displayed:
AF - 1100 ON TUESDAY:PER PK
DELETED FROM 1 TODAY SLOT, 1 TUESDAY SLOT
NOT DELETED FROM 1 TODAY SLOT, 1 TUESDAY SLOT:ACTIVITY NOT FOUND
The above behaviour has been corrected.
|
| 540.06 Unconditional logging of all FOR errors |
| Thu, January 28 2010 |
|
Previously, any errors incurred by failed FOR commands were not being
logged in the Metalogic LOG file because they were regarded as
interrogatory. This behaviour has been corrected and all FOR modifier
usage is now logged regardless of the command.
|
| 540.05 Support new WHENID Mnemonic INPUTPARAM |
| Thu, January 21 2010 |
|
This change supports an extension to the OPAL WHENID attribute. A new
mnemonic INPUTPARAM has been added.
WHENID(INPUTPARAM) returns the text of any parameter passed to this
Slot.
EX. TT DO MIX_ODTS 1234,5678
WHENID (INPUTPARAM) would return '1234,5678'
TT EV PD_SITU DO PD_ODTS (*)=AX= IN "XYZ.CON"
WHENID(INPUTPARAM) would return '(*)=AX= IN "XYZ.CON"'
MYSELF(FIRST) Returns the value of the TERM FIRST setting
The ODT COMPILERTARGET command was rejected when entered from a
Supervisor window. It was treated as a Supervisor COM command. This
problem has been corrected.
The Opal statement SHOW did not properly honour the terminals
TERM FIRST setting. The last line of the first setting would be
cleared. i.e. If TERM FIRST was 2 line 2 would be cleared.
|
| 540.04 Fix MAIL LOG paging problem |
| Wed, December 23 2009 |
|
The MAIL LOG will no longer return a multi-page response if the 'LOG'
modifier was provided in lower case.
|
| 540.03 Fix lost PD entry timing window |
| Tue, December 15 2009 |
|
Previously, on busy systems, it was possible for a PD context DO to
skip the first file returned by the requested search. This behaviour
has been observed to occur particularly with file searches in wrapped
containers and caused by a timing issue between the FLEX utility and
the DO being ready to receive file information. This timing hole has
been closed.
Also, a diagnostic change has been applied to SUPERVISOR's WINDOWS task
to capture possible empty messages destined for a COMS SUPERVISOR
window. If such a message is captured, the display "WINDOWS discarded
empty type 14 message" will be seen and, on the first occurrence, a
programdump will be taken.
|
| 540.02 Fix AF- for ON DATE entries |
| Tue, December 15 2009 |
|
This change fixes a bug seen when using AF - with the ON DATE
modifier. If there were two or more entries which were identical
apart from the date then the first ON DATE entry would be deleted
no matter what date was specified.
|
| 540.01 Fix selective HO of MCP 13.0 |
| Tue, December 1 2009 |
|
Previously, on 54.1 Field Test MCP, a HO command request for a specific
file would be unable to return the list of mixnumbers currently using
that file. Instead, SUPERVISOR would return the error 'In use by MCP
or unknown program'. This problem is now resolved and file user
information will be correctly returned.
|
| 531.71 Fix NSL request fault messaging |
| Mon, November 23 2009 |
|
SUPERVISOR will now provide the correct diagnostic messages when a NAP
Statistics Library problem is encountered: previously, an unhelpful
UNKNON(32768) message would have been shown instead of the real reason.
The undocumented NSL error 0 will now cause the calling script to be
terminated and a library delink forced between the Metalogic
NAPINTERFACE library and NSL.
|
| 531.70 Force QUIT after SUPERVISOR library THAW |
| Wed, October 7 2009 |
|
Previously, if a <mixno>THAW was applied to SUPERVISOR, any attempt to
then use any of its library entrypoints, such as those used by FLEX for
PD requests, would fail. Because it is not possible for SUPERVISOR to
re-FREEZE itself in its current incarnation, , SUPERVISOR will now
automatically forcibly restart itself displaying the message:
SUPERVISOR RESTARTING DUE TO LIBRARY THAW
It is recommended that THAW commands are never passed to SUPERVISOR.
|
| 531.69 Allow local LOG command override |
| Wed, October 7 2009 |
|
A new MAGUS configuration variable called SYS_LOGALL has been
implemented to support a customer enhancement. This variable,
supported by INSTALL's SYSTEM CONFIG menu, expects a usercode list
(separated by commas) that is checked each time a LOG command is used
from a logged-on remote station, typically a SUPERVISOR window.
If the logged-on usercode is in the list, SUPERVISOR appends '+' to all
LOG commands (unless '+' is already present) so that each command can
return more than one page of information. Any changes to the usercode
list assigned to SYS_LOGALL will require a SUPERVISOR restart. This
feature applies for all LOG commands for SUPERVISOR, TRIM and MAILLIB.
|
| 531.68 Ensure 'NOT DELETED' messages are always generated |
| Wed, October 7 2009 |
|
The change to the generation of NOT DELETED messages when deleting
activities with the AF- command, as described in DNote 531.67, did not
handle all situations. In particular, deleting an activity for a time
that had no other activities scheduled would have not included all
those inactive days in the 'NOT DELETED' counts.
|
| 531.67 Better 'not deleted' messages |
| Tue, September 22 2009 |
|
The format of messages returned when attempting to delete items from
the schedule when the item does not exist on all of the days specified
has been improved.
Ex.
If TT DO TEST is only scheduled on Mondays at 1700 then
AF - 1700 DAILY:TT DO TEST
will return a better message.
|
| 531.66 Fix on nTH WORKDAY for n>5 |
| Fri, September 18 2009 |
|
Version 530.30 of Supervisor stopped the AF syntax ON nTH DAY or
ON nTH WORKDAY from working if n was greater than 5. This problem has
been corrected.
|
| 531.65 Shorthand TERM TRUNCATE |
| Wed, September 2 2009 |
A quick way of changing TERM TRUNCATE settings for a SUPERVISOR COMS
window or remotespo is now available. It is now possible to use 'TERM
-' to perform 'TERM TRUNCATE FALSE' or 'TERM +' instead of 'TERM
TRUNCATE TRUE'. It is still possible to provided additional TERM
modifiers after the '-' or '+'.
Also, SUPERVISOR will no longer use its local unit tables to try and
retrieve unit information for a tape that was created from a foreign
SUMLOG. This could have caused an incorrect owner to be assigned or
various run-time problems for SUPERVISOR.
|
| 531.64 Remove SUP_USEDUMP warning |
| Mon, August 31 2009 |
|
SUPERVISOR will no longer display confusing configuration warning
messages during its initialisation phase if the USE FAMILY .. FOR DUMP
did not have a current setting. An unnecessary display message when
LOGREADER is run with a specific SUMLOG has been removed.
|
| 531.63 Fix LOGICAL ASSERTION for OPAL function statement |
| Sun, August 9 2009 |
|
The change described by DNote 531.60 caused OPAL functions such as
PING, WFL and TT, when used as standalone statements, to generate the
error message 'LOGICAL ASSERTION UNTRUE AT SEQUENCE 94231000' and a
slot dump. This problem has been fixed.
|
| 531.62 Implement USE FAMILY for TASKFILE |
| Sun, August 9 2009 |
|
A new USE FAMILY variant has been implemented to allow sites to change
the location of SUPERVISOR's taskfiles (used for programdumps, debug
tracing and ENTER listings) to a family other than DL BACKUP. This
provides a mechanism for preserving Supervisor fault information which
otherwise might have been missed and removed from normal housekeeping
of the DL BACKUP family.
---- USE ---- FAMILY ---+-- <FamilyName> --+-- FOR --- DUMPs -----|
+---- - ----+
The setting is not applied immediately and a SUPERVISOR restart is
required. Any pending status can be seen in the usual USE screen
response. The '-' modifer can be used to cancel the current DUMPS
setting (restart required) or a current pending assignment.
Although the location of the taskfile has been changed, there are no
other effects on print request generation.
|
| 531.61 Stricter usage of EXTERNALCOMMAND |
| Sun, August 9 2009 |
|
The EXTERNALCOMMAND library entrypoint is available for external
programs to send commands to SUPERVISOR and wait for responses,
including SHOW output from DO commands. This change enforces stricter
controls on its usage.
SUPERVISOR now requires that not only must the invoking usercode be
marked PU in the USERDATAFILE but also the codefile must be marked MP
+ PU or MP + TASKING. Any other caller will be DS-ed.
|
| 531.60 Allow TT function to inherit logon usercode |
| Thu, August 6 2009 |
|
The TT function will now correctly inherit the 'LOG-ON' USERCODE.
Therefore if a supervisor window is logged on as BOB then and ODTS
started from that window could use TT("FOR BOB .....). i.e. with no
password supplied.
This change also detours an MCP bug which stopped some IK IPSHOW METER
commands from working from Supervisor Windows.
|
| 531.59 Detect PING authorisation failure by TCPIP |
| Tue, July 28 2009 |
|
Previously, the PING function was not tracked correctly if it failed
because of a TCPIP negative message response because of a semantic or
syntax error. Because these responses were not detected, the slot
executing the PING would then hang indefinitely. These failures are
now detected correctly.
SUPERVISOR now requests its GRINDER process to handle the DCKEYIN of
the NW TCPIP PING instead of being executed on the main stack. This
was problematic because Supervisor's own usercode was associated with
the PING request and could have failed NW AUTHORISE restrictions that
caused a SEMANTIC ERROR: SECURITY VIOLATION. Issuing the NW TCPIP
PING via GRINDER means that no usercode will be associated with the
command (unless the PING function is executed from a slot which has a
FOR usercode).
Two new PINGRESULT categories have been added to reflect the above
changes: these are PINGSECURITYERROR and PINGCOMMANDERROR. The former
is the special SEMANTIC ERROR/SECURITY VIOLATION case. The PINGTEXT
attribute has been modified to incorporate these two error conditions
and will show if PINGCOMMANDERROR is a semantic or syntactic error.
|
| 531.58 Enable Unsafe Define attribute for Commands |
| Thu, July 16 2009 |
|
The Define context attribute Unsafe did not return correct values for
Command programs. This has been corrected.
TT EV META_FIXCOM DO META_FIXCOM
will recompile all Commands marked as unsafe.
Where META_FIXCOM is define as
TT DEFINE + SITUATION META_FIXCOM(DEFINE):
TYPE=COMMAND AND UNSAFE
\
TT DEFINE + ODTSEQUENCE META_FIXCOM(DEFINE):
IF NOT EXTRAENTRY THEN
ODT("TT SAVE COM ",NAME," APPEND OPALS/UNSAFE/COMMANDS")
ELSE
ODT("TT ENTER FROM OPALS/UNSAFE/COMMANDS")
|
| 531.57 Better handling of 'Open' Input from Supervisor |
| Thu, July 16 2009 |
|
If a Supervisor window was defined in Utility to have
'Notify Open Text' then the text sent on Open was sometimes discarded.
This would happen depending on the speed of the system and how busy
it was. This timing problem has been resolved.
If an ODTS is waiting for input (i.e. using the INPUT function) and
the user enters ?END then the Supervisor window will now be closed in
addition to the ODTS being terminated.
|
| 531.56 All commands marked as unsafe |
| Thu, July 16 2009 |
|
Any Supervisor command Opal with a context other than System was
incorrectly flagged as unsafe. This problem has been corrected but
any 'unsafe' commands will need to be recompiled to remove the flag.
|
| 531.55 Allow PER DEFINES at TRIM-only sites |
| Tue, July 14 2009 |
|
At TRIM-only sites, the capability to DEFINE PER scripts had been
inadvertently disabled. This feature has been reinstated.
|
| 531.54 Try to limit WAITANDGO fault handling |
| Fri, July 10 2009 |
|
Previously, certain very rare SUPERVISOR faults could have caused
multiple continuous 'PROGRAMDUMP #N .. NOT TAKEN' messages to be
generated requiring SUPERVISOR, in one case, to be manually DS-ed.
Now, if SUPERVISOR is able to trace such faults to an active WHEN slot
then the slot will be immediately terminated stopping the flood of
programdump messages.
|
| 531.53 LOG command error when SO 47 is off and #[LFA] |
| Fri, July 10 2009 |
|
Previously, the LOG command would be interpreted as the ODT LOG
command, causing SYSTEM/LOGANALYZER to be run, when SO 47 (Logging) was
reset. This behaviour has been changed; SUPERVISOR will now display
the message "LOGGING (SO 47) is currently disabled" in the above
circumstances. Note that SUPERVISOR allows LOGANALYZER to be executed
from any remote station using the SYSLOG command.
Also, the special lookup string '#[LFA]' will now be translated to the
hex string 48"0A" (Ascii LF) in Opal string expressions.
|
| 531.52 Fixes a bug when window user > 5 characters |
| Thu, July 9 2009 |
|
Version 520.93 introduced a change which allowed the use of
a prefix of FOR <user> without a password, if the <user> matched the
logged on usercode or if the logged on usercode is the ODT Security
usercode.
Unfortunately this only worked for usercodes of 5 characters or less.
This problem has been corrected.
|
| 531.51 Use term access when required |
| Fri, July 3 2009 |
|
This change relates to commands entered from a Supervisor window with
both a user code and access code specified.
If the command entered would invoke the WFL compiler and was not
BEGIN JOB or START (ex COPY,ADD,ARCHIVE) then the resultant job would
not inherit the access code and if ACCESSCODENEEDED was set for the
user the job would fail syntax. This problem has been corrected.
If the Logon user was not active (TERM USER -) and the short cut
prefix FOR <user> was used, where <user> is the log on user, the
accesscode was not passed to any command. This caused similar problems
as described above. This problem has been corrected.
When the log on user is active (Term User +) some system commands
behave differently. Ex PD will only show files for the log on user.
This can be overridden by prefixing the command with FOR *.
Ex FOR * PD BD/=
|
| 531.50 Support for new Volume attributes |
| Wed, June 17 2009 |
|
Supports new attributes VSVER,VSORIGINALREFS and ORIGINALREFS.
|
| 531.49 Fix STRING PROTECT@ 80018000 handling INLINE |
| Wed, June 10 2009 |
|
SUPERVISOR could have faulted with a STRING PROTECT at 80018000 when
attempting to remove spaces from an in-line OPAL command causing the
script to fail. This problem, which depended on the length of the
command entry and previous usage in the requested WHEN slot, is now
fixed.
|
| 531.48 Minor logging fixes and enhancements |
| Wed, June 10 2009 |
|
The LC command will now be correctly logged in SUPERVISOR's log file
with the correct category ('Lgc') instead of 'Odt'.
Regarding SLOT command responses or dumps, in-line OPALs will now show
the size of the code currently used by the slot. Also, string
variables dumped by a non-printing SLOT command will now only show the
first 500 characters of each string.
After termination of all EVAL or WHEN scripts, the number of SITU and
ODTS entries will be written into the SUPERVISOR log. For example:
|
| 531.47 Trap illegal Opal INTEGER calls |
| Wed, June 10 2009 |
|
OPAL scripts that attempt to use integer functions with numbers greater
than 2**38-1 would fail with an INTEGER OVERFLOW fault. The OPAL
machine will now give the fatal error:
"Value greater than 2**39-1 passed to INTEGER function"
|
| 531.46 Fix PING function |
| Wed, May 13 2009 |
|
The change applied by SUPERVISOR Dnote 531.18 caused the Opal PING
function to stop working causing the executing slot to be marked as
'WAIT PING' even though the PING had completed. This problem has been
fixed.
|
| 531.45 Add new WHEN context attributes |
| Mon, May 4 2009 |
|
Two new attributes, SLOTMEMORY and VARIABLES, have been added to the
WHEN context. These return, respectively, the amount of memory used by
the slot for heap variable data, its internal data structures plus code
size and the number of OPAL variables used.
In addition, SUPERVISOR will now record the SLOTMEMORY used into its
log file when the slot has completed (if SO LOGGING is set). A typical
log entry might be:
14:12:07 Whn:SLOT#9[64627] CP=0.09,IO=0.01,ET=55:32.80,MEM=20.5 Kb
14:12:07 Whn:OBI_HTTP+OBI_HTTP[64627] COMPLETED
SUPERVISOR will now unconditionally log the above information for any
terminated WHEN; previously, this was not done.
|
| 531.44 support for PD reference attribute |
| Mon, May 4 2009 |
|
OPAL now supports several ways to get attribute information for a
specific file (using the PD context) from any contexts. The mechanisms
are described below:
Firstly, the VIA function has been extended to allow attributes that
are defined as 'LINK to PD' or 'LINK to USER' in other semantics to be
used as references to the PD and USER contexts respectively.
HELP ATTR CODEFILETITLE
---- HELP ATTRIBUTES ----
CODEFILETITLE (SL) Returns STRING Link to PD in the form of File title
Semantics : Returns the active codefile name for this SL.
For example, the CODETITLE attribute in the MX context returns the
title of the codefile used by this process. Because this attribute is
linked to the PD context, it is possible to easily return information
about the file:
DEFINE + ODTSEQUENCE MXPD(MX):
#SEG:= VIA(CODETITLE:SEGMENTS)
The SEGMENTS attribute is a member of the PD context and, if the
codefile is resident, VIA allows the file size to be retrieved.
Multiple attributes can be returned by using the #(..) function with
VIA; in this example, the USERCODE attribute in the LOGBOJ context
allows Userdata information about the job usercode to be retrieved:
DEFINE + ODTSEQUENCE BOJUSER(LOGBOJ):
$UINFO:=VIA(USERCODE:#(FAMILY,,MAXPW,,MINPW))
To return the file size of the CM-ed MCP codefile:
DO (SHOW("MCP FILE SIZE: ",VIA(WM:SEGMENTS)))
Since there is only a small subset of LINK or reference attributes, a
list of eligible attributes for SUPERVISOR can be viewed using the a
HELP variant which uses the keyword REF instead of ATTR:
HELP REF =:MX
HELP REF CODE=
The other two methods may be used from any context and do not use LINK
attributes.
A new string variable method called PD has been implemented. Similar
to the MX, PER, TAPEDB methods, a string expression can be used instead
of a reference attribute and means that its usage is unrestricted. For
example:
DEFINE + ODTSEQUENCE PDTEST:
$FILE:= "*SYSTEM/FILEDATA ON DISK";
SHOW("INFO = ",$FILE.PD(#(RELEASEID,,CREATIONDATE)))
Alternatively, the PDKEY attribute, used with VIA, similarly allows a
file title to be specified by a string expression. This has been
provided to be compatible with the current VIA implementation but the
PD method is preferred. The above example is shown below using PDKEY:
DEFINE + ODTSEQUENCE PDTEST:
$FILE:= "*SYSTEM/FILEDATA ON DISK";
SHOW("INFO = ",VIA(PDKEY($FILE):#(RELEASEID,,CREATIONDATE)))
Reference attributes that LINK to the VL context now work correctly.
|
| 531.43 Add Help for REC VER and REC WHO |
| Fri, April 17 2009 |
|
This change updates the help for the REC command to include details
for the VER and WHO modifiers.
|
| 531.42 Restrict TT call nesting |
| Thu, April 16 2009 |
|
Previously, use of an Opal TT function from within another TT function,
either directly or indirectly, had unpredictable results and caused any
referenced heap data to be unreliable. SUPERVISOR will now correctly
handle such calls but only to allow a nesting of one additional TT
call.
Any attempts to use more than 1 nested TT call will cause the calling
slot to fail with the error "Only one nested TT call allowed". Also,
any DO commands executed from a nested TT function call will not be
logged in the SUPERVISOR log or the SUMLOG, regardless of the setting
of LOGMINIMAL and MONITORING, to aid performance.
Lastly, if a stand-alone DO of a PD Opal was attempted for for a
non-existent file or directory, the failed DO slot would be marked as
in-use and not reusable until the next SUPERVISOR restart. This
problem has been fixed.
|
| 531.41 Allow year in Holiday ? |
| Wed, April 15 2009 |
|
The Holiday ? and Workdays ? commands have been extended to accept an
optional year parameter. If a year is specified, only holidays in that
year are reported and a total of the holidays for that year is shown.
This is intended to make it easier to confirm that all of the holidays
for the year supplied have been specified.
Ex.
HOLIDAYS ? 2009
JANUARY 1
JANUARY 2
APRIL 10, 2009
APRIL 13, 2009
MAY 4, 2009
DECEMBER 25
DECEMBER 26
Total Holidays :7
WORKDAYS ? 09
MARCH 21, 2009
APRIL 12, 2009
Total Workdays :2
|
| 531.40 Implement STATIONS context |
| Wed, April 8 2009 |
|
This change supports a new SUPERVISOR context called STATIONS. The
STATIONS context allows access to all active and inactive MCP datacom
station information similar to that returned by the SYSTEM/DCSTATUS
utility. These MCP datacom tables include both pseudo and physical
stations and, where a station is in-use by a MCS, additional session
information is provided.
STATIONS context scripts may only be used with the EVAL or DO commands.
Information returned to the script includes detailed information about
physical stations (as declared in the NIF) and MCP pseudo stations used
to provide sessions for all MCS activity such as CANDE and COMS.
The STATIONS context accepts two subcontexts called NIF and PSEUDO
allowing an EVAL to search either datacom station subset. In reality,
the PSEUDO subcontext is of more interest since these stations are
generally used by COMS and CANDE sessions. By default, if no
subcontext is present, EVAL will return all station information.
Examples:
EVAL(STATIONS=PSEUDO:TRUE) DO (SHOW(LSN 5,,STATIONNAME 40,,MCSNAME))
EVAL(STATIONS:VALID(CURRENTWINDOW)) DO (SHOW(LSN,,CURRENTWINDOW))
DO (STATION:SHOW(LSN,,LASTLOGONDAY)) 16384
Note that the MCP allocates pseudo stations in two different LSN
ranges; the first range appears immediately after NIF-declared physical
stations and is used by DATACOMSUPPORT for its own station allocation.
The second range is an expanded pool of pseudostations, allocated in
blocks of 100 stations and starting at LSN 16384, which is controlled
by the MCP.
The EXTERNALSTATUS attribute, if valid, provides additional information
provided by Protocol Specific Handlers (PSH), such as CCF and TELNET,
and will show connection details, IP address etc.
If the station is active with COMS, additional information such as
current COMS window and MCS name plus usercode, accesscode and
chargecode if present. Please see HELP ATTR =:STATIONS for a complete
list of available attributes.
|
| 531.39 Do not run FLEX with MCS session |
| Wed, April 1 2009 |
OBJECT/FLEX runs, invoked by :FLAT requests from PD scripts, will now
not use a MCS session created by SUPERVISOR.
SUPERVISOR will now write additional information into its own log file
for any in-line OPAL that has been compiled from a TT function and has
failed syntax. This change, in association with that described by
MAGUS DNote 530.22, allows better diagnostics for in-line compiles that
unexpectedly syntax.
Further, resource utilisation figures are now available in the
SUPERVISOR log file at completion time for all WHENs, DOs or EVALs.
For example:
12:09:49 Whn:SLOT#5 [49283] CPU=0.01,IO=0.00,ET=1:39.02
12:09:49 Whn:DO INLINE_5[49283] COMPLETED
12:08:10 Whn:DO INLINE_5[49283] RUNNING (SLOT 5)
|
| 531.38 Implement SESSIONS context |
| Mon, March 30 2009 |
|
This change supports another new SUPERVISOR context called SESSIONS.
The SESSIONS context allows access to information about all MCP job and
MCS sessions currently active in the system. This feature is made
possible due to the new SESSIONS ODT command now available in MCP 53.1
and later versions of 52.1.
SESSIONS context scripts may only be used with the EVAL or DO commands.
Information about the session include LSN, MCS number and name, Station
name and log-on time.
Examples:
EVAL (SESSIONS:TRUE) DO (SHOW(SESSION 5,,STATIONNAME 40,,MCSNO))
DO (SESSIONS:SHOW(SESSION,,LSN)) 240,255,256
The latter would show session information for sessions 240,255 and 256
assuming that they are valid.
IN addition, SUPERVISOR now shows meaningful station names for all of
its own MCS sessions. Any WHEN, EVAL or DO slot that is active will
include slot information e.g. SUPERVISOR/SLOT_3/WHEN would indicate a
WHEN run in slot 3. Previously, all SUPERVISOR session station names
were indistinguishable with the name SUPERVISOR/SESSION.
A problem where some SUPERVISOR sessions, used to run the OBJECT/FLEX
utility for PD context scripts, were not being released after FLEX has
terminated has been resolved.
A complete list of SESSIONS attributes may be viewed by using the HELP
ATTR =:SESSIONS command.
|
| 531.37 Minor Fixes |
| Fri, March 20 2009 |
|
A bug introduced in version 510.66 meant that only the last holiday
specified in a list to the HOLIDAY command was entered. The correct
behaviour has been restored.
The commands DISP and HOLIDAY were not recognised as Supervisor
commands from a Supervisor window and therefore required a TT prefix.
This has been corrected.
Note that this correction means that where DISPLAY "TEST" could
be entered from a Supervisor window to generate a test message, it now
must be entered as ODT DISPLAY "TEST".
|
| 531.36 Add STATS variant to COMS function |
| Fri, March 20 2009 |
A new modifier has been added to the COMS function STATS will return
statistical information for WINDOWS and PROGRAMS. For Direct Windows
and REMOTE FILE Windows the information returned is for the
associated Program. For MCS windows the information is for the Window.
Cumulative information is maintained for subsequent calls from the
same slot. COMS("STATS") return basic data, COMS("STATS FULL") more
complete data. The data are returned in a comma separated list for each
Program/Window with the Program/Window name as the First item. Each
list is separated by a new line.
The items returned are as follows with an X indicating if the value is
returned for STATS or STATS FULL.
Field "STATS" "STATS FULL"
Name X X
Type X
Trans X X
TotTrans X
QDepth X X
LastResp X
RespTime X X
TotResp X
The Fields above return the following:
Name Program name for Direct or Remote windows, Window name for MCS windows.
Type DIRECT,MCS or REMOTE
Trans Number of transactions since last call in this slot, blank if first call
TotTrans Number of transactions since Coms started.
Qdepth Blank for non Direct windows. QDepth at time of call
LastResp Blank for non Direct windows. Last response time in milli seconds. Blank if no transaction in this period.
RespTime Blank for non Direct windows. Total response time in milli seconds since the last call in this slot. Blank if first
call.
TotResp Blank for non Direct windows. Total response time in milli seconds since Coms started.
We are working on example ODTseqences to collect Coms stats in a .CSV
file which could be opened by EXCELL. If you are interested in
monitoring COMS in this way please contact METALOGIC for an example.
|
| 531.35 Fix INVALID SESSION NUMBER with RESTRICT |
| Fri, March 20 2009 |
|
On later releases of MCP 52.1 and 53.1 ICs, the Metalogic RESTRICT
command mechanism caused all operator commands issued from SUPERVISOR
sources associated with the ODTSECURITY usercode to fail with the
error 'INVALID SESSION NUMBER NNNN'(where NNNNN is SUPERVISOR's mix
number).
These sources include:
- SUPERVISOR window with a TERM USER logged-in to the ODTSECURITY user
- Any commands issued from an active WHEN or DO running with a FOR
modifier set to the ODTSECURITY usercode
This problem is now fixed. Note that only SUPERVISOR installations
with a valid ODTCONTROL key may use the RESTRICT implementation.
|
| 531.34 More informative messages for TT('DO..' calls) |
| Mon, March 16 2009 |
|
The string result values returned by DO calls that now fail or return
missed results, when invoked by the TT function, will now return more
informative messages and new TTLASTERROR values. This is true where a
list of entities is passed to the DO and one or more of the calls fails
e.g. invalid mix number or unit number.
'All Do parameters invalid' TTLASTERROR -> TTDONONEFOUND
'Warning: 2 DO parameter(s) invalid' TTLASTERROR -> TTDOWARNING
In the event that a standalone DO called from a TT is successful, the
TT result will now be an empty string.
|
| 531.33 Implement SHOWOPEN context |
| Mon, March 16 2009 |
|
This changes supports a new SUPERVISOR context called SHOWOPEN. The
SHOWOPEN context allow the retrieval of information about all open,
in-use files on a specified disk family and includes both temporary and
permanent files. If the family is the DL JOBS family, then Job File
header information will additionally be returned.
SHOWOPEN context scripts may only be used by the EVAL command; there is
no support for the DO or WHEN commands. Any EVAL command can be passed
a valid disk family name, with optional familyindex, after the full
EVAL command. The familyindex should be preceded by the '#' character
e.g. DISK #3
Some EVAL examples are shown below:
EVAL (SHOWOPEN:TRUE) DO (SHOW(TITLE 50,,SECTORS)) [20] CDIMAGE
EVAL (SHOPWOPEN:TEMPORARY) DO SHOW_TEMP DISK #3
If no family name is provided then SUPERVISOR assumes the systems file
family that it uses (as assigned by USE FAMILY..FOR SYSTEM).
If the DL JOBS family is selected then SHOWOPEN will information about
any Job Files that are active. Typically, in the MCP SHOWOPEN
response, these appear as 'Job File for NNNNN' entries; for these
entries, SUPERVISOR sets the JOBFILE attribute to TRUE and assigns the
job number to the JOBNUMBER attribute. This can then be used to return
additional information about the job file owner:
EVAL(SHOWOPEN:JOBFILE) DISP (#J:=JOBNUMBER 5,,#J.MX(NAME)) DEV #1
|
| 531.32 Fix SLOT response in TT |
| Thu, March 5 2009 |
|
Previously, if the SLOT command was invoked from a TT function call,
the response constructed by SUPERVISOR was not correctly returned to
the caller, usually returning an earlier TT or KEYIN response. This
behaviour occurred because the SLOT command was executed much later by
the individual slot causing the caller to miss the response.
A formatting issue with SLOT responses generated by TT functions has
been fixed;some minor enhancements have been made to the printed
reports generated by a DUMP or PRINT SLOT command.
|
| 531.31 Don't assign default chargecodes to SUPERVISOR |
| Thu, March 5 2009 |
|
The deimplementation of default SUPERVISOR-assigned CHARGECODEs, first
described by DNote 520.16, was intended to remove any CHARGECODEs from
internal SUPERVISOR processes such as SAVE SCHEDULE etc. if no default
USE CHARGE setting applied. This was unfortunately not the case and
this behaviour has been corrected; SUPERVISOR processes will now run
without a CHARGECODE if USE CHARGE is not set.
The USE command will now show 'Not assigned' if no default CHARGE has
been applied.
The ASSIGNCHARGE subprogram is now not automatically bound into the
METALOGIC/SUPERVISOR codefile. In the unlikely event that a site may
wish to use its own scheme for SUPERVISOR billing, then this can still
be performed by compiling a tailored version of the
SUPERVISOR/ASSIGNCHARGE source and rebinding SUPERVISOR with the
supplied SUPERVISOR/BIND job file.
|
| 531.30 Prevent mistaken DS of Grinder |
| Tue, March 3 2009 |
In rare circumstances on multi processor system Supervisor could
mistakenly treat the Grinder stack as being hung and DS it. Any task
being performed by grinder would already have completed, so no work
would be lost. This loophole has been closed. |
| 531.29 Support better julian date attributes |
| Mon, March 2 2009 |
|
Supports the changes made in Opal Gstablegen 530.40.
|
| 531.28 Allow Supervisor commands longer than 15 Chars |
| Mon, March 2 2009 |
|
There was an unintended restriction when processing Supervisor
defined commands. (i.e. Created using TT DEFIME COMMAND ...) If the
total length of the name of the command and any mixnumber prefix was
greater than 15 characters the command was not recognised. This
restriction has been removed.
|
| 531.27 INVALID INDEX at 24945020 with generic LOG WHEN |
| Thu, February 26 2009 |
|
Previously, running a generic LOG-based WHEN could have faulted with an
INVALID INDEX at 24945020 depending on the nature of other active
WHENs. This problem is now fixed.
|
| 531.26 Fix WHEN disable after QUIT and RESTART |
| Tue, February 24 2009 |
|
The change described by DNote 531.25 had the unintended side-effect of
suppressing the restart of all WHENs after any SUPERVISOR restart.
This problem has been corrected.
|
| 531.25 Fix pending PD slot after FLEX error |
| Mon, February 23 2009 |
|
Previously, various errors returned by an EVAL of a PD context scripts
were not handled correctly when invalid directory requests were passed.
Illegal directory names passed to a PD EVAL caused SUPERVISOR to fail
to report the error and would leave the EVAL frozen for some time, with
zero evaluations instead of immediate termination.
If a PD context DO was passed a file or directory request that did not
exist and the search was not :FLAT, the error 'File/Dir Not Found'
would be correctly returned but the affected DO slot would not be
terminated but remain in the WHEN list marked as 'Pending' and
'Queued'. These slots could only be cleared by a SUPERVISOR restart.
Both of these problems have been fixed.
|
| 531.24 Include SECURITYLOG processing after TL |
| Mon, February 16 2009 |
After a TL, SUPERVISOR will now automatically copy the associated
*SECURITYLOG file that is released as well as the SUMLOG. Upon
successful completion of the COPY, the SECURITY will be removed from
the DL family. This mechanism also applies if SO+AUTOTL is set and the
SUMLOG is released manually by an ODT TL command or due to log size.
The example WFL job file *METALOGIC/JOB/ANALYSE/LOG, supplied with
every SUPERVISOR release, has been changed to show optional processing
of any SECURITYLOG file.
|
| 531.23 Fix GRINDER fault after TT function |
| Thu, February 5 2009 |
|
Previously, the GRINDER process could have faulted with a BOUNDS ERROR
@ 41498600 under the following circumstances:
1. An OPAL DO executes a TT function call that performs a PD search
on a selected directory and returns 'NO FILES'.
2. A subsequent OPAL executes in the same slot as the above TT call and
issues a WFL statement via an ODT statement.
The TT failure to find any files causes an internal WHEN slot array to
be corrupted which remains until the slot is reused. The second OPAL
references the corrupt value and causes GRINDER, which is attempting
to execute the WFL request, to fault.
GRINDER faults will now display more detailed history information in
the SUPERVISOR log as well as system messages when a fault occurs.
|
| 531.22 Revised LOGREADER handling |
| Thu, February 5 2009 |
|
This change introduces a new mechanism for the handling of the
LOGREADER utility. A new SUPERVISOR command called LR has been
implemented which has the following syntax:
---- LR ----- +-- UPDATE -------+----------------------------|
| |
+-- <Log No> ------+
| |
+-- <File title> --+
The UPDATE modifier allows SUPERVISOR to request processing of the
relevant SUMLOG(s) since the last known update of the TRIM database.
This is implicitly performed after every SUPERVISOR restart due to a
QUIT SUPERVISOR command or H/L. The latest TRIM update timestamp can
always be seen in a SHOW command response.
The LR command also allows the simple processing of any resident SUMLOG
file. An individual SUMLOG can be specified by using the MCP log
sequence number or its full title, including family name. If a log
number is specified, LOGREADER will search for the first available
SUMLOG, matching the log number with the last level of the title. Both
the DL family and SUPERVISOR's USE FAMILY FOR LOGS setting are
searched.
If the SO LOGGING option is set, LOGREADER will write log entries with
a category of 'Lgr' into SUPERVISOR's log file. This includes any
error and progress messages generated by LOGREADER.
As part of this change, the restart time for SUPERVISOR after a QUIT
has been reduced though the observed reduction is affected by various
factors including the AF RESTART schedule, number of active WHENs etc.
Support for the SUPERVISOR-FPORT port file interface, used primarily by
LOGREADER but also available for external program agents, , has been
deimplemented. Other mechanisms now exist to allow external commands
to be passed to SUPERVISOR such as the library entrypoint
EXTERNALCOMMAND. Further, support for older MCPs (pre-45.1) and
Metalogic MCP METAPATCH files have also been deimplemented.
|
| 531.21 Implement METALOG context |
| Fri, January 16 2009 |
|
A new SUPERVISOR context, METALOG, has been implemented. This context
allows retrieval of log entries from Metalogic's internal log files
maintained by SUPERVISOR, MAILLIB and TRIM. Unlike SUMLOG-based
scripts, METALOG Opals can only be used with the EVAL command as no
event support is available.
The context has three subcontexts: SUPERVISOR, MAILLIB or TRIM. If no
subcontext if given, SUPERVISOR is assumed by default; only one
subcontext may be assigned. A small subset of attributes is
available, similar to those available to the LOG context. The
attributes can be viewed with the command HELP ATTR =:METALOG.
The implementation of METALOG log file browsing uses the same EVAL
mechanism adopted by all LOG contexts. This allows start and end
timestamps to be passed to the EVAL to filter the data returned. The
EVENT attribute is particularly useful since this string value maps to
the log entry category e.g. 'Err', 'Flt', 'Msg', Odt' etc.
For example:
EVAL (METALOG:EVENT="Err") DO (SHOW(LOGTEXT)) [12]
EVAL (METALOG=SUPERVISOR:TRUE) [@BACK 12 HRS FOR 20 MINS] DO META
However, it is not yet possible to use TITLE or LOGNO in the EVAL
specification nor are some log-based MYSELF attributes (such as
LASTLOGNO,LASTLOGTIME or LOGRECORDS) currently available.
|
| 531.20 Implement SL context |
| Mon, January 12 2009 |
|
This changes supports a new SUPERVISOR context called SL. The SL
context allow the retrieval of information for all MCP SL functions
from OPAL scripts using EVAL. The collection of SL attributes
currently available can be seen in the response to a HELP ATTR =:SL
command.
SL context scripts may only be used with the EVAL or DO commands; in
the latter case, the SL function name must be passed as a parameter.
For example, a simple scan of all SL functions whose name begins with
the letter 'E':
EV (SL:FUNCTION Hdis "E") DO (SHOW(FUNCTION 17,,CODEFILETITLE))
To show which SL-ed functions have non-resident codefiles:
EV (SL:NOT PD(CODEFILETITLE)) DO (SHOW(FUNCTION 17,,CODEFILETITLE))
ONCRPCSUPPORT *SYSTEM/ONC/RPCSUPPORT ON DISK
NCSDBSUPPORT (NAU)SYSTEM/NCSDB/LIBRARY ON DISK
METAWEBLINK *METALOGIC/WEBLINK ON DEV
MCPSUPPORT ">> CURRENT MCP <<"
LANPRTSUPPORT *SYSTEM/LANPRT/SUPPORT ON DISK
JAVACOMSSUPPORT *SYSTEM/JAVACOMSSUPPORT ON DISK
HLCNTLISUPPORT *SYSTEM/HLCN/TLISUPPORT ON DISK
MCPSUPPORT can be excluded from the EVAL by changing the in-line:
EV (SL:NOT MCPLIB And Not PD(CODEFILETITLE) ...
For a standalone DO:
DO (SL:(SHOW(FUNCTION 17,,LIBRARYMIXLIST))) TADSSUPPORT
TADSUPPORT 12345,12444
Where LIBRARYMIXLIST returns the mix number(s) of the SL-ed library.
This can then be used to determine all SL-users of the codefile. Note
that the same codefile instance can be assigned to multiple SL-ed
functions or the library may be SHARING=PRIVATE; either condition means
that LIBRARYMIXLIST can return multiple mix numbers.
|
| 531.19 More DEFINE context attributes and NOLOOK lookup |
| Mon, January 12 2009 |
|
Some new attributes for the DEFINE context have been added to provide
additional information concerning the method used to compile an
individual DEFINE. These attributes include REFERENCE, REMOTESOURCE,
SOURCEKIND and SOURCEHOSTNAME. Note that EXTERNAL is TRUE if an OPAL
has been compiled from either DEFINE..FROM or ENTER REFERENCE.
These attributes allow a useful method for determining if an external OPAL files used with DEFINE...FROM or compiled from an ENTER REFERENCE is not resident. These external files are necessary to recreate a SCHEDULE from its saved symbolic.
For example:
EVAL (DEFINE:EXTERNAL AND NOT PD(FILENAME)) DO (SHOW(TYPE,,NAME))
The above EVAL would find all missing external symbolic files used to
compile OPALs currently in the SCHEDULE.
A new lookup function, #[NOLOOK], allows text strings that have
embedded lookups to be displayed to the screen or printed without
SUPERVISOR or FLEX performing substitution. This is particularly
useful for displaying or printing the SOURCE attribute in the DEFINE
context.
For example:
SHOW("#[NOLOOK] #[SUB] #[MX=MARC]") would show
#[SUB] #[MX=MARC] instead of screen highlight and MARC mixnumbers.
|
| 531.18 Fix INPUT and MESSAGE DO conflict |
| Tue, January 6 2009 |
|
Changes described in SUPERVISOR DNote 530.97 caused problems for MSG based Opal scripts that used the INPUT function. While the DO was waiting for user response to INPUT, it was possible for INPUT to return an empty string result because SUPERVISOR would also send any system message notices to the waiting slot (as if it was a WHEN). This caused the INPUT response to be added to the end of the message queue and subsequently ignored.
An interrogation of the WHEN slot using the SLOT command might then
show:
Entered by : DO ABORT
Handled 0 Restarts
Times: CPU= 0:00:00.07, IO= 0:00:00.01, Elapsed= 0:00:43.40
Depth: 0
Originated from WINDOW 334 Session 4671
25 messages in WHENEVQ
Grinder state is INPUT waiting for 0:00:07.45
In the above example, the ABORT script of type MESSAGE is waiting for
user INPUT but has 25 messages already queued ahead of any INPUT
response. This problem is now fixed.
|
| 531.17 Add more attributes to the WHEN context |
| Wed, December 24 2008 |
|
Support new When context attributes TIMEDPER,SOURCE,WAITSECS.
|
| 531.16 Insert_UserType |
| Fri, December 19 2008 |
|
Internal Change.
|
| 531.15 Implement DEFINE context |
| Thu, December 11 2008 |
|
A new OPAL context, called DEFINE, is now available for use. The
DEFINE contexts enables access to the SUPERVISOR Opal program
dictionary and detailed information about all DEFINEs and MEMOs held
in the SCHEDULE file. Opal scripts that use DEFINE may only be
executed by the EVAL or DO command and no WHEN variant is permitted. A
complete list of the attributes can be seen:
HELP ATTR =:DEFINE
The DEFINE context may use subcontexts to filter the dictionary; these
subcontexts are SITU,ODTS,DISP,COMMAND and MEMO. If one or more
subcontexts are specified, only those DEFINES of the correct type will
be returned. These program types also map to the TYPE attribute.
EVAL (DEFINE=ODTS,DISP:NAME HDIS "A")
The above EVAL will examine all ODTSEQUENCE and DISPLAY programs in the
dictionary additionally filtering them by using the NAME attribute to
those whose id starts with 'A'. Note that, in the present
implementation, the list of DEFINES returned is unsorted and reflects
the order in which they were entered into the SCHEDULE dictionary.
Useful attributes include information about the program context
(CONTEXT), the source of the DEFINE (SOURCE), whether it is currently
in-use by a WHEN slot (INUSE, CALLED) and creation and access timestamp
information.
When a DEFINE script is executed by a DO, SUPERVISOR expects a single
level identifier that denotes the name of a DEFINE. All instances of
that DEFINE will be returned and executed by the script and no
filtering by program type is performed. For example:
DO (DEFINE:SHOW(TYPE,,NAME 17,,CACHEDSLOTS) OBI_EXAMPLE
SITU OBI_EXAMPLE 0
ODTS OBI_EXAMPLE 2
DISP OBI_EXAMPLE 0
In the above case, OBI_EXAMPLE has three occurrences in the SCHEDULE
and the ODTS is currently active and cached by 2 WHEN slots. Note that
SITU and MEMO program types can never be cached.
By default, all privileged users can view the entire DEFIEN dictionary
but non-privileged users may only view DEFINES locked under their own
usercode or normal, unprotected DEFINES.
|
| 531.14 Remove GRINDER CHARGECODE assignment and fix FP |
| Wed, December 10 2008 |
|
The GRINDER process will no longer have a default CHARGECODE assigned automatically by SUPERVISOR. Previously, the value "GRINDER" caused problems when GRINDER was used to start certain jobs or run MCS programs.
The SUPERVISOR BNALINKER process will no longer occasionally suspend
with a "NO FILE FPORT" condition after a restart, prior to the running
of the LOGREADER utility.
|
| 531.13 Fix screen refresh after tt + |
| Thu, November 20 2008 |
|
For commands entered from a Supervisor window where the response need more than one page Supervisor adds a TT + command to the home position of the screen. After the last page is displayed Supervisor restores the original command, overwritten by the TT +. If a TT prefix was used in the original command or a number of spaces preceeded the original command then the original command was not correctly restored.
|
| 531.12 Fix intermittent WFL function failures |
| Thu, November 13 2008 |
|
Previously, SUPERVISOR would occasionally fail with a variety of faults
during the execution of multiple Opal WFL function calls that used FOR
clauses, typically using an Accesscodes as well as Usercodes. These
faults included jobs failing incorrectly with errors such as 'INV
CHARGE' or 'ONLY ONE USERCODE ALLOWED' and faults such as 'STRING
PROTECT AT 76353000'. This problem is now fixed.
|
| 531.11 Fix bugs in Eval of SQ context |
| Thu, November 13 2008 |
|
This change fixes bugs which could cause problems in an ODTS attached
to a Situ of type SQ in an Eval.
If the ODTS included a Wait statement or an implied wait caused by
a DCKeyIn or TT function, Supervisor would fault with an illegal swap.
If the ODTS performed an ODT command the ODTS would occasionally
fault with an invalid index.
|
| 531.10 Delete Att Table Include |
| Wed, November 12 2008 |
|
The 1200 card 1984 Attablegen output with its large Value Arrays will
no longer be included in Supervisor.
|
| 531.09 Provide SORT CANCEL error if DISPLAY key invali |
| Mon, November 10 2008 |
|
If the DISPLAY program or inline OPAL used as a SORT clause generates a
key that exceeds 255 bytes then the associated EVAL will now be
automatically cancelled; previously, any sorting was disabled and the
EVAL would have run. The error message is shown below:
"SORT clause key is invalid or exceeds 255 characters""
The TTLASTERROR attribute will return the new mnemonic TTSORTCANCEL if
an EVAL with a SORT clause fails because of an invalid key inside a TT
function.
|
| 531.08 JSON No Atts |
| Thu, November 6 2008 |
|
Return [] if JSON and no attributes selected.
|
| 531.07 Correct multiple SORT EVAL handling |
| Wed, November 5 2008 |
|
If multiple SORT-based PD or LOG EVALs were run in parallel then it was
likely that only the first EVAL to complete would have had the SORT
criteria applied; other SORT clauses would be discarded. This problem
is now fixed.
A WHEN ? will now correctly show the status of any EVAL run with a
SORT clause.
|
| 531.06 Fix default MAIL destination printing |
| Wed, November 5 2008 |
|
If SUPERVISOR's USE DESTINATION is set to a MAIL server, SUPERVISOR
will now automatically assign that destination to all printfile reports
generated by users who have an EMAIL attribute associated with their
usercode. Previously, no DESTINATION would have been assigned.
|
| 531.05 Sort Boundary Condition |
| Sun, November 2 2008 |
|
Fix Invalid Index boundary problem
|
| 531.04 Help ALL |
| Thu, October 30 2008 |
|
TT HELP ATT = : SYSTEM selects basic SYSTEM attributes only.
TT HELP ATT = : SYSTEM ALL selects basic SYSTEM attributes and
extended SYSTEM attributes for PD, VL,
NAP, METER and MAIL.
TT HELP ATT = : ALL selects attributes for all contexts.
TT HELP ATT = : <context or ALL> (DETAIL) returns full attribute
information for the selected attributes.
|
| 531.03 Time based situations were evaluated twice when first started |
| Wed, October 29 2008 |
|
Time based MX and Per situations were evaluated twice when first
started. This problem has been corrected.
If the WFLJOBREASON attribute was used in the same expression as any of the attributes WFLJobStatus,WflTimeStamp, WFLJobNo or WFLElapsed then the retuned value would be truncated to the length of the identity passed as a parameter to the attribute.
EV ...[@back..] [@After...] and [@Before...] now work with the MSG
context.
|
| 531.02 Contexts JSON |
| Wed, October 29 2008 |
|
Add JSON option to HELP CONTEXTS.
|
| 531.01 Fix COMS VALIDATION_FILE error during restart |
| Tue, October 28 2008 |
|
The change described in DNote 530.98 occasionally caused a COMS
VALIDATION_FILE error when attempting to send messages to stations that
were active prior to a restart. This problem also caused the generated
status message to occasionally have corrupt text appended. Both these
problems have been addressed.
|
| 530.99 Sort Modifier in EV Command |
| Tue, October 28 2008 |
|
The objects found by a Situation in an EV command can now be sorted
before being passed to the Display or ODTSequence.
A <Sort Clause> is added to the command, where:
<Sort Clause>:
------- SORT ----+-----+--+------- <Display id> -----------+--!
! ! ! !
+- + -+ +-- ( -- <Inline Display> -- ) --+
+ +
+- - -+
Examples: EV ALLMX DISP (MIXNO,,TIME(PROCTIME)) SORT - (PROCTIME)
EV (PD:TRUE) DISP (SEGMENTS 8,,TITLE) [24] SORT (SEGMENTS) (*)= ON =:FL
SORT - means "sort descendinh", SORT + "sort ascending". If neither
"+" or "-" is specified, it defaults to 'descending". By using the new
OPAL function, COMPLEMENT, multiple keys can be sorted in different
directions. The Display given in the <Sort Clause> returns a String,
which is used as a key for the sort.
There is a slight difference in the way the Display
is evaluated, compared with normal use. In a Sort, an <OPAL String>
element has a fixed width. If none is specified, then for a String, it
is assumed to be 64, and for an arithmetic or mnemonic, it is assumed
to be 12. The Display may not contain a new line (/) delimiter or have
a key length of more than 256 chars. Literal strings and the ",,"
delimiter are allowed, but are unlikely to be useful.
If an entry limit is specified, this is only applied after the Sort, so
all of the objects will be passed to the Situation. However, to keep
the overheads in control, an entry limit of 256 is imposed, even if
a greater value is specified.
|
| 530.98 Improve SUPERVISOR restart time |
| Wed, October 22 2008 |
|
Significant improvements have been made to the time taken for
SUPERVISOR to restart and allow access to a COMS window. Previously,
delays were caused by the following:
- cancellation of pending I/Os to unavailable ODTs
- unnecessary QUIT and restart of the RECORDER library
- delayed release of MCS privilege to the new instance of SUPERVISOR
During a restart, SUPERVISOR will now send a COMS message to the status
line of all SUPERVISOR COMS windows, that were active at the time of
the QUIT, indicating that the restart is complete.
|
| 530.97 More OPAL Init Cleanup |
| Fri, October 10 2008 |
|
This 50-card negative patch removes another unnecessary IO for EV/WHEN
commands, and simplifies the code to prepare for sorting.
|
| 530.96 Support Volume Purge status checks |
| Thu, October 9 2008 |
|
Previously, it was possible for TRIM to scratch a tape in the database
even though the Volume Purge had actually failed because of a media or
hardware error. This caused a discrepancy between the physical tape
label (now not purged) and the database, causing problems if the tape
was to be purged in the future. This occurred because SUPERVISOR was
not checking the status flags of the attempted tape volume purge
provided in the log entry.
This problem is now fixed; any failed Volume Purge will be detected and
logged in the TRIM log as an error:
12:16:06 Err:MT 180 Volume [001302] UNLABELLED error during Vol Purge
|
| 530.95 Fix Eval and Count in Prints context on MCP 53. |
| Thu, October 9 2008 |
|
Version 53.189.8008 of SYSTEM/PRINT/SUPPORT changed the interface to one of the Procedures used by Eval, Count and Objects to retrieve print requests. This change caused Supervisor to get a request number of zero in these commands.
Supervisor will now handle all current versions of printsupport
correctly.
|
| 530.94 Fix Count(SQ:......) |
| Tue, October 7 2008 |
|
Version 530.03 broke the Count function. Version 530.07 corrected the
bug for all Counts except Count(SQ:... This change fixes the problem.
|
| 530.93 Internal change only |
| Tue, October 7 2008 |
|
No longer copy heap when calling SOPTT.
|
| 530.92 Internal change only |
| Tue, October 7 2008 |
|
Move MEMORY (used for heap) out of Environment as precursor to
improving handling of TT function.
|
| 530.91 Resolve BOJ vs. EOJ conflicts |
| Tue, October 7 2008 |
|
The optimisation referred to by DNote 530.87 caused an intermittent problem where LOGEOJ WHENs could stop receiving EOJ notices, usually seen after a SUPERVISOR restart. The problem depended on the presence of a LOGBOJ WHEN and the order in which they were invoked after the restart. This problem is now fixed.
|
| 530.90 More fixes for CALL DO of MSG type ODTS |
| Mon, October 6 2008 |
|
This change fixes WAIT(<msg boolean expression>) when in a message
ODTS called with a parameter where the length of the parameter is
less than the length of the message waited on. Previously random
results could occur.
|
| 530.89 Fix INVALID INDEX for delinked HTTP dialog |
| Fri, October 3 2008 |
|
During periods of intense browser client activity, it wass possible for
an HTTP WHEN to fault with an INVALID INDEX @ 95280000 when handling
requests for a HTTP dialog that had already been delinked. This
problem has been fixed and improved tracing of HTTP requests has been
applied.
|
| 530.88 Fix for wait in Call DO of type MSG |
| Tue, September 30 2008 |
|
Version 530.58 allowed an ODTS of type MSG to be the subject of a call
of a non MSG type. It was possible that if the called ODTS performed
as WAIT based on a message attribute (ex. WAIT("BOB" IsIn TEXT) that an
invalid index error could occur. This problem has been corrected.
|
| 530.87 Fix LOGBOJ tracking problem and optimise notice |
| Tue, September 30 2008 |
|
Previously, it was possible for LOGBOJ WHENs to stop receiving BOJ or
BOT notices from the MCP if other previously active Log Major Type=1
WHENs had all been subsequently deactivated. This behaviour has been
corrected.
An issue where SUPERVISOR incurred additional CPU overhead during the
handling of MCP events has been addressed.
|
| 530.86 Fix random CALL DO failure when run with PD con |
| Mon, September 22 2008 |
|
Previously, it was possible for possible for valid CALL DOs to randomly
fail with a 'NON EXECUTABLE CALL OR WHEN STATEMENT' error whilst a PD
context script, that was linked to FLEX utility, was running in
parallel. This problem could also have caused such PD scripts to
generate spurious SEND_ARY displays at the same time and has now been
resolved.
Opal programs with a context of VL will now return a KIND of TAPE for
volumes that were originally entered into the Volume Library with a
KIND of TAPEPE, TAPE9 or TAPE7. These old KIND mnemonics are no longer
supported by most MCP levels.
|
| 530.85 Allow multiple SUMLOG searching if using limits |
| Mon, September 22 2008 |
|
SUPERVISOR will now automatically search multiple SUMLOGs when handling
log-based EVALs if non-zero EVAL or DO limits have been applied.
Previously in these circumstances, only the current SUMLOG would have
been searched.
A new DEBUG option (31) is now available. If set, this option will unconditionally generate a compile printer listing for all in-line OPAL expressions compilations, invoked by any TT function, that fail to compile. This can helps in the diagnostics of large OPAL in-line compilations that are otherwise difficult to check for syntax errors. The generated print file will be automatically released to the Print System.
The TT function will now not return an EVAL response message to the
originating station as this is already included in the TT function
result and therefore under the control of the caller.
|
| 530.84 Protect SAVE commands during multiple AFTERs |
| Thu, September 18 2008 |
|
Previously, it was possible for SUPERVISOR to fault with a BUFFER IN
USE error, reading or writing the *SCHEDULE file, when handling WFL
jobs invoked via AFTER concurrently with a SAVE SCHEDULE command. This
timing problem was observed with multiple WFL jobs all scheduled in the
same AFTER minute as a SAVE AS command and now has been fixed.
|
| 530.83 Fix MEMORY RESIZE errors after MAIL LOG call |
| Wed, September 10 2008 |
|
Previously, SUPERVISOR would have faulted with REQUESTED MEMORY SIZE GREATER THAN 65535 WORDS at 25544000 or 95892500 when handling a very large KEYIN response from a MAIL LOG interrogation. This change, in conjunction with MAILLIB change 530.07, now fixes this problem.
|
| 530.82 Default Limit on FLEX PD Evals |
| Tue, September 9 2008 |
|
PD context EV commands which implicitly use FLEX will no longer be
limited to 256 evaluations.
|
| 530.81 Fix BACKUPSCHEDULE processor loop |
| Tue, September 9 2008 |
|
For a certain combination of usercoded and non-usercoded activities
specified in the same minute of SUPERVISOR's AFTER schedule, it was
possible for BACKUPSCHEDULE to go into a processor loop when
backtracking the schedule. The problem could have also occurred to
SUPERVISOR when handling the same minute during its normal scheduling
operations. This problem has been fixed.
|
| 530.80 Fix CALL DO with empty parameter |
| Wed, September 3 2008 |
|
Version 530.58 introduced a bug in CALL DO. A Call DO of a message
type ODTS would fault if an empty parameter was passed.
Ex. CALL DO "TEST" ""
This problem has been corrected.
|
| 530.79 Fix INVALID INDEX after FOR AF WFL check |
| Wed, September 3 2008 |
|
SUPERVISOR could have faulted with an INVALID INDEX @ 63103000 during
the check of an AFTER command that was scheduling a START job with a
FOR modifier. In such circumstances, the problem occurred when
SUPERVISOR's check failed with an error such as WFL NOT AVAILABLE or
SYNTAX ERROR. This fault has now been corrected.
|
| 530.78 Fix SAVE program corruption |
| Wed, September 3 2008 |
|
Previously, it was possible for certain DEFINES with comments that
extended to column 80 to become corrupted when written to a source file
by the SAVE .. AS command. The corruption, caused by incorrect line
wrapping, could then cause the DEFINE to fail to compile when it was
re-ENTERED. This problem is now fixed.
Very old compiled MX=BOT SITUATIONs would not decompile correctly when
written to disk by the SAVE.. AS command or displayed by a DEFINE ?
command. The context and subcontext for these OPALs would have shown
as empty. When executed, any WHEN or EVAL attempting to use an old
MX=BOT SITU will now fail with 'MX=BOT SITU CODE TOO OLD: RECOMPILE
NEEDED'. Both DEFINE ? and SAVE will now show the correct context.
SUPERVISOR will now not give a command error when entering a SO+ option
list from an ENTER file should any of the option numbers be invalid.
The offending options will be ignored.
The LC CLOSE command will now correctly close the current SUPERVISOR
log file; previously no action was taken.
|
| 530.77 SO command changes |
| Tue, August 26 2008 |
|
The behaviour of the SUPERVISOR SO command has been changed.
SUPERVISOR will now automatically reset any options that were set on an
earlier release but have since been deimplemented. Secondly, changes
using SO+ or SO- will now return only those options that have been
altered by the command. This makes SO identical in behaviour to the
MCP's OP command.
Various minor fixes concerning the logging of commands by SUPERVISOR
have also been applied.
|
| 530.76 Implement PING function |
| Tue, August 26 2008 |
|
This change supports the new Opal PING function as described in OPAL
DNote 530.25.
|
| 530.75 Extend SUPERVISOR restart capabilities |
| Tue, August 26 2008 |
|
Previously, SUPERVISOR did not restart correctly after certain
HISTORYCAUSE reasons such as fatal I/O or datacom errors. In the case
of an OPAL script receiving a fatal I/O error using the OPAL WRITE
method, SUPERVISOR did not disable the slot prior to termination and
did not restart. This bahaviour has been fixed: SUPERVISOR will now
automatically terminate the faulting slot and restart in such
circumstances. The handling of fatal WRITE failures has been made more
resilient by the change described in OPAL Dnote 530.26.
|
| 530.74 Implement USE NOPASSWORDS |
| Tue, July 29 2008 |
|
The mechanism using the NODEFAULTUSE setting on the Supervisor usercode
to control password validation on the FOR command has been changed.
This feature is now controlled by a new USE variant called NOPASSWORDS
which can only be set by a FOR usercode that has both PU and SECADMIN
privilege. The setting of the NODEFAULTUSE attribute on Supervisor's
usercode now has no effect.
A modifier of '+' or '-' must be specified with the command:
FOR META/PW USE NOPASSWORDS +
If this NOPASSWORDS has been set, additional text will appear in the
USE response:
PASSWORD VALIDATION: NOT ACTIVE
SUPERVISOR's utility commands such as JAM will now not generate an
unnecessary Userdata security violation when executed from a SUPERVISOR
window.
|
| 530.73 Disallow multiple WHENS and fix WHEN cancel |
| Fri, July 18 2008 |
|
The changes applied by SUPERVISOR DNote 530.68 had several further
side-effects, First, multiple WHEN <Situ> DO <Odts> combinations using
the same <Situ> were now unintentionally permitted and, secondly, it
was not possible to cancel an active WHEN using the WHEN <Situ> DO
command unless the WHEN had been invoked by a SUPERVISOR restart.
These problems have now been resolved.
A long-standing issue where a LOG context EVAL or WHEN command would give the error TYPE OF ODT SEQUENCE MUST MATCH TYPE OF SITUATION has been fixed. This always occurred when the linked ODTS or DISPLAY was an in-line OPAL without any context.
Lastly, a DO of a VL context Opal will now not fault with an INVALID
INDEX @ 93667900 when processing a list of volume serial numbers.
|
| 530.72 Drop a further un-needed IO |
| Thu, July 17 2008 |
|
More minor cleanups in OPAL initiates.
|
| 530.71 Support for SYSTEM MAIL attribute subset |
| Wed, July 16 2008 |
|
A subset of attributes called SYSTEM MAIL is now available; these
attributes provide run-time and configuration information for the
Metalogic MAILLIB library. Only available to SUPERVISOR, information
may be obtained by the command:
HELP ATTR =:SYSTEM MAIL
|
| 530.70 Fix inline Opal SEG ARRAY ERROR |
| Sat, July 12 2008 |
|
The changes applied by SUPERVISOR DNote 530.68 caused all in-line OPAL
commands to fault with a SEG ARRAY error at 72667800. This problem has
been resolved.
|
| 530.69 Correct page headings in SHOW PERM |
| Sat, July 12 2008 |
|
For multi-page responses to the SHOW PERM command, the correct relevant
heading will now be shown on page numbers greater than 1.
|
| 530.68 ODTS/DISP Init Load |
| Wed, July 2 2008 |
|
An old optimization in Supervisor delayed loading the ODTS or DISPLAY
in a WHEN/ONCE/EVAL until the first entry. But info was needed from the
record in the Schedule, so an I/O had to be done anyway.
Even worse, the info is also needed for both the Situation and the
action at slot set up time, so another read resulted.
Now, the code is always loaded at initiation and kept in overlayable
memory, even if it is never called. The trade-off of memory and CPU/IO
resources has changed significantly since this was first programmed.
The running of different types of OPAL has been standardized, with a
reasonable reduction in source size, and allowing new types in the
future with minimal extra coding.
|
| 530.67 Correct FP formatting |
| Tue, July 1 2008 |
|
The FP command will now display the text 'DU INFORMATION UNAVAILABLE'
if SUPERVISOR is unable to retrieve family DU information for a
specific disk unit. Previously, values of 'NONE' would be shown and
tabulation of individual lines would be incorrect. Typically, such
behaviour would be shown if duplicate pack families were present on the
system.
|
| 530.66 Changes for OPAL resequence |
| Tue, July 1 2008 |
|
Internal Metalogic change.
|
| 530.65 Change LC command logging |
| Fri, June 27 2008 |
|
Usage of the LC command will now be recorded in SUPERVISOR's log file
with the 'Lgc' category instead of 'Odt'. This change means that only
one entry is logged instead of two ('Odt' and 'Lgc') as in previous
versions. The 'Lgc' entry retains command origin information.
|
| 530.64 Identify When slots started from schedule |
| Thu, June 26 2008 |
|
Previously a WHEN slot which had been started from the schedule (i.e
via an AFTER command) would appear to have been started from an ODT.
With this release, an EV ? will show "After" in the first column if
it was started from the schedule. An Opal program dump will show
"Originated from Schedule." and the WHENID(STATION) attribute will
return "After".
|
| 530.63 Improved SILO support |
| Wed, June 25 2008 |
|
TRIM now supports separate scratch pools for both the DSI and UNISYS
settings of the USE SILO environment. Previously, scratch pools could
only be assigned for DSI environments.
The two scratchpool lists are maintained independently depending on the
setting of USE SILO so it possible to switch between them. However, in
a mixed DSI+UNISYS SILO enivironment, only the DSI pool list will be
active.
|
| 530.62 Reinstate command on screen after a TT + |
| Wed, June 25 2008 |
|
If a supervisor Opal of type command was executed from a Supervisor
window and the response was longer than one screen, there was a
problem. At the end of the response the original command was not
correctly restored to the first line of the screen, instead TT COM was
written to the first line.
A bug was also corrected where the TERM FIRST setting was not respected
on continuation screens.
|
| 530.61 Fix ENTER COMMAND ... FROM.. |
| Mon, June 23 2008 |
|
ENTER COMMAND <pattern> FROM <file> now works correctly.
|
| 530.60 Revamp of SILO support |
| Tue, June 17 2008 |
|
The implementation of the USE SILO interface for SUPERVISOR has been
rewritten to allow future TAPEMANAGER library development to perform
its own checks on tape assignments. The functionality of USE SILO is
unaffected by this change.
|
| 530.59 Correct JOBCODE filekinds |
| Thu, June 12 2008 |
|
DUCHECKERBOARD will now return a FILEKIND of JOBCODE for 'Job file' and
'Obsolete Job' areas instead of JOBDESCFILE.
This change supports the new attribute DFHIMAGE for both FLEX and SUPERVISOR, as described in OPAL DNote 530.19.
Some minor issues with the handling of large output from the SHOW
statement, introduced by change 530.55, have been addressed.
|
| 530.58 Allow CALL DO of MSG odts from any other context |
| Tue, June 10 2008 |
|
It is now possible to 'CALL DO' and ODTS of context MSG from any other context. This is particularly useful since it is possible to pass a string parameter to such an ODTS. Ex. CALL DO "PARSE_INPUT" $S; would be valid from any ODTS.
There is a limit of 15 for the depth of such CALL DOs where each passes a parameter. ie. If A1 calls A2 which calls A3 ....A14 which calls A15 and all pass parameters then if A15 call A16 with a parameter it will abort with an 'environment depth exceeded' error.
Any statement which requires a change of environment also temporally increments this limit so a .TAPEDB method or OBJECTS call in A15 above, would also abort.
This change also fixes a bug in the .TAPEDB method when used on a slave
system. When used with an integer variable no attributes were returned
if the variable contained less than 6 digits. If used with a string
variable when the contents of the string were numeric, less than six
characters and not zero filled, no attributes were returned.
A very unlikely bug which could cause a 'bounds error' if a .TAPEDB method was used on a slave system soon after the first access to a Prints context.
Previously the use of the methods .WHEN, .TAPEDB or .PRINTS in ODTS of
context MSG, LOG, TAPEDB, WHEN, PRINTS, could corrupt any subsequent
access to the attributes of the context.
|
| 530.57 DUCHECKERBOARD formatting changes |
| Tue, June 3 2008 |
|
The JS format of the DUCHECKERBOARD attribute would return an extra
comma after the first '[' if the sector start address provided by the
caller did not coincide with the beginning of a row boundary. This
problem has been fixed.
Further, the Fixed, Temp and Open flags provided in DUCHECKERBOARD
output (see DNote 530.55) will appear as values of 0 or 1 instead of
the literals 'true' and 'false'.
|
| 530.56 Include FILEKIND in DUCHECKERBOARD maps |
| Mon, June 2 2008 |
|
The DUCHECKERBOARD attribute now includes a FiLEKIND mnemonic for each
file area that is mapped and appears after the file title. For
example, the CSV variant will appear as:
[Start sector,Sector count,Title,Filekind,Fixed,InUse,Temp]
4028,227796,41,*DEV/PI0017M2007301A,PROMBURNERDATA,FALSE,FALSE,FALSE
Similarly, the web JS format includes the FILEKIND as a quoted string. Special areas such as 'Label','Unavailable' , 'Olay Row' and 'MCP Info' return empty strings.
The DUCHECKERBOARD attribute can only return a resultant string of
2,000,000 characters so, if a continuation call is required to return
the rest of the map, this can be detected by using the DUNEXTADDRESS
attribute which returns the last address handled in the previous call
plus 1. When DUNEXTADDRESS returns 0, the scan is complete.
An example OPAL script to return a complete map of the family DEV
Familyindex #1 in CSV format:
#CAP:= DUCAPACITY("DEV",1);
#START:=0;
Do
Begin
$MAP:= DUCHECKBOARD("DEV",1,#START,#CAP-#START);
%Code to process $MAP goes here
End Until #START:=DUNEXTADDRESS Eql 0 Or $MAP Hdis "ERR";
|
| 530.55 No SHOW truncation |
| Thu, May 29 2008 |
|
Previously, the Opal SHOW statement would output any line of text up to
a new line marker (/) or the width of the screen (typically 80
characters). This behaviour could be changed by setting TERM TRUNCATE
FALSE from the station causing each long line to be split into multiple
80-character lines but its use is inconvenient and has other effects.
The processing of SHOW output has now been modified to behave as though
TRUNCATE is always TRUE (the setting will actually be ignored). All
data provided within a SHOW statement will now be visible regardless of
line length; as before, any SHOW output will cause Insert-Line actions
for each line of output sent to the station. Note that the SHOW
statement in FLEX already exhibits this behaviour.
|
| 530.54 Support for DUCHECKERBOARD |
| Thu, May 29 2008 |
|
A new OPAL attribute called DUCHECKERBOARD is now available which can
provide a detailed file
analysis of any sector range on a selected disk family
index, similar to that performed by SYSTEM/FILEDATA, allowing access to
such information from OPAL and particularly the Metalogic Web system.
DUCHECKERBOARD returns a Checkerboard Map of the family specified by
the first string parameter. Other parameters specify a family index, a
sector start address and the number for sectors to be mapped from that
start address. For example:
$MAP:=DUCHECKERBOARD("DEV",1,0,40000)
The above will perform a checkerboard address map of the family DEV, family index #1, starting from sector 0 for 40,000 sectors.
The result is an array of file mappings which detail start address, number of sectors, row count, file name and several row status flags (Fixed, Inuse, Temporary). By default, the information is returned in JS format suitable for web usage but making the family index negative presents the same information in CSV format. Special areas such as 'Label','MCP Info' or 'Olay Row' will appear where appropriate instead of the file title.
Please see HELP ATTR CHECKERBOARD and JAMPACK DNote 530.03 which describes the implementation in greater detail.
|
| 530.53 Increase WFL use to 65500 characters |
| Wed, May 21 2008 |
|
The OPAL function WFL will now allow up to the maximum limit for a
CONTROLCARD call of 65,500 characters. Previously, the WFL function
only permitted 16,398 characters. It is not possible to pass a WFL
command string longer than 65,500 characters; such a request will cause
the WFL function to return an error value of -10 (WFL TOO LONG).
|
| 530.52 Fix MESSER fault and erroneous mix numbers |
| Wed, May 21 2008 |
|
Previously, passing strings longer than 1940 characters using the OPAL
DISPLAY statement would have caused a MESSER FAULT: CASE 7 SUBCASE 34
entry in the system log and the message would not be displayed.
Because this is a MCP limit, SUPERVISOR display messages are now
truncated to 1940 characters to prevent this problem.
Should certain OPAL functions such as DBS, COMS, WFL and KEYIN fail due
to programmatic errors or external influences, SUPERVISOR will now
record the problem in its own log and better report such failed
requests to the calling OPAL.
|
| 530.51 Protect slot re-usage for various contexts |
| Tue, May 6 2008 |
|
Previously, SUPERVISOR could have faulted with a SEG ARRAY ERROR @
77057900 if the same WHEN slot was used first by a MSG-based DO and
subsequently by a USER-based DO that had not been passed a usercode by
the caller. This minor bug is now fixed.
|
| 530.50 Fix AFTER DO problem |
| Tue, May 6 2008 |
|
The execution of standalone AFTER context ODTSEQUENCEs with the DO
command expects a user-provided SCHEDULE file key to retrieve AFTER
record information. However, if the DO Was executed inside a TT
function, it was possible for SUPERVISOR to fault in the procedure
GETAFTERINFORMATION when building the key or to return information for
the correct SCHEDULE record. This problem is now fixed.
The FORTEXT attribute in the AFTER context will now return the string value 'FOR *' if the calling EVAL/DO slot is running under a usercode but the selected activity is NOTlocked with a usercode. Previously, FORTEXT would have returned an empty string in these circumstances.
|
| 530.49 Activate SO LOGGING option |
| Fri, May 2 2008 |
|
A new SUPERVISOR SO option called LOGGING (47) has been implemented.
When this option is activated (off by default), SUPERVISOR will log all
user activity, unsolicited messages and error reports into its own
private log file. when active, these log files can be accessed by the
LOG command; please see HELP LOG for more detailed information.
Further, OPAL compiler faults are now logged correctly in SUPERVISOR's
log file; previously these were ignored.
|
| 530.48 Allow WFL tracking of CHANGE and REMOVE |
| Fri, May 2 2008 |
|
Previously, usage of a single statement REMOVE or CHANGE statement
within a WFL function was not handled correctly by SUPERVISOR. No
valid BOJ or EOJ notices would be detected and any generated messages
would be assigned the wrong mix number.
This occurs because of the way that the MCP optimises such simple WFL
statements by suppressing a job stack; SUPERVISOR now jackets such
statements with a BEGIN JOB..END JOB pair to ensure that valid job
notices are provided.
|
| 530.47 Fix WHENID(STATION) when run from Marc |
| Wed, April 30 2008 |
|
WHENID(STATION) would cause an integer overflow fault if run via the
Marc TTInterface. It will now return "Marc".
|
| 530.46 Fix AFTER EVAL date range handling |
| Thu, April 24 2008 |
|
The change described by DNote 530.42 caused a problem if any of the
days referenced in a date range was the current date. In this case,
although the current date would be correctly handled, later dates in
the range would use an incorrect schedule day. For example:
EVAL (AFTER:TRUE) [@21/4/2008-23/4/2008] DO AF
If todays date was the Tuesday 22nd April, then the first two days of
the range would be handled correctly but the 23rd would have
erroneously loaded SUNDAY's schedule instead of WEDNESDAY. This
problem has been corrected.
Previously, an 'AF ? ON DATE < dd/mm/yyyy' command where dd/mm/yyyy
was todays date, would have returned all daily activities instead of
filtering by the specified 'ON DATE' modifier. This problem has been
fixed.
This changes supports the new DAY attribute in the AFTER context, as
described in OPAL GSTABLEGEN DNote 530.14.
|
| 530.45 New AFTER handling messages |
| Thu, April 24 2008 |
|
The formatting of AFTER response messages has been improved to provide
detailed information about the processing of the command including
which times slots were activated, deleted or ignored. Previously, the
messages generally returned simple counts.
Some examples of the message changes for a new AFTER insertion:
SCHEDULED IN 5 TODAY SLOTS
SCHEDULED IN 28 SUNDAY-WEDNESDAY,FRIDAY SLOTS
NOT SCHEDULED IN 5 TODAY SLOTS: PAST TIME(S) IGNORED
NOT SCHEDULED IN 3 SUNDAY SLOTS:ALREADY PRESENT
SCHEDULED IN 1 COLDSTART SLOT
For an AFTER deletion:
DELETED FROM 3 TODAY SLOTS, 16 TUESDAY SLOTS
NOT DELETED:1 TODAY SLOT IN PAST
NOT DELETED:NO ACTIVITY FOUND
To assist the Metalogic web browser interface for schedule maintenance, the AFTER command has been modified to allow requests to be verified without updating the live schedule. Prefixing the '*' character prior to the AFTER keyword causes this simulation to be enforced and, if requested, commands are processed as usual but no physical I/O update is performed on the SCHEDULE file. In addition, any generated messages will be prefixed by the text 'WOULD BE' or 'WOULD NOT BE'.
Some examples:
AF * 1300:TT DO TEST
WOULD BE SCHEDULED IN 1 TODAY SLOT
AF *+ 1500:TT DO TEST2
WOULD NOT BE SCHEDULED IN 1 TODAY SLOT:ALREADY PRESENT
AF *- 1000-1100(20):@1
WOULD NOT BE DELETED FROM 3 TODAY SLOTS
WOULD NOT BE DELETED FROM 1 TODAY SLOT:PAST TIME(S) IGNORED
Lastly, the HOLD modifier (a variant of DELAY) for the WHEN command has
now been deimplemented.
|
| 530.44 Fix DEF + ... INLINE |
| Fri, April 18 2008 |
|
Version 521.13 introduced a bug in saving InLine Opals.
I.E. TT DEF + ODTS MYINLINE INLINE would no longer work.
This problem has been corrected.
|
| 530.43 Omit FOR spec in ADDTEXT and DELETETEXT attribu |
| Wed, April 16 2008 |
|
The FOR specification, used to lock AFTER activities under a usercode,
will now not be included in the ADDTEXT and DELETEXT attributes of the
AFTER context. Any FOR assignment can still be determined using the
FORTEXT attribute.
|
| 530.42 Allow AFTER commands with TT function |
| Thu, April 10 2008 |
|
Previously, invoking AFTER commands with the Opal TT function would
generally fail with the error 'MORE INPUT REQUIRED SCANNING :'. This
problem only affected AFTER command usage in TT and is now fixed.
The AF ? ON DATE command will now use the live loaded days schedule
for TODAY if the ON DATE provided matches the current date. This means
that the AFTER command response will now exactly match that of an
unqualified AF ? interrogation. This behaviour change allows manual
AFTER modifications for the TODAY schedule to be correctly shown.
Similarly, AFTER context EVALs which have a date range assigned will
now recognise if any date in that range is TODAY. If so, the ONTODAY
attribute will return TRUE, SCHEDULEDAY will return the current julian
date and all activities for TODAY's schedule will be returned.
|
| 530.41 No compile task for inline Opals |
| Thu, April 10 2008 |
|
SUPERVISOR will now compile in-line OPALs inside its main stack instead
of invoking a separate compilation process. This is a performance
improvement allowing in-line requests to be processed rapidly without
tasking overheads.
|
| 530.40 Add help for USE USER FOR MAIL |
| Fri, March 28 2008 |
|
Help has been added for the MAIL option of the USE USER command.
|
| 530.39 Fix AFTER KEY for specific julian date |
| Tue, March 25 2008 |
|
Previously, the AFTER context KEY attribute would return a key string
with an extraneous comma if a specific date was requested in the
calling EVAL date/time specification. For example, requests such as
'EVAL AF [@25/3/08] DO AF' would generate typical KEY attribute values
such as '2008085,175,,1'. This problem has been fixed.
|
| 530.38 Allow trailing blanks in PDT with wildcards |
| Tue, March 25 2008 |
|
Version 530.36 did not strip tailing blanks from a wildcard pattern.
This has been corrected.
|
| 530.37 Fix AFTER subcontexts and relax ADDTEXT |
| Thu, March 20 2008 |
|
Subcontexts for AFTER SITUATIONS will now be shown correctly in a DEF ?
response. Further, restrictions on the ADDTEXT attribute have been
relaxed - this will now always return an AFTER command string but may
not be valid for certain complex entries in the schedule for TODAY.
For some time now, SUPERVISOR has not been writing flagged activities
such as SAVE SCHEDULE, PRINT SCHEDULE etc. into the decompiled symbol
file created by the SAVE SCHEDULE AS.. or SAVE AFTERS AS.. commands.
This oversight has been corrected.
Scheduling SUPERVISOR activities at 2359, other than a PRINT SCHEDULE,
is not generally recommended. This is because SUPERVISOR, to ensure
that the new days schedule is loaded promptly at midnight, may wait for
up to 60 seconds to ensure that MCP date and time are properly
synchronised on certain machine styles. Because of this, scheduled
commands may result in being processed after the schedule has loaded.
|
| 530.36 Allow ON part in PDT pattern |
| Thu, March 20 2008 |
|
Tape directories and LibmaintDir directories my now include
ON <familyname>. PDT will now accept an ON part in the pattern.
Ex PDT MT 80 =/TEST ON =
Note that if an ON <familyname> is in the directory an ON = or
ON <familyname> may be requred in the pattern.
|
| 530.35 Provide WFL jobno for AFTER-invoked DO |
| Wed, March 19 2008 |
|
Previously, all DO commands executed by an AFTER would only be marked
with a 'postscript' of 'OK' or 'COMMANDERROR' as seen in an AF ?
response. In the event that a scheduled DO command invokes a WFL job
via the ODT statement then the postscript of the activity will now get
updated with the job number and status of the WFL job (as seen with a
WFL activity explicitly scheduled by an AFTER) at run time.
Note that this update only occurs for the first WFL job that is
processed by the DO since it is not feasible to hold information for
more than one WFL entity in an AFTER record.
For example, consider the ODTSEQUENCE DOJOB defined as:
DEFINE ODTSEQUENCE DOJOB:
ODT("START *TEST/JOB ON DEV");
If the ODTSEQUENCE had been successfully invoked at 12:40 by an AFTER:
----- SCHEDULE after 12:40 TODAY @ 12:40:00 19/03/2008 -----
1: TT DO DOJOB :(JOB OK,#34390)
2: TT DO DOCOPY :(OK)
The job number 34390 refers to the successful initiation of *TEST/JOB.
The change described by SUPERVISOR DNote 530.26caused some scheduled
AF activities to be processed up to a minute later than their intended
times. This behaviour has been corrected.
Also, a problem where SUPERVISOR emitted erroneous GET/SET STATUS ERROR
#0 messages when returning certain command scan errors has been fixed.
|
| 530.34 Correct PDT handling from MARC |
| Tue, March 18 2008 |
|
The change described in DNote 530.28 caused problems with the PDT
command. From SUPERVISOR's MARC Directive interface, the command would
consistently return 'ok' instead of a file list; from a Supervisor
window a file list would be correctly returned but certain error
messages would be corrupted. These problems have been resolved.
For DO commands initiated from a Supervisor-COMS windows, the change
described in SUPERVISOR DNote 530.31 had the side effect of forcing the
station log-on usercode to be unconditionally assigned to the DO. This
behaviour has been corrected.
Also, the optional use of ":" to separate hours and minutes in EVAL
time-ranges has been restored after being inadvertently disabled by
changes applied for the AFTER context.
|
| 530.33 AFTER timestamp attributes corrections |
| Fri, March 14 2008 |
|
The AFTER attributes ACCESSTIME, AMENDTIME and CREATETIME will now
return the correct time of day and therefore matching the time shown in
the ACCESSTIMESTAMP, CREATETIMESTAMP and AMENDTIMESTAMP values.
|
| 530.32 Resolve DBS function vs.VDBS method conflict |
| Thu, March 13 2008 |
|
Usage of the Opal DBS function and the VDBS method in series within the
same ODTSEQUENCE and referencing the same mixnumber for both calls
caused the second call to return invalid data. This occurred because
SUPERVISOR incorrectly tried to optimise the second call, believing
that he already had cached the data despite DBS and VDBS being
incompatible. This problem has now been fixed.
|
| 530.31 Better SYSTEM/OPAL auto enter |
| Thu, March 13 2008 |
|
Support for using C WITH OPAL AS $AUTO/ENTER
Fixed a problem when "NOT ALLOWED' was returned on a busy Supervisor.
Rebuld messages were only returned for the first compile after a
Supervisor restart.
|
| 530.30 Support for ORDINALWEEKDAY and DAYMASK attribute |
| Sun, March 9 2008 |
|
The ORDINALWEEKDAY and DAYMASK attributes have implemented for the AFTER context allowing better identification of AF activities constructed with modifiers such as 'ON Nth MONDAY' etc. The ONWEEKDAYS, ONWEEKENDS and ONWORKDAY will now work correctly for all activities which use these modifiers.
A problem where SUPERVISOR could fault with an INVALID INDEX at
66172000, when parsing unusual AFTER requests with invalid day ranges
such as 'AFTER+0100 ON SATURDAY-SUNDAY', has been fixed.
|
| 530.29 Remove erroneous messages from non-log EVALs |
| Fri, March 7 2008 |
|
Previously, it was possible for some EVAL commands to append incorrect
error messages such as 'Max LOG limit reached" even though the EVAL was
not a LOG context variant. This occurred if the EVAL had used the same
slot as an earlier LOG-based EVAL that been stopped with the max LOG
limit condition. This behaviour has been corrected.
Previously, the USERCODE and ACCESSCODE attributes in the AFTER context
returned corrupted strings if their values were exactly six or twelve
characters in length. This problem has also been corrected.
|
| 530.28 Correct AFTER WFL jobs with assigned ACCESSCODE |
| Thu, March 6 2008 |
|
The changes described in DNote 530.26 caused any WFL jobs invoked from
a scheduled TT DO and run with a valid usercode and accesscode, to fail
with an INV ACCESS error. Further, SUPERVISOR was not correctly
handling notifications for jobs that had been invoked from WHENs using
an ODT statement to run the WFL job. Depending on the Opal code and
context being used, the calling slot could unexpectedly fault or be
triggered by a second, corrupt notice. Both these problems are now
fixed.
The SLOTFAULT attribute from the WHEN context will now be set to TRUE
when processing a termination notice for a slot that has died to an
internal SUPERVISOR 'ON ANYFAULT' handling.
Some minor logging format problems handling AF errors have been
corrected.
|
| 530.27 Protect task checking hangs |
| Tue, March 4 2008 |
|
During SUPERVISOR BackTrack schedule recovery, it was sometimes
possible for the BACKUPSCHEDULE process to become hung waiting for
certain backtracked processes, such as SAVE SCHEDULE, to complete.
Even though the SAVE had completed, BACKUPSCHEDULE could have failed to
detect the EOJ and would then wait indefinitely; this, in turn, caused
the main SUPERVISOR program to stop responding until BACKUPSCHEDULE was
manually terminated. These problems have been resolved.
|
| 530.26 Implement WFL postscripts for TODAY AF |
| Tue, March 4 2008 |
|
The handling of SUPERVISOR's AFTER postscripts has been significantly
enhanced particularly in the tracking of WFL activities such as
STARTJOB. Previously, SUPERVISOR would simply mark all such WFL
activities as 'PASSED TO GRINDER' and was unable to report if the WFL
had failed because of syntax errors, missing job file, bad usercode
etc.
Now, SUPERVISOR can now provide status information about the success or failure of a WFL job initiation processed by an AFTER command. Completion status information will appear in an AF ? response for TODAY's schedule and also in a PRINT SCHEDULE listing. Typical values include JOB OK, JOB SYNTAX, BAD USERCODE, INVALID ACCESS etc. There is also an additional value, COMMANDERROR, which identifies if an AF TT command has failed e.g. a TT DO might fail because the ODTSEQUENCE might be absent.
AF ? 1930-1934
----- SCHEDULE after 19:30 TODAY @ 19:30:54 28/02/2008 -----
1: STARTJOB (IPP)TEST/JOB ON DEV :(JOB OK,#54131)
----- SCHEDULE after 19:31 TODAY @ 19:31:48 28/02/2008 -----
1: FOR (TEST) STARTJOB (IPP)TEST/JOB ON DEV :(INVALID USERCODE)
----- SCHEDULE after 19:32 TODAY @ 19:32:36 28/02/2008 -----
1: FOR (TEST1) ACCESS IPP STARTJOB (IPP)TEST/JOB :(INVALID ACCESS)
----- SCHEDULE after 19:33 TODAY @ 19:33:12 28/02/2008 -----
1: FOR (TEST2) CHARGE IPP STARTJOB (IPP)TEST/JOB :(INVALID CHARGE)
----- SCHEDULE after 19:34 TODAY @ 19:34:06 28/02/2008 -----
1: TT DO ZZ :(OK)
When SUPERVISOR logging is active, the LOG command will show all AFTER
commands being processed at the activity time and report each success
or failure.
The AFTER context has been extended to provide these AFTER results when used with the EVAL command. The POSTSCRIPT and JOBNUMBER attributes provide for WFL jobs whether it started sucesssfully and, if so, the associated job number. Note that JOBNUMBER is also available if the WFL activity fails with syntax errors.
The AFTER response for for the daily schedule will now show WFL job
numbers where appropriate for both AF ? and PRINT SCHEDULE commands.
This facility could, for example, allow SUPERVISOR Opal programs to
report AFTER failures on a daily basis and email any exceptions.
EV(AFTER:VALID(POSTSCRIPT)) DO (SHOW(ADDTEXT 50,,POSTSCRIPT 12,,JOBNO))
FOR TEST2 CHARGE IPP AFTER + 1933:STARTJOB (IPP)TE INVCHARGE 0
FOR TEST1 ACCESS IPP AFTER + 1932:STARTJOB (IPP)TE INVACCESS 0
FOR TEST AFTER + 1931:STARTJOB (IPP)TEST/JOB ON DE BADUSERCODE 0
AFTER + 1930:STARTJOB (IPP)TEST/JOB ON DEV JOBSYNTAX 60356
FOR IPP AFTER + 1929:STARTJOB (IPP)MK/JOBDEL ON DE JOBOK 60348
AFTER + 1929:PRINT SCHEDULE JOBOK 60348
AFTER + 1929:SAVE SCHEDULE JOBOK 60348
FOR TEST2 CHARGE IPP AFTER + 1928:STARTJOB (IPP)TE JOBOK 60341
FOR TEST1 ACCESS IPP AFTER + 1927:STARTJOB (IPP)TE JOBOK 60339
FOR TEST AFTER + 1926:STARTJOB (IPP)TEST/JOB ON DE JOBOK 60335
AFTER + 1925:STARTJOB (IPP)TEST/JOB ON DEV JOBOK 60333
FOR IPP AFTER + 1924:STARTJOB (IPP)MK/JOBADD ON DE JOBOK 60327
AFTER + 1923:TT DO NOSUCHACTIVITY COMMANDERROR 0
AFTER + 1922:SAVE SCHEDULE AFDONE 0
AFTER + 1921:DISPLAY("SIMPLE WFL TEST") AFDONE 0
INLINE_AFTER_14+INLINE_14 WILL BE EVALUATED
The above EVAL could be easily changed to allow failed jobs to be
collected and emailed at 2359 each night. See HELP ATTR POSTSCRIPT for
details of all the possible values for this attribute.
The ADDTEXT attribute will now be marked as not VALID if the schedule
day is TODAY and the activity was specified with an ON Nth DAY, IN
WEEKS or uses a LAST modifier. This occurs because such activities can
only be established with an ON <day of week> or DAILY modifier and
therefore have no relevance for Today's schedule. In contrast, the
DELETETEXT attribute is VALID in such cases but is constructed with
':@n' modifier to identify the activity instead of the its text.
SUPERVISOR-invoked commands such as JAM, SYSDIR and SYSLOG will now
return JOBOK postscripts if successfully run and the associated job
number will be available. This also applies to any RUN commands
because such AFTER activities are jacketed by a BEGIN JOB..END JOB.
Note that ??RUN entries that are successfully executed are exempt and
cannot show a job number.
The WITHIN modifier, used by an AF command to control the max number of
seconds that an activity can be started after its time slot, is now
supported by the similarly named WITHIN attribute in the AFTER context.
Also in this change, SUPERVISOR now better handles AF commands that
have been entered into TODAY's schedule with a time that is the current
time of day or slightly later. Under certain conditions, it was then
possible for SUPERVISOR to incur significant I/O and CPU resource,
appearing to be unresponsive for a period up to 1 minute. This
occasional long-standing behaviour has now been corrected.
|
| 530.25 Further AFTER context fixes |
| Fri, February 29 2008 |
|
The TIMESPECS and ADDTEXT attributes in the AFTER context will now NOT include an 'ON <day' specification if an ON clause such as 'ON LAST MONDAY','ON 1ST DAY' etc. is already present. For example, TIMESPECS might have returned the following invalid date specifications:
ON SUNDAY ON 1ST DAY
ON TUESDAY ON LAST WORKDAY
Also, for activities with certain complex date specifications (such as
'ON..DAY'), a scan of the schedule with any AFTER EVAL may have omitted
these from each week day analysis (ON SUNDAY, ON MONDAY etc).
The change applied in SUPERVISOR 530.24 inadvertently broke the use of
the AFTER key mechanism (as described by DNote 530.22) used to process
individual AFTER records by a standalone DO. Each DO would have failed
with the error 'Invalid AFTER key'.
Lastly, SUPERVISOR would consistently have rejected week of year
numbers 5, 47, 50 and 53 when used in AFTER commands that used the 'IN
WEEK nn' clause.
These problems have now been fixed.
|
| 530.24 Correct LOG evals date ranges |
| Mon, February 25 2008 |
|
The AFTER implementation described in DNote 530.23 had the unintended
side-effect of causing certain EVAL date and time specifications (used
for log-based access) to fail with the error 'RIGHT BRACKET REQUIRED'.
Also, using a time range within the EVAL specifications for the new
AFTER context would always fail to find any matching schedule entries,
with or without a specified date. Both of these problems have been
addressed.
|
| 530.23 Correct multiple TT KEYIN problem |
| Fri, February 22 2008 |
|
Previously, SUPERVISOR could have faulted with an INVALID INDEX at
76348000 when processing multiple TT commands in sequence using the
KEYIN function. This problem has been resolved.
Several minor logging issues have been addressed in this change.
|
| 530.22 Implement AFTER context |
| Fri, February 22 2008 |
|
A new context, called AFTER, is now available for use by OPAL
programmers. This context permits access to SUPERVISOR's AFTER
schedule and has many attributes that map information related to an
individual activity. This access is only available to the EVAL
command.
The AFTER context allows the activity schedule to be filtered by the
day of the week (SUNDAY=>SATURDAY) or by the special keywords TODAY and
COLDSTART. For example:
EVAL (AFTER=SUNDAY,TUESDAY:TRUE)
The above example would only examine activities that normally appear in
the schedule for ON SUNDAY and ON TUESDAY.
Various attributes allow the caller to filter by many different
characteristics. For example, boolean attributes such as ONHALTLOAD,
ONRESTART, ONSUNDAY etc. allow the user to filter individual
activities by a variety of different conditions. String attributes
such as ACTIVITY, FORTEXT, ADDTEXT and DELETETEXT allow information
about the schedule entry text content content to be retrieved. Please
see HELP ATTR =:AFTER for a complete list of the attributes in this
context.
Similar to the syntax used for LOG-based EVALS, it is also possible to
control access to schedule records by using time of day and/or date
ranges filters. The syntax is slightly different from that used by LOG
and both time and date ranges can be used; the specific AfTER syntax
for the AFTER <Eval Specs> is shown below:
<Eval Specs>
-- @ ---+----------+------------+--+------------+-----------------|
+--<hhmm> -+ | +--<ddmmyy> -+ |
+- - <hhmm> -+ +- - <ddmmyy> -+
If <Eval Specs> is not used then the general daily schedule (or parts
of the schedule if a subcontext is specified), will be processed.
However, using <Eval Specs> causes this behaviour to change if a
specific date or date range is specified. This forces SUPERVISOR to
return all activities that are scheduled to be executed on all days in
that range. In particular, activities that have EXCEPT HOLIDAYS or ON
WORKDAYS or ON DATE will only be displayed if they are to be processed
on that day. The list of activities will be identical to that seen
using the command AF ? ON DATE.
For example:
EV (AFTER:TRUE) [@1000-1300 20/2/08] DO (SHOW(ADDTEXT))
EV AFSITU [@21/02/08-23/02/08] DO AFODTS
Using a time range without a date or date range will cause the general
schedule to be filtered by time only. In the event a date is
specified, the SCHEDULEDAY and SCHEDULEDATE attributes will be
automatically set to the appropriate date.
AFTER context programs may also be executed standalone with the DO
command. To retrieve information for an unique record in the schedule,
the DO command must be given the schedule day or specific julian ON
DATE, the minute of day and the activity number. The Opal KEY
attribute provides this access but its use is not intended for general
use.
This interface has been provided to support new functionality in the
new Metalogic Web interface, which operates with a variety of internet
browsers, and offers direct access into the SUPERVISOR schedule.
|
| 530.21 Permit SYSTEM-based ODTS with LOG SITU |
| Mon, February 11 2008 |
|
The change described by SUPERVISOR DNote 530.04 had the unintended
side-effect of prohibiting the use of SYSTEM-based ODTSEQUENCEs or
DISPLAYS with all LOG context SITUATIONS linked by the WHEN, ONCE or
EVAL commands. This restriction, not previously in use before the
530.04 change, has now been relaxed.
|
| 530.20 Inherit usercode for TT KEYINS |
| Fri, February 8 2008 |
|
Previously, passing SUPERVISOR (TT) commands via the OPAL KEYIN
function did not inherit the usercode of the WHEN slot. This caused
problems, in particular, when using the DEFINE command as interrogation
or compilations would access the system dictionary and not the DEFINES
belonging to the calling usercode. This behaviour has been corrected.
Also, KEYINs called from OPAL programs running under a usercode will
now be logged correctly in SUPERVISOR's log file.
|
| 530.19 Correct TK error message logging |
| Wed, February 6 2008 |
|
Previously, SUPERVISOR logged all error messages returned by the Unisys
TAPESERVER library (when run with 'USE SILO UNISYS') as type 'Msg' in
the Metatapelib TAPELOG file instead of the expected 'Err'. This
error has been corrected.
Also, SUPERVISOR will now log all usage of the FOR modifier with any
command into its log file (if enabled). Previously, the original
command would not have been logged if the FOR failed for security
reasons.
|
| 530.18 More WHENCONTEXT and TIME inline Opal fix |
| Wed, February 6 2008 |
|
Several problems with the new WHEN context have been addressed: the
CHARGECODE attribute, if valid, now returns the correct string value.
Also, passing a slot number greater than the maximum absolute WHEN
number (by default 40) to the .WHEN method, as described in OPAL Dnote
530.05, will now not cause an INVALID INDEX @ 10712220 in SUPERVISOR.
Also, a MX context inline OPAL that additionally specified TIME in the
SITUATION did not correctly pass the context to an associated in-line
OPAL. For example:
WHEN (TIME,MX:TRUE) DO (SHOW(MIXNO))
The above would have failed syntax when scanning the MIXNO attribute
because the OPAL compiler would not know the context was MX. This
problem is now fixed.
|
| 530.17 Allow TIME-based WHEN context |
| Mon, February 4 2008 |
|
The WHEN context may now take a TIME modifier as part of a subcontext
assignment (as with MX and PER) allowing such OPAL programs to poll the
current WHEN list using an user-specified DELAY. However, unlike MX
and PER, a time-based WHEN slot will still also be triggered by normal
WHEN events created when a slot is activated, faulted or terminated.
For a timed poll, the information for each slot passed to the WHEN has
a special EVENTTYPE category called WTIMEOUT.
A new attribute, TIMELASTEVAL, has been added to the WHEN context.
This returns a value signifying the elapsed time, in seconds, since the
SITUATION belonging to the slot was triggered because of an event.
However, for slots with a zero EVAL count, TIMELASTEVAL will return the
time since the WHEN was first started. TIMELASTEVAL has also been
added to the MYSELF attribute, allowing access to this info from all
contexts.
Example:
DEFINE + SITUATION W(TIME,WHEN):
SITUCONTEXT="HTTP"
|
| 530.16 Fix ENTER processor accounting |
| Mon, February 4 2008 |
|
The fix described in DNote 521.45 did not resolve all the CPU
accounting issues with the ENTER command. If an ENTER generated any
informational messages, which are then logged by SUPERVISOR, it was
possible for the accounting of 'Controller Queue handling' to be
distorted by the CPU time incurred by the ENTER process. This problem
has now been corrected.
|
| 530.15 Support .WHEN method for variable |
| Wed, January 30 2008 |
|
This change supports the new .WHEN method for Opal variables.
|
| 530.14 Speed up EVALREADER processing |
| Mon, January 28 2008 |
|
Previously, to control CPU usage, certain SUPERVISOR EVALs that invoked EVREADER subtasks to process LOG and TAPEDB contexts, would have continually released the processor after processing only 20 records. This minimum value has now been increased to a new default of 200 records allowing the faster completion of these EVAL requests. Note that the limit can be controlled by changing the Supervisor configuration variable SUP_TIMERSLICE using the INSTALL utility's CONFIG menu.
|
| 530.13 Support for WHEN context |
| Mon, January 28 2008 |
|
A new context called WHEN has been implemented for SUPERVISOR. This is
primarily an event-based context that allows SUPERVISOR to monitor all
WHEN and DO activities such as sessions starting and terminating, with
reporting for those that have faulted. The full set of attributes can
be viewed using HELP ATTR =:WHEN.
WHEN context OPAL programs may be used with the WHEN command (the type
of event is designated by the EVENTTYPE attribute) and also with EVAL.
For HTTP WHEN programs, a special EVENTTYPE with the mnemonic WHTTPBUSY
has been added; this allows SUPERVISOR to detect a browser HTTP client
request that has become queued because all the active HTTP WHENs are
currently busy.
Both the COUNT and OBJECTS functions in OPAL will accept WHEN context
calls, returning a list of slot numbers in the latter case. WHEN
programs may also be executed standalone, using the DO command, by
passing a valid slot number as parameter.
WHEN (WHEN:TRUE) DO WHENODTS
DO WHENODTS 1,22,23
EVAL (WHEN:ODTSNAME INCL "META") DO (SHOW(SLOT,,SITUNAME,,ODTSNAME))
|
| 530.12 FindWHEN |
| Thu, January 24 2008 |
|
Internal Change.
|
| 530.11 Limit COPYWRITE library linkages |
| Mon, January 21 2008 |
|
This change helps to limit the number of COPYWRITE library link and
delink operations when accessing LibMaintdIr attribute information for
FLEX disk farms and CD images in a TAPEDB EVAL. Previously, there
would have been a link/delink pair for each tape access.
|
| 530.10 Correct EVAL MX vs. COUNT PRINTS conflict |
| Mon, January 21 2008 |
|
If a COUNT(PRINTS:..) function was executed inside a MX-based EVAL,
SUPERVISOR could fault with INTEGER OVERFLOW @ 93650000 because of
corruption in the mix number list returned. This problem would only
occur if SUPERVISOR had not already earlier processed any PRINTS
request (via COUNT or EVAL).
|
| 530.09 Allow multiple HTTP client WHENs |
| Tue, January 15 2008 |
|
SUPERVISOR will now permit multiple WHENS with the same name to run
concurrently as long as the WHENs are of the HTTP context. This change
assists SUPERVISOR's web server performance by allowing multiple HTTP
WHENS to handle more than one client request concurrently.
Note that each WHEN can be deactivated using WHEN <situ> DO or the DO -
#<slot> command.
|
| 530.08 Provide warning message for long MARC responses |
| Tue, January 8 2008 |
|
SUPERVISOR will now append a single-line warning message to output
generated for MARC station responses which are greater than the
MARC-enforced limit of 30,000 lines:
-- WARNING:THIS MARC RESPONSE HAS BEEN TRUNCATED --
This only occurs for MARC output generated by Metalogic's TTINTERFACE
MARC Directive and no other SUPERVISOR interfaces are affected.
|
| 530.07 Fix OBJECTS and COUNT handling |
| Thu, January 3 2008 |
|
The recent limits enhancement to the EVAL command described in DNote
530.03 caused all COUNT function calls (regardless of context) to
return zero if used in any standalone DO or DISPLAY program.
Similarly, all OBJECTS calls would always return empty string values.
This problem is now fixed.
|
| 530.06 Fix WAIT(MSG) bug |
| Sun, December 23 2007 |
|
The change described by DNote 530.02 caused problems with ODTSEQUENCES
that used the WAIT function waiting for specific message e.g.
WAIT("TEST" ISIN TEXT). This feature, which would have only worked if
other MSG WHENs were already active, will now work correctly.
|
| 530.05 DUMAP implementation |
| Sun, December 23 2007 |
|
This change supports the new OPAL attribute called DUMAP which returns
a Disk Map of a specified disk family using a user-specified number of
chunks. DUMAP returns an array of elements signifying the type of area
for an individual chunk i.e. A (Available), M (Moveable) and F
(Fixed). This attribute is meant for use with the Metalogic Web Server
implementation.
|
| 530.04 Correct Log context mismatch checking |
| Sun, December 23 2007 |
|
Previously, SUPERVISOR did not check the SITU and ODTS types for all
Log-based contexts when used with the EVAL and WHEN commands. This
meant it was possible, for example, to link a FILECLOSE SITU with a
LOGBOJ ODTS which caused a NOT YET IMPLEMENTED error when the ODTS was
first executed. Now, SUPERVISOR will verify that the contexts match
during command validation giving the following error if there is a
mismatch:
TYPE OF ODT SEQUENCE MUST MATCH TYPE OF SITUATION
|
| 530.03 Allow ranges as well as limits for Evals |
| Fri, December 21 2007 |
|
The Eval and When commands will now accept ranges as well as limits for
evals and entries.
Ex. Eval Mysitu [100-200] Do Myodts
Will skip the first 99 objects which would have bee passed to the situation and only evaluate from 100 to 200.
Eval Mysitu DO Myodts[50-100]
Will ignore the first 49 objects passed by the Situ.
The range will always equate to at least one object. So [100-10] will
be treated as [100-100]
For Odts of PD context a range can now be specified.
Ex. DO BOB [5-9] MYFILES/=
or
DO BOB [100] (*)=LISTING=:FLat
|
| 530.02 Increase maximum number of OPAL contexts |
| Mon, December 17 2007 |
|
This internal change offers no customer enhancements to Metalogic
software. However, its effect is to permit more OPAL program contexts
to be implemented for SUPERVISOR up to a new maximum of 47 (the current
limit is 31) and will cause the SCHEDULE version to be incremented to
17 even though no actual conversion will occur. This means that
earlier versions of SUPERVISOR will not be able to use SCHEDULE files
touched by this current release.
This change requires all HTTP context programs to be recompiled or
re-entered. If this is not done, any active HTTP Opals will fail with
' a 'BAD WAIT 0' error.
|
| 530.01 SHOW PERM/GLOBAL enhancements |
| Mon, December 17 2007 |
|
The SHOW PERM and SHOW GLOBALS commands have been enhanced to allow a
wild-card pattern to filter the list of variables returned. If a
normal identifier is used instead of a wild-card in the SHOW PERM
command, SUPERVISOR will attempt to retrieve both the real and string
values for that specific variable name.
The modified syntax for both SHOW variants is shown below:
--- SHOW --+-- GLOBAL ---+--------+---------------+--------------|
| | | |
+-- PERM -----+ +-- <Pattern> --+
The response to a SHOW PERM command will now sort the real and string
lists by variable name in ascending order.
For example:
SHOW GLOBAL META=
SHOW PERM =TEST=
SHOW PERM SPECIFICPERM
|
| 521.50 Fix a string protect error in Mail |
| Tue, December 4 2007 |
|
Using the mail function could in very rare circumstances cause
a string protect error. This problem has been corrected.
Also supports an internal change, moving Record defines from
opaltapelib to INCLUDE/META.
|
| 521.49 Internal change |
| Mon, December 3 2007 |
|
Use new INCLUDE/META
|
| 521.48 Support for DUMAP attribute |
| Fri, November 30 2007 |
|
Internal Metalogic change in preparation for the new Supervisor DUMAP
attribute.
|
| 521.47 More MYSELF log attributes |
| Mon, November 26 2007 |
|
The use of the new MYSELF log variants discussed by DNote 521.44 will
no longer cause STAK UNDERFLO errors when used in a non-log based
context.
This change also supports two new MYSELF parameters, FIRSTLOGNO and
LASTLOGNO, available for use by log-based EVALs. Please see OPAL
GSTABLEGEN DNote 520.57 for more details.
|
| 521.46 Add help for SO NoStats and NoENterlist |
| Mon, November 26 2007 |
|
Add help for the SO options NoStats and NoEnterList
|
| 521.45 Record task cpu and fix SHOW UTIL bug |
| Mon, November 19 2007 |
|
The figure shown for 'Command Input processing' in a SHOW UTIL response
was being incorrectly adjusted after every ENTER command, causing its
value and percentage figure to be inaccurate. This problem has now
been fixed.
SUPERVISOR will now record CPU usage statistics for its housekeeping processes such as SAVE SCHEDULE, ENTER SCHEDULE, BACKUP SCHEDULE etc. This accumulated value will now appear in a SHOW UTIL response in the 'Other processes' category but is not included in SUPERVISOR's Total Processor Time nor used in percentage calculations. Note that this value also includes processes that are currently active.
|
| 521.44 Additional log attributes |
| Mon, November 19 2007 |
|
Various new generic LOG attributes have been implemented. This subset
includes LOGSTARTDAY, LOGSTARTTIME, LOGSTARTTS, LOGENDDAY, LOGENDTIME,
LOGENDTS; these attributes may be used for both log-based EVAL and WHEN
Opal scripts and returns specific SUMLOG timestamp information. This
change also includes LOGTS and MSGTS (for the MSG context) that returns
timestamp information in the form 'HH:MM:SS,DD/MM/YY".
Three new MYSELF parameters called LASTLOGDAY, LASTLOGTIME and
LOGRECORDS have been implemented. These are useful for EVAL scripts
and return time and records read information for the WHEN/EVAL in
process.
|
| 521.43 Correct usercode logging in MCS BOS and EOS |
| Wed, November 7 2007 |
|
Supervisor-generated log entries for MCS session entries will now have
the correct standard-form representation for the session USERCODE i.e.
a value of 1 in the qualification byte. This value signifies that no
usercode or asterisk precedes the display form.
|
| 521.42 String protect error on old MCPs |
| Wed, November 7 2007 |
|
On MCPs earlier than 4.7 Supervisor would fault with a String Protect
error, if the config variable SUP_SCHEDULEFAm was not set. Setting
this variable using META/INSTALL CONFIG would avoid the problem.
|
| 521.41 Handle MAIL and TP LOG requests locally |
| Tue, November 6 2007 |
|
Previously, the MAIL LOG and TP LOG commands were processed by the MAILLIB library and SUPERVISOR's TAPELIBUPDATER process. This has now been changed; SUPERVISOR will now detect these specific LOG commands and handle them locally. This allows future changes to LOG processing to be locally restricted to one application.
New extensions to the LOG command have been added to allow
specification of time range details. Specifically, the BACK modifier
is used as part of the <DateTimeRange> component in the general LOG
command and the revised syntax is shown below:
-- LOG -----+----------------------------------+------------>>>
+-- <Category> --------------------+
+-- <DateTimeRange> ---------------+
<DateTimeRange>
--+-- <hhmm> --+---------------+-+----------------------------+-|
| +- <dm/mm/yy> --+ +- - <hhmm> --+--------------|
| | | +- <dd/mm/yy> -+
+-- BACK <nnnn> -+-----------+ +- FOR <nnnn> ---+-----------+
+- <Units> -+ +- <Units> -+
The BACK and FOR modifiers respectively allow specific start and end
time points to be more easily assigned without having to use explicit
values. The <Units> types are as follows:
<Units>
---+-- DAYS ------+----------------------------------------|
+-- HOURS -----+
+-- HRS -------+
+-- MINS ------+
+-- MINUTES ---+
By default, MINUTES will be used if no <Units> is given. A minimum of
one character may be used to specify any <Units> type. BACK and FOR
may be used in any combination with normal date and times.
LOG BACK 2 H FOR 10 MIN
LOG BACK 20 FIND TERMINATION
LOG 0800 1/1/07 FOR 2 DAYS
Since SUPERVISOR is handling both the MAIL and TP log commands locally,
these changes universally apply to the LOG handling for these
interfaces too.
|
| 521.40 General logging improvements and fix FOR log entries |
| Tue, November 6 2007 |
|
Significant improvements have been made to the logging of commands in
SUPERVISOR's log files with better origin identification ie. DCKEYIN,
SETSTATUS programs and BNA TT commands. A problem where a FOR command
could have led to corrupted log entries has been addressed.
This change also fixes a GET/SETSTATUS ERROR #38 fault when SUPERVISOR
executed internal PR and LJ ODT commands on MCP 53.1 Field Test.
|
| 521.39 Internal Change |
| Wed, October 24 2007 |
|
Internal change.
|
| 521.38 AutoLink |
| Tue, October 23 2007 |
|
Check HTTP Dialog is Linked before access, to avoid Missing PCW fault
in Try Block.
|
| 521.37 CALL DO in PD Context |
| Mon, October 22 2007 |
|
CALL DO can now be used in a PD context, however large searches will
use significantly more CPU time for ODTS with a CALL DO in them because
all attributes have to be returned in the PD object.
Some cleanup has been enabled by GSTableGen 520.53
|
| 521.36 Correct WFL function tracking of ODT jobs |
| Mon, October 15 2007 |
|
Previously, any WFL job executed by an OPAL ODT statement caused its
messages to be inadvertently retained and passed to subsequent usage of
the Opal WFL function. These job message would then be handled inside
an ON JOBMESSAGE block. This behaviour has been corrected.
|
| 521.35 Correct FOR handling with no password validatio |
| Wed, October 10 2007 |
|
If the NODEFAULTUSE USERDATA attribute is removed from the SUPERVISOR usercode then FOR activities may be specified for certain usercodes without knowing the passwords (see DNote 450.20 and 450.29). This feature, similar to that adopted by SYSTEM/ASSISTANT, was inadvertently deactivated by earlier changes for the TT function causing all FOR's to fail with INVALID USERCODE. This problem has been corrected.
|
| 521.34 Fix DIVIDE BY ZERO using HELP in TT |
| Wed, October 10 2007 |
|
If the HELP command or any erroneous version of that command was used
inside an OPAL TT or KEYIN function call, SUPERVISOR would fault with
DIVIDE BY ZERO error at 61590400. This problem has been fixed.
|
| 521.33 Internal PD Format Change |
| Wed, October 3 2007 |
|
Updates Supervisor to use the new format for PD objects.
|
| 521.32 Fix corrupt EVAL message and time spec bug |
| Wed, October 3 2007 |
|
The change applied by DNote 521.31 caused some EVAL and WHEN log
messages to be inadvertently corrupted. This problem has been fixed.
Further, if an end time was specified in a log EVAL time range that was executed in the same minute as that end time, e.g. the following EVAL examples would fail to find any log entries:
EVAL LOG [@ BACK 10 MINS FOR 10 MINS] DO LOG (always fails)
EVAL LOG [@1020-1030] DO LOG (fails at 10:30)
In the first example, if the calculated end time was one minute earlier
or later e.g. 'FOR 9 MINS' or 'FOR 11 MINS' then the EVAL would always
work correctly. Specifying any time other than 10:30 in the second
example would also work. This inconsistency and some time range
checking anomalies have been corrected.
|
| 521.31 More logging fixes |
| Mon, October 1 2007 |
|
Internal Metalogic change. Further improvements have been made to the
logging mechanism, as yet unavailable for customer use, that was
implemented in DNote 521.26. This change also improved the formatting
of several messages dealing with the caching of changes to active OPAL
programs.
A problem where SUPERVISOR would incorrectly continue to restart itself
after faulting during initialisation has also been addressed.
|
| 521.30 Clean up LOGGING problems |
| Wed, September 12 2007 |
|
Internal Metalogic change. Various problems have been resolved with
the new logging mechanisms described in DNote 521.26.
|
| 521.29 Increase STACKWAP stack limit |
| Mon, September 10 2007 |
|
This change corrects the problem of possible ILLEGAL STACKSWAP faults
when calling nested ODTSEQUENCES via CALL DO.
|
| 521.28 PER No Device |
| Wed, September 5 2007 |
|
Allow DO of PER ODTS without Device Type.
HELP ATT <pattern> : SYSTEM now lists only the basic set of SYSTEM
Context attributes. HELP ATT <pattern> : SYSTEM ALL lists all
SYSTEM Context attributes, which includes NAP, VL, PD and METER.
|
| 521.27 Fix INVALID OPERATOR at 98741902 for EVAL response |
| Wed, September 5 2007 |
|
The change described in DNote 521.25 caused an INAVLID OP at 98741902 when building the response for certain types of EVAL commands used within a TT function. This problem only occurred when the TT EVAL used the Opal SHOW statement and is now fixed.
A second problem where MX-based EVAL commands, issued via the TT function, could have failed to call any associated DO if that script used code that caused a WAIT to be excuted. This problem is also fixed.
|
| 521.26 Implement Supervisor logging |
| Wed, September 5 2007 |
|
The logging mechanisms recently implemented for MAILLIB and TRIM have now been applied for SUPERVISOR but in test mode only. At this stage, logging can only be activated at Metalogic discretion. Further information will be made available when logging is fully implemented.
|
| 521.25 Protect queued slot notices after TT |
| Tue, September 4 2007 |
|
Previously, calls on the TT function that were terminated because of a
max DO limit, max EVAL limit or log processing restrictions did not
return a string description into the function result. Instead, TT
would return an empty string and could have caused Supervisor to
discard pending notices that were queued for the TT caller slot. This
problem is now fixed; a meaningful text is now returned in the TT
result.
|
| 521.24 Message Clarity |
| Fri, August 31 2007 |
|
Some output error messages for USER and PD contexts have been enhanced.
|
| 521.23 Metering attributes and system attributes |
| Thu, August 30 2007 |
|
If a large log record ( > 2733 words ) was processed by a Supervisor
LOG When or Eval then Metering attributes and many system attributes
(like MCPTIME) would subsequently return 0 or empty strings.
This problem has been corrected.
|
| 521.22 Clarify SYSLOG and SYSDIR AF usage |
| Mon, August 27 2007 |
|
Since the replacement of the LOG keyword by the SYSLOG and DIR by SYSDIR, it was not possible to delete old AFTER entries that had been originally assigned using LOG or DIR. Note that both SYSDIR and SYSLOG are special SUPERVISOR commands that allow the LOGANALYZER and FILEDATA utilities to be run with an associated job stack.
This problem occurred because an AF ? incorrectly showed these
activities with the old keywords. Although the activity could be
deleted using the replacement commands, this was not obvious and
confusing.
Now, AFTER activities that use SYSLOG or SYSDIR will be correctly
displayed and deleted. Note that both LOG and DIR commands may still
be used with any AFTER command. This change also addresses several
issues with case and deblanking when deleting scheduled AF activities.
|
| 521.21 Extend TTLASTERROR to integer with mnemonic value |
| Mon, August 27 2007 |
|
The TTLASTERROR attribute will now return an integer mnemonic value instead of a simple boolean as the result of all Opal TT calls. The list of available mnemonics may be seen in the response to a HELP ATT TTLASTERROR command and are documented below:
TTOK Value 0 Good action
TTNOLOG Value 1 No SUMLOG found
TTLOGIO Value 2 SUMLOG read error
TTMAXLOGS Value 3 Maximum SUMLOGS processed
TTASZERR Value 4 Internal SUPERVISOR problem
TTNONEXTLOG Value 5 Next SUMLOG unavailable
TTMAXEVAL Value 6 Maximum SITUATION evals reached
TTMAXDO Value 7 Maximum ODTSEQUENCE entries exceeded
TTFLEXERR Value 98 FLEX error
TTCMDERR Value 99 General Supervisor command error
|
| 521.20 Flex Failures |
| Fri, August 24 2007 |
|
If FLEX Inquiry terminates, any running Flex-dependent PD Displays will
be terminated. If the FLEX Inquiry is Dsed, all Flex-dependent OPALs
will get an error message with the DS Reason.
A rare timing error when Flex was scanning slow CD devices has been
corrected.
|
| 521.19 Allow FOR duration with EVAL BACK modifier |
| Mon, August 20 2007 |
|
The use of the BACK modifier with a log EVAL specification, described in SUPERVISOR DNote 520.65, will now permit an optional duration for the scan of the sumlog(s) using the FOR modifier. For example:
EVAL LOG [@BACK 10 MINS FOR 90 SECONDS]
EVAL LOG [@BACK 2 DAYS FOR 1 DAY]
EVAL LOG [@17:30 FOR 30 SECS]
The default time unit is SECONDS but HRS, HOURS, MINS, MINUTEs and DAYS will override this type. As can be seen in the last example, this syntax may also be used to simply construct a scan end date/time without having to specify the full date and time. Using BACK and FOR, SUPERVISOR can automatically generate programmable EVALs without knowing the current date and time.
|
| 521.18 Allow DO lists for USER and VL contexts |
| Mon, August 20 2007 |
|
Previously, the VL context could only be used with the EVAL command or by an OBJECTS call. Now, standalone VL ODTSEQUENCEs can be run in the same way as the TAPEDB variant by using the DO or DISPLAY command. Information from the MCP's Volume Library and Flex volume statistics will be automatically merged for individual volumes that appear in both environments. Multiple volume serial numbers may be passed as a list delimited by a space or comma.
For example:
TT DO (VL:SHOW(SERIALNO,,VLNAME 17,,BACKUPREFS)) DF0002,CI0005
DF0002 CDIMAGE_A 15
CI0005 CI0005M2007176A 27
Note that only a serial number need be used and no volume kind is
necessary. SUPERVISOR will automatically interrogate the Volume
Library for each serialnumber using the available kinds of DISK, PACK
and TAPE and will execute the ODTSEQUENCE if any eligible entry is
found. This means that it is possible for multiple calls to be
executed for a serial number that has two different volume entries.
Similarly, USER context ODTSEQUENCES will now also accept an usercode
list when run with a DO command. Previously, only one usercode was
permitted. For example, assuming the Opal script is running with a
privileged usercode:
TT / (USER: USER,, FAMILY,,ACCESSCODELIST) META,FLEX,TEST
META DISK=DEV OTHERWISE DISK IPP/?
FLEX DISK = DEV OTHERWISE DISK RULES/?
TEST DISK = VMSA OTHERWISE DISK
Invalid usercodes in the parameter list will each generate an error
message but not force the DO or DISPLAY to abort.
|
| 521.17 Additional config variable protection |
| Thu, August 16 2007 |
|
In conjunction with the change described by DNote 521.16, SUPERVISOR
now removes any leading spaces from all Magus configuration variables
during its initialization phase. Previously, such leading spaces could
have caused problems for some USE settings.
|
| 521.16 Protect SUPERVISOR globals after config switch |
| Tue, August 14 2007 |
|
After the execution of a Magus configuration switch using the USE
FAMILY .. FOR CONFIG command, it was possible for some SUPERVISOR
globals to retain their previous values if the variables were NOT
present in the switched configuration file. This problem is now fixed.
|
| 521.15 Fix INVALID INDEX @ 98027150 with TT |
| Mon, August 6 2007 |
|
The change described in DNote 521.13 inadvertently caused an INVALID
INDEX @ 98027150 when using inline OPAL commands inside a TT function
call. This fix corrects this problem.
|
| 521.14 Correct HELP ATTR handling of PD context |
| Thu, August 2 2007 |
|
The HELP ATTR =:PD command will now show attributes belonging to the
new PD attribute set and not those from SYSTEM PD. In addition, the
HELP ATTR command has been enhanced to better handle the various
subsets belonging to the SYSTEM context. SUPERVISOR will now accept
the following modifiers with the HELP ATTR command:
----- HELP ATTR -- <pattern> -+-----------------------------+-|
+- : --+-- <context> ---------+
+-- METER -------------+
+-- NAP ---------------+
+-- SYSPD -------------+
+-- SYSTEM -+----------+
| +-- METER -+
| +-- NAP ---+
| +-- PD ----+
| +-- VL ----+
+-- SYSVL -------------+
The keywords SYSPD, SYSVL, METER and NAP are all shorthand mnemonics
for the equivalent SYSTEM attributes subset; the SYSTEM modifier can be
considered noise for both METER and NAP subsets.
|
| 521.13 Increase max INLINE chars to 45000 |
| Thu, August 2 2007 |
|
The previous limit of 4096 characters for any 'inline' OPAL EVAL or
WHEN combination has now been increased to 45,000 characters. This
allows OPAL programs to generate very large in-line scripts that can be
used, for example, within the TT function. Please note that, despite
this large increase, there is still a possibility that a compiled
inline script may generate an 'OPAL program >255 sectors error'.
|
| 521.12 Fix TT corruption of caller slot |
| Wed, July 25 2007 |
|
Previously, it was possible for certain TT calls to cause SUPERVISOR to fault with REQUESTED MEMORY GREATER THAN nnnnn WORDS @ 98259556 after exiting back to the calling OPAL. The fault depended on a combination of factors - the OPAL context of the caller had to be MSG or HTTP, the usage of a log-based EVAL command within the TT function and reference to context attributes by the caller after the TT. This problem has now been fixed.
|
| 521.11 Reinstate internal chargecode mechanisms |
| Wed, July 25 2007 |
|
The change discussed in DNote 520.16 regarding CHARGECODE control on SUPERVISOR tasks had the unintended side-effect of replacing the chargecode on all OPAL script executions with the USE CHARGE setting or, if this was not set, an empty string. This made identification of MCS logon and logoff records to OPAL scripts very difficult.
This behaviour has been corrected; all DO, EVAL and WHEN sessions will now have the appropriate chargecode identification allocated in all logon and logoff records, regardless of the setting of USE CHARGE.
|
| 521.10 Protect RESIZE errors after environment TT switch |
| Tue, July 24 2007 |
|
When attempting to switch heap environment information back to the
caller of a TT function, SUPERVISOR would fault with a REQUESTED MEMORY
SIZE GREATER THAN 65535 WORDS @ 91614000 if any string variables in the
OPAL heap were longer than 393,209 characters. This problem is now
fixed; strings up to the maximum of 2 million characters will be passed
correctly.
|
| 521.09 Handle all queues in JOBQUEUE evals |
| Tue, July 24 2007 |
|
Previously, SUPERVISOR would always fail to include the jobs in the
most recently added job queue (as seen in a SQ response) when handling
a JOBQUEUE EVAL. This problem is now fixed.
Further, after a SUPERVISOR restart caused by an internal failure, it
was possible for a HTTP WHEN to be restarted with an associated
usercode even though the WHEN was originally invoked without one. This
problem has been corrected.
|
| 521.08 Fix TAPEDB EVALs from TT function |
| Sat, July 21 2007 |
|
SUPERVISOR will now correctly handle EVALS in the TAPEDB context when
called from the Opal TT function. Depending how it was invoked, such
EVAL operations would find no entries or hang indefinitely marked with
zero evals. As a consequence, the calling Opal that invoked the TT
would then also be hung, marked as 'WAIT TT #nn', and both would
require manual termination. These problems have now been fixed.
|
| 521.07 Allow ON <day>with AF command for TRIM-only sites |
| Thu, July 19 2007 |
|
The AFTER modifier 'ON <day of week>' is now permitted for sites that
run with a TRIM-only licence. Adding scheduled activites using this
modifier were previously restricted even though interrogations and
deletions were permitted.
|
| 521.06 Improve PD Error Messages |
| Sat, July 14 2007 |
|
Make Send_Ary more robust and avoid a STATUS_CHANGE_REQUEST warning.
|
| 521.05 Trap FLEX error messages for TT calls |
| Wed, July 11 2007 |
|
The TT Opal function will now capture error messages from OBJECT/FLEX
when a PD context EVAL or DO is executed. Previously, only messages
such as 'DO WILL BE DONE' were returned to TT and later errors returned
by FLEX were not passed back to TT. This problem has been fixed.
|
| 521.04 Fix EXTERNALCOMMAND hangs |
| Wed, July 11 2007 |
|
After being called by a client program, the EXTERNALCOMMAND entrypoint
in the SUPERVISOR library did not complete correctly for certain
SUPERVISOR commands. Although the command was processed, the caller
would wait unsuccessfully for a reply and would eventually timeout
after 60 seconds. This problem is now fixed.
If EXTERNALCOMMAND is used to execute an OPAL DISPLAY program, all the
output generated by that DISPLAY is now returned to the calling
program. Similarly, if a DO executes any SHOW statements, the output
will also be returned to the caller - previously only the 'DO WILL BE
DONE' message was returned. This feature allows an external program to
execute OPAL programs that can return data to the caller.
|
| 521.03 Improve restart procedure after critical fault |
| Wed, July 11 2007 |
|
Although the instances of fatal SUPERVISOR failures are very rare,
SUPERVISOR did not always restart itself after certain types of
internal program faults. In particular, restart would not take place
if a failure occurred in the recovery code being executed to handle a
previous fault. These issues have now been addressed.
|
| 521.02 EV ? Keeps Display Output |
| Tue, July 10 2007 |
|
A TT EV ? will not flush output from a Display, giving a check if a
Display takes a long time to respond.
Error messages from FLEX will no longer leave the slot occupied.
A duplicated procedure in Supervisor shut-down has been rationalised.
|
| 521.01 Fix patterned PD file requests |
| Fri, July 6 2007 |
|
The change applied in SUPERVISOR DNote 520.99 for limited PD DO or DISPLAY requests did not fix the case for GETSTATUS file searches using a wild card pattern. Although the request worked correctly, FLEX would still generate many extraneous "Send_Ary Exceeded Do/Eval Limit" messages. This behaviour has been corrected.
Also, a timing problem where PD DISPLAY programs could hang
indefinitely, marked as 'WAIT FLEX', has been fixed.
|