You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by Seth Pollack <se...@pollackphoto.com> on 2007/11/04 22:40:38 UTC

Re: WriteTimeoutException immediately following write


> Whenever something is
> written, lastWriteTime is updated automatically, and
> WriteTimeoutException is raised only when lastWriteTime has not been
> updated for a certain amount of time.  Looking into
> SocketIoProcessor.java, it attempts to write first (i.e. doFlush())
> and then check timeout (i.e. notifyIdleness()).  

I have a related question. 

Is it possible to ever get a WriteTimeoutException because of something
moving very slowly on the writing app side, or can this only be caused by
the receiving app side moving slowly (i.e. not accepting any bytes for more
than the writeTimeout period)? In the code I saw the comment "// Kernel
buffer is full" in the case where there are bytes to write that can't be
written. What are the possible causes of this condition?

-- 
View this message in context: http://www.nabble.com/WriteTimeoutException-immediately-following-write-tf4473340s16868.html#a13578097
Sent from the Apache MINA Support Forum mailing list archive at Nabble.com.


Re: WriteTimeoutException immediately following write

Posted by "이희승 (Trustin Lee)" <tr...@gmail.com>.
2007-11-04 (일), 13:40 -0800, Seth Pollack 쓰시길:
> 
> > Whenever something is
> > written, lastWriteTime is updated automatically, and
> > WriteTimeoutException is raised only when lastWriteTime has not been
> > updated for a certain amount of time.  Looking into
> > SocketIoProcessor.java, it attempts to write first (i.e. doFlush())
> > and then check timeout (i.e. notifyIdleness()).  
> 
> I have a related question. 
> 
> Is it possible to ever get a WriteTimeoutException because of something
> moving very slowly on the writing app side, or can this only be caused by
> the receiving app side moving slowly (i.e. not accepting any bytes for more
> than the writeTimeout period)? In the code I saw the comment "// Kernel
> buffer is full" in the case where there are bytes to write that can't be
> written. What are the possible causes of this condition?

It's thrown only when the receiving party is not receiving the data fast enough, which lead the full kernel send buffer.
-- 
what we call human nature is actually human habit
--
http://gleamynode.net/