- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- DCL error checking
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 12:50 AM
тАО03-06-2007 12:50 AM
At the top of the script I have:
on error then goto done
In the backup loop I have
on warning then continue
The other day, we had a parity error, and the backup just kept going. Parity is a fatal error, why did it not execute the 'On Error' statement.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:25 AM
тАО03-06-2007 01:25 AM
Re: DCL error checking
command procedure with a vague description of
its behavior.
BACKUP /NOASSIST?
> Parity is a fatal error [...]
Perhaps not to DCL. What did BACKUP do when
the error occurred? What was its exit
status (if it actually exited)?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:35 AM
тАО03-06-2007 01:35 AM
SolutionIf you specified an error condition as the condition parameter,
the action is taken when errors equal to or greater than the
specified level of error occur.
I would say your "on warning then continue" superceded the "on error then goto done" that you executed beforehand.
If you really want to control this better, use SET NOON then test the status code after each backup command.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:38 AM
тАО03-06-2007 01:38 AM
Re: DCL error checking
%BACKUP-S-COPIED, copied $1$DGA111:[UNV$I.;1
%BACKUP-S-COPIED, copied $1$DGA111:[UNV]BOSFE.COM;1
%BACKUP-E-FATALERR, fatal error on MKC600:[]FM1627.BCK;
-SYSTEM-F-PARITY, parity error
The backup loop just kept going, even though it was still getting more fatal errors. I received 1 of the positioning errors for each directory in the loop, after the initial parity error
%BACKUP-F-POSITERR, error positioning MKC600:[000000]FM1627.BCK;
-SYSTEM-F-OPINCOMPL, operation is incomplete
%BACKUP-F-POSITERR, error positioning MKC600:[000000]FM1627.BCK;
-SYSTEM-F-OPINCOMPL, operation is incomplete
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:39 AM
тАО03-06-2007 01:39 AM
Re: DCL error checking
regards
Mobeen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:42 AM
тАО03-06-2007 01:42 AM
Re: DCL error checking
that I ever read the HELP ON * carefully
before.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 01:44 AM
тАО03-06-2007 01:44 AM
Re: DCL error checking
@'tmp'/out=...
After the backup the procedure scans through the output file to check for errors and other useful information (e.g. compression rates).
regards Kalle
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-06-2007 02:03 AM
тАО03-06-2007 02:03 AM
Re: DCL error checking
CLCC1> @a
$ set ver
$ a = 1
$ on warning then continue
$ on error then goto err
$ backup x.zzz x.sav/sav
%BACKUP-W-NOFILES, no files selected from SYS$USERS:[EZAMORA]X.ZZZ;*
$ write sys$output "continued"
continued
$ exit
CLCC1> @a
$ set ver
$ a = 1
$ on warning then continue
$ on error then goto err
$ backup x.x mkz666:x.sav/sav
%BACKUP-F-PARSE, error opening MKZ666:[EZAMORA]X.SAV;
-RMS-F-DEV, error in device name or inappropriate device type for operation
$ err:
$ write sys$output "went to err"
went to err
$ exit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-16-2007 08:36 AM
тАО03-16-2007 08:36 AM
Re: DCL error checking
if you want different banches teken on different error levels in DCL, you will simply have to specify them in ascending order of severity (as per the HELP text reproduced by Edgar)
$ on warning then
$ on error then
$ on severe_error then
The latter supercedes any former, but only on greater severity.
Reverse the order, and the later supercedes all previous.
hth
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-16-2007 09:30 AM
тАО03-16-2007 09:30 AM
Re: DCL error checking
Assume the following example and note the following deliberately bogus command xyzzy. This bogus verb should trigger a warning error.
$ on warning then goto w
$ on error then goto e
$ on severe_error then goto s
$ xyzzy
$ write sys$output "done"
$ exit
$w: write sys$output "warning"
$ exit
$e: write sys$output "error"
$ exit
$s: write sys$output "severe"
$ exit
If there were multiple levels, you'd expect to end up at the warning label here, but you actually end up at the done label -- this because the warning severity is less than the most recently declared ON severity level.
If what had been posted earlier had a goto rather than the continue, this behavior might have been more obvious. In the above DCL example, not that the warning branch is not taken; the processing falls through to done.
I might well be wrong here, as this is DCL after all...