From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Mon, 26 Apr 2010 17:20:27 -0400 To: 9fans@9fans.net Message-ID: <7763d735e69d8028c5acb643c6b90b13@coraid.com> In-Reply-To: References: <23E784B6-F189-4DFC-AA82-21CA950DD77D@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Subject: Re: [9fans] Distributed Pipelines Topicbox-Message-UUID: 0ea192f2-ead6-11e9-9d60-3106f5b1d025 > > "... > eqn paper | rx kremvax troff -ms | rx deepthought lp > Parallel processing: do each stage of a pipeline on a > different machine. > " > > however, it seems not to work this way. > My basic test has been something like: > > echo '1 2 3' | rx $cpu awk -f $home/comp.awk | gview cool that you tracked this down. this just doesn't work. the problem seems to be that tcp is eating the eof. awk doesn't know to exit. if you are using il, this does work. ; echo 1 2 3| 8.rx bureau sed s/1/x/ | sed s/2/y/ x y 3 but if you are using tcp, it hangs. sed never sees the eof and doesn't generate output (because it's buffered). the answer isn't obvious to me with tcp as i don't know of a way to half-close a tcp connection — from userspace anyway. - erik