You'll need to patch it. POE::Wheel::ReadWrite wasn't originally designed for unbuffered writes. There's a patch to add it, but I haven't included it because it fails one of POE's tests. You can find the patch in POE's queue at rt.cpan.org.

--
Rocco Caputo - [EMAIL PROTECTED]



put() calls aren't buffered in filters. They are however buffered in the driver, and they're flushed

On Dec 14, 2006, at 10:26, Mike Schroeder wrote:

We have a POE app that reads multiple input files, reformats them and the posts them to various binaries wrapped with PoCo::Child that in turn load the data into our underlying system. The problem we are running into is that PoCo::Child seems to be buffering two or three records at a time. Sometimes we have interdependencies between records going into various loaders, so we need these to be unbuffered. In looking at PoCo::Child, I see how it uses POE::Wheel::Run, which in turn uses POE::Driver::SysRW and that Driver::SysRW has a flush () method.

Do I need to patch PoCo::Child's write() to flush() after each write ()? Or is there some setting or a better way to get unbuffered writes to PoCo::Child?


Thanks in advance for any advice.


Reply via email to