Broken Pipe on large Dataset

Discussion of Dovetailed Technologies Dataset Pipes tools
Post Reply
tsdjim
Posts: 64
Joined: Fri May 07, 2010 2:21 am

Broken Pipe on large Dataset

Post by tsdjim » Wed Apr 24, 2013 1:51 am

We are sending a number of files in one step using fromdsn curl and gzip and the job has been working fine, however for one file yesterday we got the following messages. Could it be a ssh timeout problem
(Note: ssh_tunnel is set false and coz release 220):

COZLOG Messages:
cozagent ?21:51? Waiting for completion...
cozserver(70)?E?: ./OutputMux.h(118) - write_fully(1, 28078ED8, 4) - ?140? EDC5140I Broken pipe. (errno2=0x74520442)
cozserver(70)?E?: ./OutputMux.h(118) - write_fully(1, 28041300, 5) - ?140? EDC5140I Broken pipe. (errno2=0x76697242)
cozserver(70)?W?: Exception: 103 sending exit code packet(rc=103) to client

Job Log Messages:
IEA989I SLIP TRAP ID=XEC6 MATCHED. JOBNAME=OPSSSSSL, ASID=0072.
BPXP023I THREAD 27C1F70000000000, IN PROCESS 33555551, WAS 422
TERMINATED BY SIGNAL SIGKILL, SENT FROM THREAD
27C1E60000000000, IN PROCESS 67109982, UID 1111, IN JOB OPSSSSSL.

dovetail
Site Admin
Posts: 1848
Joined: Thu Jul 29, 2004 12:12 pm

Re: Broken Pipe on large Dataset

Post by dovetail » Wed Apr 24, 2013 2:19 pm

The first error reason code is:

Code: Select all

>bpxmtext 74520442                                                                                                                                         
TCPIP 
JRSocketRstReceived: A RST was received on the socket connection.

Action: The socket connection was dropped.  Verify the status of the remote
partner.  Then re-attempt the socket connection.
This means that the z/OS side saw socket connection(s) being lost. It could be a network problem, or perhaps the remote processes were terminated for some unknown reason.
I assume that there aren't any other messages in the log from the remote side, which makes sense if the network connection was lost.

tsdjim
Posts: 64
Joined: Fri May 07, 2010 2:21 am

Re: Broken Pipe on large Dataset

Post by tsdjim » Sat Apr 27, 2013 12:06 pm

Each command I issue has multiple pipes similar to the following, is there a way to trap the error so that I know form which specific part of the pipes (fromdsn or gzip or curl) the error occured.

fromdsn.....| gzip... | curl.......

dovetail
Site Admin
Posts: 1848
Joined: Thu Jul 29, 2004 12:12 pm

Re: Broken Pipe on large Dataset

Post by dovetail » Mon Apr 29, 2013 7:46 am

If you get an error, the message written to stderr should be clear as to which command failed.

But the exit code from the pipeline of commands will be the last command unless you do this:

set -o pipefail

For more information, see:
http://www.gnu.org/software/bash/manual ... lines.html

But in your case, it seems that the network pipes that redirect the stdout and stderr output of your shell script are being disconnected. This would indicate that either there was a network problem or that the remote job was terminated.

Can you reproduce this problem?
Is there anything in syslog on the remote system?

Post Reply