CALL FZDIA CALL FZIN (LUN,IXDIV,LSUP,JBIAS,CHOPT,NWUH,IUHEAD) CALL FZCOPY (LUNIN,LUNOUT,IEVT,CHOPT,NIO,NWUH,IUHEAD)
If an exception is found by one of the routines which handle an FZIN request, or an input request for FZCOPY, it stores information into which is then handled by FZDIA, passing the relevant information back to the caller.
The primary status information is :
IQUEST(1)= -1 BAD CALLING : options T/A/D given, but no pending d/s -2 NOT ENOUGH SPACE in the store to receive the data and the table -3 BAD DATA, data corrupted or file written by user output routine not yet fully debugged -4 BAD CONSTRUCTION, maybe not a ZEBRA file -5 READ ERROR, error return from the Fortran READ or maybe some other system read routine; the error code, if any, is in IQUEST(14) -6 for 2 consecutive errors -7 for 3 consecutive errors -8 -- etc -- IQUEST(2)= number of logical records read so far IQUEST(3)= number of physical records (exchange file format only)
The detailed error information is in :
IQUEST(11)= -1, ..., -5 as above (12)= error number JERROR as shown below (13)= LRTYP, type of the last record read : 0 : not known 1 : start or end of run 2 : pilot record for start event 3 : pilot record 4 : pilot continuation record (native file format) 4 : bank material continuation record (exchange fifo) 5 or 6 : dummy padding record 7 : bank material record (native file format) 8 : last bank material record in the d/s (native fifo) (14->17)= further information related to the error
FZDIA prints an error message, showing LUN
and the contents of ,
and returns to the caller, expecting he will test on IQUEST(1)
.
In the following the error numbers JERROR
are shown, giving the name
of the lower level routine which detected the error, and the meaning
of IQUEST(14...)
if they contain useful further information.
JERROR = 10 FZIN called for Channel or Memory mode, user routine or user memory not yet connected JERROR = 11 multiple options T A D not allowed JERROR = 12 no pending d/s for entry with T A D options JERROR = 13 no segment table for entry with D option : either FZIN had not been called with the T option, or the table has meanwhile been overwritten by some other call to ZEBRA JERROR = 14 options T A D not allowed together with R 2 3 4
JERROR = 14 invalid division index in segment table IQUEST(14)= JS, the segment number IQUEST(16)= IQSEGD(JS) JERROR = 15 NQSEG has been changed by the user IQUEST(14)= NQSEG on entry IQUEST(15)= number of words in the segment table = 3 times the number of segments JERROR = 21 not enough space
JERROR = 31 segment table tries to overshoot rel. table JERROR = 32 segment limit does not match a rel. table entry JERROR = 33 ends of segment and rel. tables do not match JERROR = 34 bank chaining clobbered in the input data
131 -> 133 record of unexpected record type read JERROR = 131 expect pilot continuation for text vector JERROR = 132 expect pilot continuation for table JERROR = 133 expect bank material JERROR = 134 end of segm skipped does not coincide with LR IQUEST(14)= segment number IQUEST(15)= size of the segment IQUEST(16)= number of words mis-match JERROR = 135 end of segm read does not coincide with LR IQUEST(14)= segment number IQUEST(15)= size of the segment IQUEST(16)= number of words mis-match JERROR = 136 last bank material record needed is not type 8 JERROR = 137 emergency-stop record seen JERROR = 141 LRTYP invalid when hunting for pilot JERROR = 142 check-word in word 1 of the pilot is wrong IQUEST(16)= check-word read from the file IQUEST(17)= check-word expected (12345.0 floating) JERROR = 143 control wd of I/O char. for user header invalid IQUEST(14)= NWUHCI (size I/O char. + header vector) IQUEST(16)= first word of the characteristic JERROR = 144 NWSEG control-word in the pilot is wrong IQUEST(14)= NWSEG, the length of the segment table JERROR = 145 text vector NWTXI words longer than its record IQUEST(14)= NWTX control-word in the pilot IQUEST(15)= NWR - NWDONE, words available IQUEST(16)= NWDONE words in the record before the text JERROR = 146 number of early table words wrong IQUEST(14)= NWTAB control-word in the pilot IQUEST(15)= NTBE, number of early words inferred JERROR = 147 table end does not coincide with LR IQUEST(14)= NWTAB control-word in the pilot IQUEST(15)= LIN - LQTE words of mis-match JERROR = 151 read error, the IOSTAT error code is returned : IQUEST(14)= error code, if any
JERROR = 201 Steering block expected, but control-words invalid; if the log level is -1 or more they are printed JERROR = 202 Block size (physical record size) wrong IQUEST(14) = expected size, as specified to FZFILE IQUEST(15) = size seen in word 5 of the steering block JERROR = 204 Break in block sequence number IQUEST(14) = expected sequence number IQUEST(15) = sequence number seen 205 -> 208 Fast burst stopped by ... JERROR = 205 ... by unusable start/end-of-run JERROR = 206 ... by unusable steering block JERROR = 207 ... by usable start/end-of-run in unusable block JERROR = 208 ... by usable steering block IQUEST(14/15/16) = word 6/9/10 of the steering block (a block is 'unusable' if only the first few words have been read, but not the whole block; this can happen if FZIN is instructed to skip the current d/s) JERROR = 209 emergency stop record seen JERROR = 215 read error, the IOSTAT error code is returned : IQUEST(14)= error code, if any
JERROR = 221 LR overshoots steering block control IQUEST(14) = # of words consumed in current block IQUEST(15) = # of words missing to complete LR JERROR = 222 LR undershoots steering block control IQUEST(14) = # of words consumed in current block IQUEST(15) = # of words before start of next LR JERROR = 224 LR type 1,2,3 seen when 4 expected IQUEST(14) = # of words before start of next LR JERROR = 225 Faulty LR type JERROR = 226 Faulty LR length JERROR = 227 LR of type 1,2,3 must start on steering block JERROR = 228 Padding record longer than one physical record JERROR = 229 More than 4 padding records in a row IQUEST(14) = # of words before start of next LR IQUEST(15) = # of words missing to complete LR IQUEST(16) = LR length
JERROR = 240 FZIN called for Channel or Memory mode, user routine or user memory not yet connected JERROR = 241 check-word in word 1 of the pilot is wrong IQUEST(16)= check-word read from the file IQUEST(17)= check-word expected (12345.0 floating) JERROR = 242 control wd of I/O char. for user header invalid IQUEST(14)= NWUHCI (size I/O char. + header vector) IQUEST(16)= first word of the characteristic JERROR = 243 NWSEG control-word in the pilot is wrong IQUEST(14)= NWSEG, the length of the segment table JERROR = 251 inconsistent bank parameters JERROR = 252 link part of bank overshoots segment end JERROR = 253 data part of bank overshoots segment end JERROR = 254 short dead region overshoots segment end JERROR = 255 bank material does not end exactly with LR
JERROR = 301 Control-words of steering block invalid; if the log level is -1 or more they are printed JERROR = 302 Block size (physical record size) wrong IQUEST(14) = expected size, as set by FZFILE IQUEST(15) = size seen in word 5 of the steering block JERROR = 303 Unexpected fast record JERROR = 307 Unexpected and faulty steering block JERROR = 308 Fast burst stopped by unexpected steering block IQUEST(14) = word 6 IQUEST(15) = word 9 IQUEST(16) = word 10 of the steering block
JERROR = 309 read error, the IOSTAT error code is returned : IQUEST(14)= error code, if any
The following error codes simply indicate that the text on the file has been corrupted, which particular code will appear is a matter of chance and is of no interest to the user :
JERROR = 310 Invalid character in column 1 JERROR = 311 Record shorter than expected JERROR = 312 Faulty type code JERROR = 313 Faulty numeric value, > 31 JERROR = 314 Record longer than expected JERROR = 315 Repetition count overshoots record end JERROR = 316 Repetition count negative JERROR = 317 Double open square bracket JERROR = 318 Record shorter than expected JERROR = 319 Check-sum error JERROR = 320 Illegal combination =< or <=
subsection*FZCOPY
JERROR = 401 input/output different data format JERROR = 402 native input record length too long JERROR = 403 input/output both channel mode JERROR = 404 Alfa mode not allowed JERROR = 409 no 'pending' d/s on input
JERROR = 433 record of unexpected record type read JERROR = 434 table or d/s data longer than expected JERROR = 435 premature LR type 8 JERROR = 436 last bank material record needed is not type 8 JERROR = 437 emergency stop record seen JERROR = 451 (Fortran) read error IQUEST(14) = IOSTAT error code
JERROR = 455 bank material does not end exactly with LR
JERROR = 501 Steering block expected, but control-words invalid; if the log level is -1 or more they are printed JERROR = 502 Block size (physical record size) wrong IQUEST(14) = expected size, as specified to FZFILE IQUEST(15) = size seen in word 5 of the steering block JERROR = 504 Break in block sequence number IQUEST(14) = expected sequence number IQUEST(15) = sequence number seen JERROR = 508 Fast burst stopped by usable steering block IQUEST(14/15/16) = word 6/9/10 of the steering block JERROR = 509 emergency stop record seen JERROR = 514 seek error, the IOSTAT error code is returned : IQUEST(14)= error code, if any JERROR = 515 read error, the IOSTAT error code is returned : IQUEST(14)= error code, if any
JERROR = 521 Steering block expected, but control-words invalid; if the log level is -1 or more they are printed JERROR = 522 Block size (physical record size) wrong IQUEST(14) = expected size, as specified to FZFILE IQUEST(15) = size seen in word 5 of the steering block JERROR = 523 Block size larger than buffer IQUEST(14) = expected size, as specified to FZFILE IQUEST(15) = size seen in word 5 of the steering block