Description
I met a strange issue that process cannot exit when I run RPC test cases in my Eclipse.
Conditions:
1. Only one Server and one client(local)
2. I have set many readers(conf.setInt("ipc.server.read.threadpool.size", 5)), it great than client number.
After any test cases, the process cannot exit. I tested with several cases and found the root cause.
RPC serves socket with reader(transferring binary to Call), and even shutdown the thread pool. But all the free readers are blocked at "readSelector.select()" (they are useless by Listener)
Those threads and process cannot exit always.
It can be fixed by invoking corresponding selector for each reader.The same thing was done at 0.20 version.