[ 
https://issues.apache.org/jira/browse/HTTPCORE-510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary Gregory updated HTTPCORE-510:
----------------------------------
    Description: 
Avoid an {{ArithmeticException}} in {{AbstractMultiworkerIOReactor}} by failing 
eariler by checking {{ioThreadCount}} in {{IOReactorConfig}} constructor.

If you build an {{IOReactorConfig}} with an {{ioThreadCount}} equal to 0, you 
will get the exception below. This can be avoided by failing earlier in the 
{{IOReactorConfig}} constructor.

{noformat}
java.lang.ArithmeticException: / by zero
        at 
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.addChannel(AbstractMultiworkerIOReactor.java:473)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvent(DefaultListeningIOReactor.java:189)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvents(DefaultListeningIOReactor.java:151)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:348)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
{noformat}

Instead of the above, you will get an {{IllegalArgumentException}} from the 
{{IOReactorConfig}} constructor.


  was:
Avoid an {{ArithmeticException}} in {{AbstractMultiworkerIOReactor}} by failing 
eariler by checking {{ioThreadCount}} in {{IOReactorConfig}} constructor.

If you build an {{IOReactorConfig}} with an {{ioThreadCount}} equal to 0, you 
will get the exception below. This can be avoided by failing earlier in the 
{{IOReactorConfig}} constructor.

{noformat}
java.lang.ArithmeticException: / by zero
        at 
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.addChannel(AbstractMultiworkerIOReactor.java:473)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvent(DefaultListeningIOReactor.java:189)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvents(DefaultListeningIOReactor.java:151)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
        at 
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:348)
 ~[httpcore-nio-4.4.9.jar:4.4.9]
{noformat}



> Avoid an ArithmeticException in AbstractMultiworkerIOReactor by failing 
> earlier by checking ioThreadCount in IOReactorConfig constructor.
> -----------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HTTPCORE-510
>                 URL: https://issues.apache.org/jira/browse/HTTPCORE-510
>             Project: HttpComponents HttpCore
>          Issue Type: Improvement
>            Reporter: Gary Gregory
>            Assignee: Gary Gregory
>            Priority: Major
>
> Avoid an {{ArithmeticException}} in {{AbstractMultiworkerIOReactor}} by 
> failing eariler by checking {{ioThreadCount}} in {{IOReactorConfig}} 
> constructor.
> If you build an {{IOReactorConfig}} with an {{ioThreadCount}} equal to 0, you 
> will get the exception below. This can be avoided by failing earlier in the 
> {{IOReactorConfig}} constructor.
> {noformat}
> java.lang.ArithmeticException: / by zero
>       at 
> org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.addChannel(AbstractMultiworkerIOReactor.java:473)
>  ~[httpcore-nio-4.4.9.jar:4.4.9]
>       at 
> org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvent(DefaultListeningIOReactor.java:189)
>  ~[httpcore-nio-4.4.9.jar:4.4.9]
>       at 
> org.apache.http.impl.nio.reactor.DefaultListeningIOReactor.processEvents(DefaultListeningIOReactor.java:151)
>  ~[httpcore-nio-4.4.9.jar:4.4.9]
>       at 
> org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:348)
>  ~[httpcore-nio-4.4.9.jar:4.4.9]
> {noformat}
> Instead of the above, you will get an {{IllegalArgumentException}} from the 
> {{IOReactorConfig}} constructor.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@hc.apache.org
For additional commands, e-mail: dev-h...@hc.apache.org

Reply via email to