Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
0.4.1
-
None
Description
LeakyBucketStreamThrottler implements close and inside it it shutdowns executorService.
However, ListenHTTP and PostHTTP doesn't call close, and since those processors create new LeakyBucketStreamThrottler instance when it is scheduled, it creates new thread without closing the old ones.
It can be reproduced by repeating stop and start those processors again and again. You can confirm the number of threads are increasing by following command:
$ watch "ps -M |grep {nifi pid} | wc -l"
or using thread dump
$ tail -f logs/nifi-bootstrap.log |grep LeakyBucketStreamThrottler.java from another terminal $ kill -3 {nifi pid}