error in write Broken pipe

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
dinagipsh
Participant
Posts: 5
Joined: Wed Jun 04, 2003 8:29 am

error in write Broken pipe

Post 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
kduke
Charter Member
Charter Member
Posts: 5227
Joined: Thu May 29, 2003 9:47 am
Location: Dallas, TX
Contact:

Post 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
dinagipsh
Participant
Posts: 5
Joined: Wed Jun 04, 2003 8:29 am

Post 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.
Starg
Participant
Posts: 16
Joined: Sun May 05, 2002 6:56 pm
Contact:

Post 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.
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post 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
Post Reply