Let me get back to you after testing this scenario. Thanks for the input
Daniel. You may also raise a JIRA issue for this.

Thanks,
Ruwan

On Thu, Sep 24, 2009 at 10:31 PM, Moise, Daniel <[email protected]>wrote:

> Hi Ruwan,
>
> I've tried the last changes in the 1.3 branch, and the problem is still
> there. To test it, we've just run a 'telnet localhost 8280'.
> Based on your answer, it seems that you guys have a solution for this.
> Could you send me a patch or the changes for that. You don't have to
> necessarily check them in the branch for now.
>
> Thanks,
> Daniel
>
> -----Original Message-----
> From: Ruwan Linton [mailto:[email protected]]
> Sent: Wednesday, September 23, 2009 6:04 PM
> To: [email protected]
> Subject: Re: HttpCoreNIOListener$1 - System may be unstable: IOReactor
> encountered a runtime exception : null
>
> Hi Daniel,
>
> This should be fixed now on the trunk, were you trying this on the
> trunk?
> Can you please verify this on a SNAPSHOT build?
>
> This will be available with the 1.3 release.
>
> Thanks,
> Ruwan
>
> On Wed, Sep 23, 2009 at 11:24 PM, Moise, Daniel
> <[email protected]>wrote:
>
> > Hi,
> >
> > I've found the same problem as the one listed below - every time a
> > malformed request is given to Synapse, an infinite loop will be
> > triggered making the Synapse server sluggish, and consuming the entire
> > log file (in case the output is redirected). I've noticed that the
> > problem might get fixed. Could you please let me know if the problem
> was
> > fixes, and if yes in which release.
> >
> > Thanks,
> > Daniel
> >
> >
> >                Hi All
> >
> >                I guess this boils down to how we deal with broken,
> > partial, and even
> >                possibly malicious requests in the NIO transport.. I
> > will fix the issue
> >                pointed to by Andreas and Murali ASAP as I consider
> this
> > critical.
> >
> >                Murali - I believe you should plan on updating to
> > Synapse 1.3 in the
> >                near future. There are a few issues we have fixed over
> > the past year
> >                that should be very important for any production
> > deployment. As I
> >                believe your environment / configuration is
> > straightforward, so the
> >                migration should be quite trivial too - Could you also
> > raise an issue on
> >                the JIRA?
> >
> >                This runtime exception is caught in
> > BaseIOReactor#writable and delegated to the
> >                registered exception handler (in our case an anonymous
> > inner class of
> >                HttpCoreNIOListener with the following implementation:
> >
> >                ioReactor.setExceptionHandler(new
> > IOReactorExceptionHandler() {
> >                                public boolean handle(IOException
> > ioException) {
> >                                    log.warn("System may be unstable:
> > IOReactor encountered a
> >                checked exception : "
> >                                            + ioException.getMessage(),
> > ioException);
> >                                    return true;
> >                                }
> >
> >                                public boolean handle(RuntimeException
> > runtimeException) {
> >                                    log.warn("System may be unstable:
> > IOReactor encountered a
> >                runtime exception : "
> >                                            +
> > runtimeException.getMessage(), runtimeException);
> >                                    return true;
> >                                }
> >                            });
> >
> >                I wondering a bit about the return value. Taken from
> the
> > JavaDoc of the
> >                interface IOReactorExceptionHandler#handle
> >
> >                True if it is safe to ignore the exception and continue
> > execution of the I/O
> >                reactor; if the I/O reactor must throw {...@link
> > RuntimeException} and terminate
> >
> >                Hmm, is it really safe to proceed here? We do not test
> > any detail of the
> >                RuntimeException. To me this looks wrong.
> >
> >                Yes, we return true since the later versions of
> HttpCore
> > dump some
> >                information and try to continue in the face of RT
> > exceptions. What I
> >                feel is that we need to enhance the NIO transport to be
> > stable in the
> >                face of broken, partial and malicious requests so that
> > RT exceptions
> >                will not be thrown in such cases, and we will drop the
> > connection with a
> >                WARN
> >
> >                cheers
> >                asankha
> >
> >                --
> >                Asankha C. Perera
> >                AdroitLogic, http://adroitlogic.org
> >
> >                http://esbmagic.blogspot.com
> >
> >
> > ---------------------------------------------------------------------
> >                To unsubscribe, e-mail: [email protected]
> >                For additional commands, e-mail:
> > [email protected]
> >
> >
>
>
> --
> Ruwan Linton
> Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 <http://wso2.org/esb%0AWSO2> Inc.; http://wso2.org
> email: [email protected]; cell: +94 77 341 3097
> blog: http://ruwansblog.blogspot.com
>



-- 
Ruwan Linton
Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: [email protected]; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Reply via email to