> On Nov. 19, 2019, 10:38 p.m., Slim Bouguerra wrote:
> > I recommend using a bounded queue instead of checking the size and soing 
> > the if else everytime  
> > something like this might work
> > ```java
> >  BlockingQueue<Runnable> linkedBlockingDeque = new 
> > LinkedBlockingDeque<Runnable>(
> >         1);
> >     ExecutorService service = new ThreadPoolExecutor(1, 1, 30, 
> > TimeUnit.SECONDS, linkedBlockingDeque,
> >                                                              new 
> > ThreadPoolExecutor.DiscardPolicy());
> > 
> > ```
> 
> Attila Magyar wrote:
>     We also have a periodic event which is scheduled with a fix delay by the 
> ScheduledThreadPoolExecutor. The ThreadPoolExecutor can't do this scheduling, 
> this would require either using 2 executors (a ThreadPoolExecutor and a 
> ScheduledThreadPoolExecutor) or 1 executor plus a Timer, plus some 
> synchronization. The queue size check looked like the most simple solution I 
> could find.

I see Then this makes sense


- Slim


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/71784/#review218697
-----------------------------------------------------------


On Nov. 19, 2019, 3:43 p.m., Attila Magyar wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/71784/
> -----------------------------------------------------------
> 
> (Updated Nov. 19, 2019, 3:43 p.m.)
> 
> 
> Review request for hive, Laszlo Bodor, Harish Jaiprakash, Mustafa Iman, and 
> Panos Garefalakis.
> 
> 
> Bugs: HIVE-22514
>     https://issues.apache.org/jira/browse/HIVE-22514
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> HiveProtoLoggingHook uses a ScheduledThreadPoolExecutor to submit writer 
> tasks and to periodically handle rollover. The builtin 
> ScheduledThreadPoolExecutor uses a unbounded queue which cannot be replaced 
> from the outside. If log events are generated at a very fast rate this queue 
> can grow large.
> 
> Since ScheduledThreadPoolExecutor does not support changing the default 
> unbounded queue to a bounded one, the queue capacity is checked manually by 
> the patch.
> 
> 
> Diffs
> -----
> 
>   common/src/java/org/apache/hadoop/hive/conf/HiveConf.java a7687d59004 
>   ql/src/java/org/apache/hadoop/hive/ql/hooks/HiveProtoLoggingHook.java 
> 8eab54859bf 
>   ql/src/test/org/apache/hadoop/hive/ql/hooks/TestHiveProtoLoggingHook.java 
> 450a0b544d6 
> 
> 
> Diff: https://reviews.apache.org/r/71784/diff/1/
> 
> 
> Testing
> -------
> 
> unittest
> 
> 
> Thanks,
> 
> Attila Magyar
> 
>

Reply via email to