/** * Copy Constructor * @param e */ public LensException(LensException e) { this(e.getMessage(), e.getErrorInfo(), e.getCause(), e.errorMsgFormattingArgs); }
/** * Copy Constructor * @param e */ public LensException(LensException e) { this(e.getMessage(), e.getErrorInfo(), e.getCause(), e.errorMsgFormattingArgs); }
@Test public void testJdbcSqlException() throws Exception { final String query = "SELECT invalid_column FROM execute_test"; try { PreparedQueryContext pContext = new PreparedQueryContext(query, "SA", baseConf, drivers); driver.validate(pContext); driver.prepare(pContext); } catch (LensException e) { assertEquals(e.getErrorInfo().getErrorCode(), 4001); assertEquals(e.getErrorInfo().getErrorName(), "SEMANTIC_ERROR"); assertTrue(e.getMessage().contains("user lacks privilege or object not found: EXECUTE_TEST")); } }
@Test public void testFactValidity() throws ParseException, LensException, HiveException, ClassNotFoundException { String query = "select msr2 from " + CubeTestSetup.TEST_CUBE_NAME + " where " + LAST_YEAR_RANGE; LensException e = getLensExceptionInRewrite(query, getConf()); assertEquals(e.getErrorInfo().getErrorName(), "NO_UNION_CANDIDATE_AVAILABLE"); }
@Test public void testQueryTimeRange() throws LensException { String query = "select msr2 from " + CubeTestSetup.TEST_CUBE_NAME + " where " + PREV_FIVE_TO_NEXT_FIVE_YEAR_RANGE; LensException e = getLensExceptionInRewrite(query, getConf()); assertEquals(e.getErrorInfo().getErrorName(), "QUERY_OUT_OF_ALLOWED_RANGE"); }
@Test(priority = 2) public void testAdminControl() throws Exception { long currentTime = System.currentTimeMillis(); XJob job = getTestJob("0/5 * * * * ?", queryString, currentTime, currentTime + 180000); LensSessionHandle sessionHandle = scheduler.openSessionAsUser(user); SchedulerJobHandle jobHandle1 = scheduler.submitJob(sessionHandle, job); SchedulerJobHandle jobHandle2 = scheduler.submitJob(sessionHandle, job); SchedulerJobHandle jobHandle3 = scheduler.submitJob(sessionHandle, job); // Fourth should throw an error. try { SchedulerJobHandle jobHandle = scheduler.submitJob(sessionHandle, job); } catch (LensException e) { Assert.assertEquals(e.getErrorCode(), 5009); Assert.assertEquals(e.getErrorInfo().getErrorName(), LensSchedulerErrorCode.MAX_SCHEDULED_JOB_EXCEEDED.name()); } scheduler.expireJob(sessionHandle, jobHandle1); scheduler.expireJob(sessionHandle, jobHandle2); scheduler.expireJob(sessionHandle, jobHandle3); }