Description
The class org.apache.hadoop.gateway.shell.Hadoop used to connect to knox doesn't close opened socket.
The "shutdown" method of org...shell.Hadoop doesn't call client.close() and this produces too much permanent CLOSE_WAIT sockest.
Suggestion:
public void shutdown() throws InterruptedException
{ - executor.shutdown(); + closeClient(); }public boolean shutdown( long timeout, TimeUnit unit ) throws InterruptedException
{ - executor.shutdown(); + closeClient(); return executor.awaitTermination( timeout, unit ); } +
+ private void closeClient(){
+ executor.shutdownNow();
+ if(client!=null)
+ }