> On May 5, 2016, 6:43 a.m., Amareshwari Sriramadasu wrote:
> > lens-server/src/main/java/org/apache/lens/server/LensServices.java, line 422
> > <https://reviews.apache.org/r/46968/diff/2/?file=1370733#file1370733line422>
> >
> >     Why are we putting such a wait counter? Shouldnt we simple join the 
> > thread and wait for it to completely write the persist state?

serverSnapshotScheduler.shutdown() initiates a graceful shutdown but one needs 
to wait for the shutdown using awaitTermination() which takes  wait time as 
input. 
 The options to wait are 
 1. Infinite wait. 
 2. Timed Wait. Incase there is some issue like OOM or Filesystem realted 
issues which delays the writing, wanted to try max for 5 minutes. 
 
 But since after we come out of awaitTermination we are calling  
persistLensServiceState() again, the first wait can be made infinite too (as 
the secon d call to persistLensServiceState has no wait limit anyway)
 
 Will have an infinite WAIT.


- Puneet


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


On May 4, 2016, 12:03 p.m., Puneet Gupta wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/46968/
> -----------------------------------------------------------
> 
> (Updated May 4, 2016, 12:03 p.m.)
> 
> 
> Review request for lens.
> 
> 
> Bugs: lens-1029
>     https://issues.apache.org/jira/browse/lens-1029
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> - Service level persistence isolation. If persisting one service fails, other 
> services should still be persisted. 
> - Persistence thread to run only in case SERVER_RESTART_ENABLED = true
> - Moved form Timer to ScheduledExecutorService. Graceful shutdown of 
> ScheduledExecutorService enabled to allow a running persistence task, if any, 
>  to finish
> - Catching Exception instead of IOException to prevent the persistence task 
> from dying. 
> - using writeObject() instead of writeInt() for automatic null handling.
> 
> 
> Diffs
> -----
> 
>   
> lens-query-lib/src/main/java/org/apache/lens/lib/query/AbstractFileFormatter.java
>  8c06621 
>   lens-server/src/main/java/org/apache/lens/server/LensServices.java 48b3e00 
> 
> Diff: https://reviews.apache.org/r/46968/diff/
> 
> 
> Testing
> -------
> 
> Relying on exiting test case to check persistence TestServerRestart. 
> 
> **mvn test -Dtest=org.apache.lens.server.TestServerRestart#testQueryService**
> Running org.apache.lens.server.TestServerRestart
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 206.408 sec - 
> in org.apache.lens.server.TestServerRestart
> 
> Results :
> 
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
> 
> 
> **mvn test 
> -Dtest=org.apache.lens.server.TestServerRestart#testSessionRestart**
> Running org.apache.lens.server.TestServerRestart
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 21.711 sec - 
> in org.apache.lens.server.TestServerRestart
> 
> Results :
> 
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
> 
> 
> **Apart from this** 
> - Did some local testing for making sure null Integers are persisted using 
> writeObject and can be read back as well. 
> - Did some local testing to check graceful shutdown of 
> ScheduledExecutorService
> Don't think we need a test cases for above two cince its supported out of box 
> by java
> 
> 
> Thanks,
> 
> Puneet Gupta
> 
>

Reply via email to