Subject: | |
From: | |
Reply To: | |
Date: | Wed, 10 Nov 1999 13:49:02 -0800 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
hi all -
(this is a 2nd attempt at trying to solve a mysterious (but
aren't they all) problem)....
longs wrote a process which prints to a (serial, non-spooled
) printer through our own spooler. This process has been in
use for many years (read this as 10 years or more). Since
upgrading to MPE/iX 5.5 pp6, we have been having a problem
with the process recovering properly after an unexpected
system failure (like a power outage.) Prior to 5.5pp6, a
simple restart of the machine was all that was needed.
fwiw, it still works fine on 275 Classic MPE/V machines
running MPE/V 4.0.
(last time i brought this up i got swamped with 'get a ups'
solutions. yeah yeah i know...so let's not go down that
path again....)
to control the spooling, the process uses Variable length
Ascii Message files. The condition is, that after the
system failure, the files will (frequently) show a zero EOF,
but if you DSCOPY them into another file the EOF will
change. The one example I have is of a EOF of 2 *after* the
DSCOPY. The DSCOPY shows zero records have been
transferred. If an application tries to use the spooling
process (to write to the message files), it will abort
because mpe thinks the file is corrupt. Using FSCHECK and
doing a CHECKFILE produces no errors.
when this originally occured, we contacted hprc about any
known problems with message files when running 5.5 with
powerpatch 6. they said no.
Any help or suggestions would be
appreciated. - d
===========================
Here are some cut and pasted examples of the DSCOPY example
from above:
(oldlt115 is the 'corrupted' message file....)
:listf oldlt115,
FILENAME CODE ------------LOGICAL RECORD-----------
----SPACE----
SIZE TYP EOF LIMIT R/B
SECTORS #X MX
OLDLT115 3210B VAM 0 99 3
1248 1 1
then FCOPY a file with 10 records into this file:
:listf oldlt@,2
ACCOUNT= SYS GROUP= PUB
FILENAME CODE ------------LOGICAL RECORD-----------
----SPACE----
SIZE TYP EOF LIMIT R/B
SECTORS #X MX
OLDLT052 3210B VA 10 10 1
128 1 6
OLDLT115 3210B VAM 0 99 3
1248 1 1
(just to prove there's really 10 records in oldlt052....)
:dscopy oldlt052;oldltsav
Source file: OLDLT052.PUB.SYS
Target file: OLDLTSAV.PUB.SYS
10 logical record(s) transferred.
END OF SUBSYSTEM
:file oldltbad=oldlt115;acc=append
:fcopy from=oldlt052;to=*oldltbad
HP31900A.05.02 FILE COPIER (C) HEWLETT-PACKARD CO. 1990
EOF FOUND IN FROMFILE AFTER RECORD 9
10 RECORDS PROCESSED *** 0 ERRORS
END OF SUBSYSTEM
:listf oldlt@,2
ACCOUNT= SYS GROUP= PUB
FILENAME CODE ------------LOGICAL RECORD-----------
----SPACE----
SIZE TYP EOF LIMIT R/B
SECTORS #X MX
OLDLT052 3210B VA 10 10 1
128 1 6
OLDLT115 3210B VAM 10 99 3
1248 1 1
OLDLTSAV 3210B VA 10 10 1
128 1 6
DSCOPY the OLDLT115 file to a different name and it comes up
with an eof of 12!
:dscopy oldlt115;oldltfix
Source file: OLDLT115.PUB.SYS
Target file: OLDLTFIX.PUB.SYS
10 logical record(s) transferred. <<<<<<<<<<<<<<<<<
END OF SUBSYSTEM
:listf oldlt@,2
ACCOUNT= SYS GROUP= PUB
FILENAME CODE ------------LOGICAL RECORD-----------
----SPACE----
SIZE TYP EOF LIMIT R/B
SECTORS #X MX
OLDLT052 3210B VA 10 10 1
128 1 6
OLDLT115 3210B VAM 10 99 3
1248 1 1
OLDLTFIX 3210B VAM 12 102 3
160 1 1 <<<<<<<<<<<<<<
OLDLTSAV 3210B VA 10 10 1
128 1 6
--
Donna Garverick Sr. System Programmer
925-210-6631 [log in to unmask]
>>>MY opinions, not Longs Drug Stores'<<<
|
|
|