Page 1 of 1

error in write Broken pipe

Posted: Thu Jun 12, 2003 1:07 am
by dinagipsh
Does anybody could help me.
We receive the errors of
ds_seqput: error in 'write()' - Broken pipe,
ds_seqput: error in 'write()' - Error 0,
error in 'write()' - interrapted system call.
After resetting of the job, it run good.
It happens with different jobs.
Thank you very much.
The Datastage version is 5.2.2 on AIX 4.3
Dina

Posted: Thu Jun 12, 2003 7:41 am
by kduke
Dina

A pipe is a way for a process to feed data into DataStage instead of using a sequential file or an ODBC connection. If that process dies or gets hung up then the pipe can be broken. At the UNIX level there is a special type file that represents the pipe. If this file is removed then the pipe will appear to be broken. If you do a "ls -l" on the directory where the pipe was created then you can see this file with type "p" similar to devices files being type "c" or "b". UNIX can also disable a pipe if no data is written to it in a given time interval. It can "time out" and label the pipe as broken.


Kim Duke
DwNav - ETL Navigator
www.Duke-Consulting.com

Posted: Mon Jun 16, 2003 1:50 am
by dinagipsh
Thank you.
I'll try to check with our system admin is there any timeout parameter for the open pipes on our AIX machine.

Posted: Mon Jul 14, 2003 11:46 pm
by Starg
Another thing to check is that if you are using named pipes in your job (so you are created named pipes using the command mkfifo) make sure that the "Stage uses named pipes" check box is ticked on the Sequential File stage in the datastage job.

Posted: Tue Jul 15, 2003 5:36 pm
by ray.wurlod
Given that the error message is from the ds_seqput function, it can be seen that the error has occurred when a Sequential File stage is attempting to write (not read).
If the Sequential File stage is writing to a named pipe, this can mean that the reader process on the other end of the pipe has stopped reading, so that the pipe has become through.
If the Sequential File stage is not designed to be using a named pipe, the same condition may still obtain if DataStage is using a pipe to buffer output to the text file (for speed). This will be a rare and intermittent condition; it means that the disk subsystem cannot drain the pipe as fast as the Sequential File stage is writing to it.

Ray Wurlod
Education and Consulting Services
ABN 57 092 448 518