----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/51964/#review156012 -----------------------------------------------------------
lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 52) <https://reviews.apache.org/r/51964/#comment226164> classLoaderCache needs to be updated on addDBJar. lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 114) <https://reviews.apache.org/r/51964/#comment226142> This method should be private . lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (lines 265 - 268) <https://reviews.apache.org/r/51964/#comment226143> This method should be private lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (lines 408 - 414) <https://reviews.apache.org/r/51964/#comment226136> Should we decide which map to use based on mode (local/hdfs or remote ) which is decided on startup lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 416) <https://reviews.apache.org/r/51964/#comment226145> addremoteDbResourceEntry and addLocalDbResourceEntry can be private . We can also decide and remove these methods and directly add map entries in calling code. lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 420) <https://reviews.apache.org/r/51964/#comment226111> Should we call this method updateLocalDBResourceEntries since its replacing all the entries for the DB ? Simlaraly updateRemoteDbResourceEntries too lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 434) <https://reviews.apache.org/r/51964/#comment226165> QueryExecutionServiceImpl#addSessionResourcesToDriver needs to remove old jars added to the hive sessions and add the newly uploaded jar to it (there is one hive session per User and per DB. Only the current DB sessions should get affected) This implies that there is no guarantee on success of currently running queries on the affected Hive sessions lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 436) <https://reviews.apache.org/r/51964/#comment226095> Should we also add DB name to this log ? lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 476) <https://reviews.apache.org/r/51964/#comment226108> jarFilePath has the complete path for the jar file. Do we need currentDB and baseDir ? lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 484) <https://reviews.apache.org/r/51964/#comment226132> should we check the status of this opeartion and throw exception in case of failure. lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 505) <https://reviews.apache.org/r/51964/#comment226096> should we resuse FileSystem created while starting the service ? This can be done for all FieSystem.newInstance calls in this method lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 508) <https://reviews.apache.org/r/51964/#comment226098> should we also check the boolean value returned by this call and proceed accrodingly lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 522) <https://reviews.apache.org/r/51964/#comment226101> Should we use FileSystem.delete(path,false) instead and check the boolean value returned by this call before proceeding further? lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java (line 535) <https://reviews.apache.org/r/51964/#comment226135> Should we INFO log that jar uploaded to {path} - Puneet Gupta On Nov. 8, 2016, 10:18 a.m., Sushil Mohanty wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/51964/ > ----------------------------------------------------------- > > (Updated Nov. 8, 2016, 10:18 a.m.) > > > Review request for lens. > > > Bugs: LENS-317 > https://issues.apache.org/jira/browse/LENS-317 > > > Repository: lens > > > Description > ------- > > Server side api call to update database jar without restarting lens server. > More details can be found in LENS-317. > > > Diffs > ----- > > lens-cli/pom.xml 8e5e3eb > > lens-cli/src/main/java/org/apache/lens/cli/commands/LensDatabaseCommands.java > c6ae02b > lens-cli/src/test/java/org/apache/lens/cli/TestLensDatabaseCommands.java > 7fc8438 > lens-cli/src/test/resources/schema/jars/test_db_resource.jar PRE-CREATION > lens-client/src/main/java/org/apache/lens/client/LensClient.java e936798 > lens-client/src/main/java/org/apache/lens/client/LensConnection.java > bb15b23 > > lens-server-api/src/main/java/org/apache/lens/server/api/LensConfConstants.java > 8f9db2a > > lens-server-api/src/main/java/org/apache/lens/server/api/metastore/CubeMetastoreService.java > 28b9d22 > > lens-server-api/src/main/java/org/apache/lens/server/api/session/SessionService.java > 20ec686 > lens-server/pom.xml d24dc1e > > lens-server/src/main/java/org/apache/lens/server/metastore/CubeMetastoreServiceImpl.java > 8b10d1d > > lens-server/src/main/java/org/apache/lens/server/session/DatabaseResourceService.java > 511e4cf > > lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java > 21e2a62 > > lens-server/src/main/java/org/apache/lens/server/session/LensSessionImpl.java > 34c901c > > lens-server/src/main/java/org/apache/lens/server/session/SessionResource.java > 63eea63 > lens-server/src/main/java/org/apache/lens/server/util/ScannedPaths.java > e48eab4 > lens-server/src/main/resources/lensserver-default.xml a00048b > lens-server/src/test/java/org/apache/lens/server/LensJerseyTest.java > 7cccf30 > lens-server/src/test/java/org/apache/lens/server/LensServerTestUtil.java > 67cee57 > > lens-server/src/test/java/org/apache/lens/server/session/TestDatabaseResourceService.java > 2bc3712 > > lens-server/src/test/java/org/apache/lens/server/session/TestDatabaseService.java > PRE-CREATION > > lens-server/src/test/java/org/apache/lens/server/session/TestSessionClassLoaders.java > d66de4c > lens-server/src/test/resources/lens-site.xml d96659f > pom.xml 29c59d3 > > Diff: https://reviews.apache.org/r/51964/diff/ > > > Testing > ------- > > mvn clean install. > > [INFO] > ------------------------------------------------------------------------ > [INFO] Reactor Summary: > [INFO] > [INFO] Lens Checkstyle Rules ............................. SUCCESS [3.302s] > [INFO] Lens .............................................. SUCCESS [7.286s] > [INFO] Lens API .......................................... SUCCESS [31.546s] > [INFO] Lens API for server and extensions ................ SUCCESS [25.681s] > [INFO] Lens Cube ......................................... SUCCESS > [17:55.255s] > [INFO] Lens DB storage ................................... SUCCESS [25.650s] > [INFO] Lens Query Library ................................ SUCCESS [21.646s] > [INFO] Lens Hive Driver .................................. SUCCESS [2:11.167s] > [INFO] Lens Driver for JDBC .............................. SUCCESS [1:03.464s] > [INFO] Lens Elastic Search Driver ........................ SUCCESS [54.798s] > [INFO] Lens Server ....................................... SUCCESS > [18:19.588s] > [INFO] Lens client ....................................... SUCCESS [2:02.590s] > [INFO] Lens CLI .......................................... SUCCESS [1:54.985s] > [INFO] Lens Examples ..................................... SUCCESS [13.790s] > [INFO] Lens Ship Jars to Distributed Cache ............... SUCCESS [2.061s] > [INFO] Lens Distribution ................................. SUCCESS [24.869s] > [INFO] Lens ML Lib ....................................... SUCCESS [1:54.426s] > [INFO] Lens ML Ext Distribution .......................... SUCCESS [11.053s] > [INFO] Lens Regression ................................... SUCCESS [20.677s] > [INFO] Lens UI ........................................... SUCCESS [19.454s] > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD SUCCESS > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 49:44.002s > [INFO] Finished at: Sat Sep 17 00:12:08 IST 2016 > [INFO] Final Memory: 178M/2490M > [INFO] > ------------------------------------------------------------------------ > > > Thanks, > > Sushil Mohanty > >