GitHub user 383124397 opened a pull request:
https://github.com/apache/httpasyncclient/pull/7
fix a STOPPED to ACTIVE issue by start method
We use httpasyncclient as our core async RPC component, but we found a
recovering issue a couple days ago.
it is the async client will be stoped because of I/O reactor shutdown when
a service encounter a OOM problem, a few seconds later and after a FGC process,
the service has been recovered, but the async client cannot be recovered. so
the client cannot accept the request unless the service need to reboot.
the code is:
@Override public void run() { try { final IOEventDispatch ioEventDispatch =
new InternalIODispatch(handler); connmgr.execute(ioEventDispatch); } catch
(final Exception ex) { log.error("I/O reactor terminated abnormally", ex); }
finally { status.set(Status.STOPPED); } }
or by close() method.
so there is no way to set status from STOPPED to ACTIVE even by start().
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/383124397/httpasyncclient 4.1.x
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/httpasyncclient/pull/7.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #7
----
commit bc92e1ea6a38869f96365b8e700d2408f7e557e7
Author: vcn鿥 <chennan@...>
Date: 2018-03-19T12:11:02Z
fix a STOPPED to ACTIVE issue by start method
----
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]