CoZBatch RC=0102

General discussion of the Co:Z Toolkit
Post Reply
dabills
Posts: 41
Joined: Thu May 19, 2011 9:56 am

CoZBatch RC=0102

Post by dabills »

We just upgraded to CoZBatch v3.5.1 from v3.0.0 and we are getting the following error:
CoZBatchÝE¨: ./CoZBatch.C(302) - fwrite - Ý3¨ EDC5003I Truncation of a record occurred during an I/O operation.
(errno2=0xC0400060)
CoZBatchÝW¨: an error occurred; returning rc=102

This is occurring when we run a cozbatch job to pull a file from another SFTP server running on a Linux server with the following control cards:
lzopts mode=text,servercp=$servercp,clientcp=$clientcp
lzopts linerule=crlf,notrim
lzopts lrecl=80,blksize=27920,recfm=fb,space=cyl.1.1

When we remove the lzopts linerule=crlf,notrim the job works ok.

I'm just wondering what changed between v3.0.0 and v3.5.1 that may of caused this?
dovetail
Site Admin
Posts: 2022
Joined: Thu Jul 29, 2004 12:12 pm

Re: CoZBatch RC=0102

Post by dovetail »

This error:

CoZBatchÝE¨: ./CoZBatch.C(302) - fwrite - Ý3¨ EDC5003I Truncation of a record occurred during an I/O operation.
(errno2=0xC0400060)

means that a line that was being written to DD:STDERR was longer than allowed by the DCB.
You won't get this if your DD:STDERR points to a spool file (as in our sample JCL), since the IBM C library automatically wraps these.
But, if you are pointing DD:STDERR to a dataset, then you need to make the LRECL longer.
DCB=(RECFM=VB,LRECL=1028) is safe although in practice LRECL=260 is probably safe too.

Its hard to say if this is a new message line that is longer in 3.5.1 without seeing what it is.
dabills
Posts: 41
Joined: Thu May 19, 2011 9:56 am

Re: CoZBatch RC=0102

Post by dabills »

Thanks for the reply. That indeed was the issue. The jobs that were failing were writing to file for STDERR instead of SYSOUT and the LRECL was only set to 133. The new information log messages for ZosSettings caused the STDERR file to go past 133 and hence the issue.

I suggested the following options to circumvent the EDC5003I... RC=0102 message:
Option 1: Change //STDERR to use LRECL=1028,RECFM=VB instead of LRECL=133,RECFM=FB
Option 2: Add ,loglevel=N to one of your existing lzopts input cards (to disable info log messages)
Option 3: Code //STDERR as DD SYSOUT=*

Thanks again, take care.
Post Reply