You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Supun Kamburugamuva (JIRA)" <ji...@apache.org> on 2009/10/14 00:47:31 UTC

[jira] Created: (SYNAPSE-592) If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop

If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop
-------------------------------------------------------------------------------------------

                 Key: SYNAPSE-592
                 URL: https://issues.apache.org/jira/browse/SYNAPSE-592
             Project: Synapse
          Issue Type: Bug
            Reporter: Supun Kamburugamuva
         Attachments: SYNAPSE-592.patch

I've submitted an invalid url (a url with a space) to synapse. When this happens NIO transport goes to an infinite loop. It shows the following exception repeatedly. The reason for this is a Null point exception. 

In case of HTTP error, synapse ServerHandler doesn't get called for the input. But the outputready method of the ServerHandler is called. In the output ready method we check a output buffer variable. But since the input is not given to syanpse this buffer is not set. Resulting in the null point. I've done a simple fix to avoid this. But I think this should be handled in the HTTP Core Nio level. It shouldn't call the output ready method when there is an error.

2009-10-13 15:07:46,671 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
java.lang.NullPointerException
        at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
        at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
        at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
        at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
        at java.lang.Thread.run(Thread.java:595)
2009-10-13 15:07:46,750 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
java.lang.NullPointerException
        at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
        at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
        at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
        at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
        at java.lang.Thread.run(Thread.java:595)
2009-10-13 15:07:46,843 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
java.lang.NullPointerException

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Updated: (SYNAPSE-592) If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop

Posted by "Supun Kamburugamuva (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Supun Kamburugamuva updated SYNAPSE-592:
----------------------------------------

    Attachment: SYNAPSE-592.patch

Attaching a simple fix that checks this buffer and if it is null close the connection.

> If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop
> -------------------------------------------------------------------------------------------
>
>                 Key: SYNAPSE-592
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-592
>             Project: Synapse
>          Issue Type: Bug
>            Reporter: Supun Kamburugamuva
>         Attachments: SYNAPSE-592.patch
>
>
> I've submitted an invalid url (a url with a space) to synapse. When this happens NIO transport goes to an infinite loop. It shows the following exception repeatedly. The reason for this is a Null point exception. 
> In case of HTTP error, synapse ServerHandler doesn't get called for the input. But the outputready method of the ServerHandler is called. In the output ready method we check a output buffer variable. But since the input is not given to syanpse this buffer is not set. Resulting in the null point. I've done a simple fix to avoid this. But I think this should be handled in the HTTP Core Nio level. It shouldn't call the output ready method when there is an error.
> 2009-10-13 15:07:46,671 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,750 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,843 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Resolved: (SYNAPSE-592) If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop

Posted by "Ruwan Linton (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ruwan Linton resolved SYNAPSE-592.
----------------------------------

       Resolution: Fixed
    Fix Version/s: 1.3

Already addressed with the SYNAPSE-584

> If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop
> -------------------------------------------------------------------------------------------
>
>                 Key: SYNAPSE-592
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-592
>             Project: Synapse
>          Issue Type: Bug
>            Reporter: Supun Kamburugamuva
>            Assignee: Ruwan Linton
>             Fix For: 1.3
>
>         Attachments: SYNAPSE-592.patch
>
>
> I've submitted an invalid url (a url with a space) to synapse. When this happens NIO transport goes to an infinite loop. It shows the following exception repeatedly. The reason for this is a Null point exception. 
> In case of HTTP error, synapse ServerHandler doesn't get called for the input. But the outputready method of the ServerHandler is called. In the output ready method we check a output buffer variable. But since the input is not given to syanpse this buffer is not set. Resulting in the null point. I've done a simple fix to avoid this. But I think this should be handled in the HTTP Core Nio level. It shouldn't call the output ready method when there is an error.
> 2009-10-13 15:07:46,671 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,750 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,843 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


[jira] Assigned: (SYNAPSE-592) If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop

Posted by "Ruwan Linton (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SYNAPSE-592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ruwan Linton reassigned SYNAPSE-592:
------------------------------------

    Assignee: Ruwan Linton

> If a url with a space submitted to the synapse, nhttp transport goes in to an infinite loop
> -------------------------------------------------------------------------------------------
>
>                 Key: SYNAPSE-592
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-592
>             Project: Synapse
>          Issue Type: Bug
>            Reporter: Supun Kamburugamuva
>            Assignee: Ruwan Linton
>         Attachments: SYNAPSE-592.patch
>
>
> I've submitted an invalid url (a url with a space) to synapse. When this happens NIO transport goes to an infinite loop. It shows the following exception repeatedly. The reason for this is a Null point exception. 
> In case of HTTP error, synapse ServerHandler doesn't get called for the input. But the outputready method of the ServerHandler is called. In the output ready method we check a output buffer variable. But since the input is not given to syanpse this buffer is not set. Resulting in the null point. I've done a simple fix to avoid this. But I think this should be handled in the HTTP Core Nio level. It shouldn't call the output ready method when there is an error.
> 2009-10-13 15:07:46,671 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,750 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException
>         at org.apache.synapse.transport.nhttp.ServerHandler.outputReady(ServerHandler.java:209)
>         at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:207)
>         at org.apache.http.impl.nio.DefaultServerIOEventDispatch.outputReady(DefaultServerIOEventDispatch.java:153)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:185)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
>         at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
>         at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
>         at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
>         at java.lang.Thread.run(Thread.java:595)
> 2009-10-13 15:07:46,843 [-] [http-Listener I/O dispatcher-1]  WARN HttpCoreNIOListener System may be unstable: IOReactor encountered a runtime exception : null
> java.lang.NullPointerException

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org