You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by an...@apache.org on 2011/11/11 00:56:08 UTC
svn commit: r1200642 [2/2] - in /incubator/oozie/trunk: ./
core/src/main/java/org/apache/oozie/
core/src/main/java/org/apache/oozie/command/coord/
core/src/main/java/org/apache/oozie/executor/jpa/
core/src/main/java/org/apache/oozie/service/ core/src/t...
Added: incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsStatusByPendingFalseJPAExecutor.java
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsStatusByPendingFalseJPAExecutor.java?rev=1200642&view=auto
==============================================================================
--- incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsStatusByPendingFalseJPAExecutor.java (added)
+++ incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsStatusByPendingFalseJPAExecutor.java Thu Nov 10 23:56:07 2011
@@ -0,0 +1,106 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.oozie.executor.jpa;
+
+import java.util.List;
+
+import org.apache.oozie.CoordinatorActionBean;
+import org.apache.oozie.CoordinatorJobBean;
+import org.apache.oozie.client.CoordinatorAction;
+import org.apache.oozie.client.CoordinatorJob;
+import org.apache.oozie.local.LocalOozie;
+import org.apache.oozie.service.JPAService;
+import org.apache.oozie.service.Services;
+import org.apache.oozie.test.XDataTestCase;
+
+public class TestCoordJobGetActionsStatusByPendingFalseJPAExecutor extends XDataTestCase {
+ Services services;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ services = new Services();
+ services.init();
+ cleanUpDBTables();
+ LocalOozie.start();
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ LocalOozie.stop();
+ services.destroy();
+ super.tearDown();
+ }
+
+ /*
+ * Add a Coordinator action with pending false and check for expected column values
+ */
+ public void testCoordActionsStatusByPendingFalseForColumnValues() throws Exception {
+ int actionNum = 1;
+ CoordinatorJobBean job = addRecordToCoordJobTable(CoordinatorJob.Status.RUNNING, false, false);
+ String jobId = job.getId();
+ CoordinatorActionBean action = addRecordToCoordActionTable(jobId, actionNum++,
+ CoordinatorAction.Status.WAITING, "coord-action-get.xml", 0);
+
+ _testCoordActionForCorrectColumnValues(jobId, action.getStatus());
+
+ }
+
+ /*
+ * Add 3 Coordinator actions with pending false and 1 Coordinator action with pending true.
+ * Then check for expected number of actions retrieved
+ */
+ public void testCoordActionsStatusByPendingFalseForSize() throws Exception{
+ int actionNum = 1;
+ CoordinatorJobBean job = addRecordToCoordJobTable(CoordinatorJob.Status.RUNNING, false, false);
+ String jobId = job.getId();
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.WAITING, "coord-action-get.xml", 0);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.FAILED, "coord-action-get.xml", 0);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.RUNNING, "coord-action-get.xml", 0);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.KILLED, "coord-action-get.xml", 1);
+
+ _testCoordActionsPendingSize(jobId, 3);
+ }
+
+ // test sql projection operation
+ private void _testCoordActionForCorrectColumnValues(String jobId, CoordinatorAction.Status status) throws Exception {
+ JPAService jpaService = Services.get().get(JPAService.class);
+ assertNotNull(jpaService);
+ // Call JPAExecutor to get actions which are pending
+ CoordJobGetActionsStatusByPendingFalseJPAExecutor actionGetCmd = new CoordJobGetActionsStatusByPendingFalseJPAExecutor(
+ jobId);
+ List<CoordinatorAction.Status> actionList = jpaService.execute(actionGetCmd);
+ CoordinatorAction.Status cAStatus = actionList.get(0);
+
+ assertEquals(cAStatus, status);
+
+ }
+
+ // test sql selection operation
+ private void _testCoordActionsPendingSize(String jobId, int expectedSize) throws Exception {
+ JPAService jpaService = Services.get().get(JPAService.class);
+ assertNotNull(jpaService);
+ // Call JPAExecutor to get actions which are pending
+ CoordJobGetActionsStatusByPendingFalseJPAExecutor actionGetCmd = new CoordJobGetActionsStatusByPendingFalseJPAExecutor(jobId);
+ List<CoordinatorAction.Status> actionList = jpaService.execute(actionGetCmd);
+ // As 3 actions are not pending, expected result set is of size 3
+ assertEquals(actionList.size(), expectedSize);
+
+ }
+
+}
Added: incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsSuspendedJPAExecutor.java
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsSuspendedJPAExecutor.java?rev=1200642&view=auto
==============================================================================
--- incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsSuspendedJPAExecutor.java (added)
+++ incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetActionsSuspendedJPAExecutor.java Thu Nov 10 23:56:07 2011
@@ -0,0 +1,107 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.oozie.executor.jpa;
+
+import java.util.List;
+
+import org.apache.oozie.CoordinatorActionBean;
+import org.apache.oozie.CoordinatorJobBean;
+import org.apache.oozie.client.CoordinatorAction;
+import org.apache.oozie.client.CoordinatorJob;
+import org.apache.oozie.local.LocalOozie;
+import org.apache.oozie.service.JPAService;
+import org.apache.oozie.service.Services;
+import org.apache.oozie.test.XDataTestCase;
+
+public class TestCoordJobGetActionsSuspendedJPAExecutor extends XDataTestCase {
+ Services services;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ services = new Services();
+ services.init();
+ cleanUpDBTables();
+ LocalOozie.start();
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ LocalOozie.stop();
+ services.destroy();
+ super.tearDown();
+ }
+
+ /*
+ * Add a Coordinator action with status SUSPENDED and check for expected column values
+ */
+ public void testCoordActionsSuspendedForColumnValues() throws Exception {
+ int actionNum = 1;
+ CoordinatorJobBean job = addRecordToCoordJobTable(CoordinatorJob.Status.RUNNING, false, false);
+ String jobId = job.getId();
+ CoordinatorActionBean action = addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.SUSPENDED,
+ "coord-action-get.xml", 0);
+
+ _testCoordActionsForCorrectColumnValues(jobId, action.getId(), action.getStatus(), action.getPending());
+ }
+
+ /*
+ * Add 2 Coordinator actions with status as SUSPENDED, 1 Coordinator action with status FAILED and 1
+ * with KILLED. Then check for expected number of actions retrieved
+ */
+ public void testCoordActionsSuspendedForSize() throws Exception{
+ int actionNum = 1;
+ CoordinatorJobBean job = addRecordToCoordJobTable(CoordinatorJob.Status.RUNNING, false, false);
+ String jobId = job.getId();
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.SUSPENDED, "coord-action-get.xml", 0);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.SUSPENDED, "coord-action-get.xml", 1);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.FAILED, "coord-action-get.xml", 0);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.KILLED, "coord-action-get.xml", 0);
+
+ _testCoordActionsSuspendedSize(jobId, 2);
+ }
+
+ // test sql projection operator
+ private void _testCoordActionsForCorrectColumnValues(String jobId, String actionId, CoordinatorAction.Status status,
+ int pending) throws Exception {
+ JPAService jpaService = Services.get().get(JPAService.class);
+ assertNotNull(jpaService);
+ // Call JPAExecutor to get actions which are suspended
+ CoordJobGetActionsSuspendedJPAExecutor actionGetCmd = new CoordJobGetActionsSuspendedJPAExecutor(jobId);
+ List<CoordinatorActionBean> actionList = jpaService.execute(actionGetCmd);
+ // check for expected column values
+ CoordinatorActionBean action = actionList.get(0);
+ assertEquals(action.getId(), actionId);
+ assertEquals(action.getStatus(), status);
+ assertEquals(action.getPending(), pending);
+ }
+
+
+ // test sql selection operator
+ private void _testCoordActionsSuspendedSize(String jobId, int expectedSize) throws Exception {
+ JPAService jpaService = Services.get().get(JPAService.class);
+ assertNotNull(jpaService);
+ // Call JPAExecutor to get actions which are suspended
+ CoordJobGetActionsSuspendedJPAExecutor actionGetCmd = new CoordJobGetActionsSuspendedJPAExecutor(jobId);
+ List<CoordinatorActionBean> actionList = jpaService.execute(actionGetCmd);
+ // As two actions are suspended, expected result set is of size 2
+ assertEquals(actionList.size(), expectedSize);
+
+ }
+
+}
Added: incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetPendingActionsCountJPAExecutor.java
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetPendingActionsCountJPAExecutor.java?rev=1200642&view=auto
==============================================================================
--- incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetPendingActionsCountJPAExecutor.java (added)
+++ incubator/oozie/trunk/core/src/test/java/org/apache/oozie/executor/jpa/TestCoordJobGetPendingActionsCountJPAExecutor.java Thu Nov 10 23:56:07 2011
@@ -0,0 +1,70 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.oozie.executor.jpa;
+
+import org.apache.oozie.CoordinatorJobBean;
+import org.apache.oozie.client.CoordinatorAction;
+import org.apache.oozie.client.CoordinatorJob;
+import org.apache.oozie.local.LocalOozie;
+import org.apache.oozie.service.JPAService;
+import org.apache.oozie.service.Services;
+import org.apache.oozie.test.XDataTestCase;
+
+public class TestCoordJobGetPendingActionsCountJPAExecutor extends XDataTestCase {
+ Services services;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ services = new Services();
+ services.init();
+ cleanUpDBTables();
+ LocalOozie.start();
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ LocalOozie.stop();
+ services.destroy();
+ super.tearDown();
+ }
+
+ public void testCoordJobGetPendingActionsCount() throws Exception {
+ int actionNum = 1;
+ CoordinatorJobBean job = addRecordToCoordJobTable(CoordinatorJob.Status.RUNNING, false, false);
+ String jobId = job.getId();
+ // Insert 2 coordinator actions with pending true and 1 coordinator action with pending false
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.FAILED, "coord-action-get.xml", 1);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.KILLED, "coord-action-get.xml", 1);
+ addRecordToCoordActionTable(jobId, actionNum++, CoordinatorAction.Status.WAITING, "coord-action-get.xml", 0);
+
+ _testCoordActionsPendingCount(jobId, 2);
+ }
+
+ private void _testCoordActionsPendingCount(String jobId, int expectedSize) throws Exception {
+ JPAService jpaService = Services.get().get(JPAService.class);
+ assertNotNull(jpaService);
+ // Call JPAExecutor to get actions which are pending
+ CoordJobGetPendingActionsCountJPAExecutor actionGetCmd = new CoordJobGetPendingActionsCountJPAExecutor(jobId);
+ int pendingCount = jpaService.execute(actionGetCmd);
+ // As two actions are pending, expected count is 2
+ assertEquals(pendingCount, expectedSize);
+
+ }
+
+}
Modified: incubator/oozie/trunk/release-log.txt
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/release-log.txt?rev=1200642&r1=1200641&r2=1200642&view=diff
==============================================================================
--- incubator/oozie/trunk/release-log.txt (original)
+++ incubator/oozie/trunk/release-log.txt Thu Nov 10 23:56:07 2011
@@ -1,6 +1,7 @@
-- Oozie 3.2.0 release
OOZIE-590 Log Retrieval from multiple .gz archive files
+OOZIE-587 Out of memory issues due to current query design
-- Oozie 3.1.2 release