Explorar el Código

Revert "AMBARI-14249. Failing unit tests / Entity removal using the entity manager instead of named queries. (Laszlo Puskas via swagle)"

This reverts commit f65486346807c7b5389fb4d6bd97f366f9f5d408.
Dmytro Sen hace 9 años
padre
commit
96e8ba4c6d

+ 4 - 7
ambari-server/src/main/java/org/apache/ambari/server/orm/dao/AlertDispatchDAO.java

@@ -684,15 +684,12 @@ public class AlertDispatchDAO {
   @Transactional
   public void removeNoticeByDefinitionId(long definitionId) {
     EntityManager entityManager = entityManagerProvider.get();
-
     TypedQuery<AlertNoticeEntity> currentQuery = entityManager.createNamedQuery(
-        "AlertNoticeEntity.findByDefinitionId", AlertNoticeEntity.class);
-    currentQuery.setParameter("definitionId", definitionId);
-
-    for (AlertNoticeEntity alertNoticeEntity : currentQuery.getResultList()) {
-      entityManager.remove(alertNoticeEntity);
-    }
+        "AlertNoticeEntity.removeByDefinitionId", AlertNoticeEntity.class);
 
+    currentQuery.setParameter("definitionId", definitionId);
+    currentQuery.executeUpdate();
+    entityManager.clear();
   }
 
   /**

+ 7 - 9
ambari-server/src/main/java/org/apache/ambari/server/orm/dao/AlertsDAO.java

@@ -736,20 +736,18 @@ public class AlertsDAO {
   public void removeByDefinitionId(long definitionId) {
     EntityManager entityManager = m_entityManagerProvider.get();
     TypedQuery<AlertCurrentEntity> currentQuery = entityManager.createNamedQuery(
-        "AlertCurrentEntity.findByDefinitionId", AlertCurrentEntity.class);
-    currentQuery.setParameter("definitionId", definitionId);
+        "AlertCurrentEntity.removeByDefinitionId", AlertCurrentEntity.class);
 
-    for (AlertCurrentEntity alertCurrentEntity : currentQuery.getResultList()) {
-      entityManager.remove(alertCurrentEntity);
-    }
+    currentQuery.setParameter("definitionId", definitionId);
+    currentQuery.executeUpdate();
 
     TypedQuery<AlertHistoryEntity> historyQuery = entityManager.createNamedQuery(
-        "AlertHistoryEntity.findByDefinitionId", AlertHistoryEntity.class);
+        "AlertHistoryEntity.removeByDefinitionId", AlertHistoryEntity.class);
+
     historyQuery.setParameter("definitionId", definitionId);
+    historyQuery.executeUpdate();
 
-    for (AlertHistoryEntity alertHistoryEntity : historyQuery.getResultList()) {
-      entityManager.remove(alertHistoryEntity);
-    }
+    entityManager.clear();
 
     // if caching is enabled, invalidate the cache to force the latest values
     // back from the DB

+ 0 - 2
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertHistoryEntity.java

@@ -51,8 +51,6 @@ import org.apache.ambari.server.state.AlertState;
     @NamedQuery(name = "AlertHistoryEntity.findAllInClusterBetweenDates", query = "SELECT alertHistory FROM AlertHistoryEntity alertHistory WHERE alertHistory.clusterId = :clusterId AND alertHistory.alertTimestamp BETWEEN :startDate AND :endDate"),
     @NamedQuery(name = "AlertHistoryEntity.findAllInClusterBeforeDate", query = "SELECT alertHistory FROM AlertHistoryEntity alertHistory WHERE alertHistory.clusterId = :clusterId AND alertHistory.alertTimestamp <= :beforeDate"),
     @NamedQuery(name = "AlertHistoryEntity.findAllInClusterAfterDate", query = "SELECT alertHistory FROM AlertHistoryEntity alertHistory WHERE alertHistory.clusterId = :clusterId AND alertHistory.alertTimestamp >= :afterDate"),
-    @NamedQuery(name = "AlertHistoryEntity.findByDefinitionId", query = "SELECT alertHistory FROM AlertHistoryEntity " +
-        "alertHistory WHERE alertHistory.alertDefinition.definitionId = :definitionId"),
     @NamedQuery(name = "AlertHistoryEntity.removeByDefinitionId", query = "DELETE FROM AlertHistoryEntity alertHistory WHERE alertHistory.alertDefinition.definitionId = :definitionId") })
 public class AlertHistoryEntity {
 

+ 0 - 1
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertNoticeEntity.java

@@ -49,7 +49,6 @@ import org.apache.ambari.server.state.NotificationState;
     @NamedQuery(name = "AlertNoticeEntity.findAll", query = "SELECT notice FROM AlertNoticeEntity notice"),
     @NamedQuery(name = "AlertNoticeEntity.findByState", query = "SELECT notice FROM AlertNoticeEntity notice WHERE notice.notifyState = :notifyState"),
     @NamedQuery(name = "AlertNoticeEntity.findByUuid", query = "SELECT notice FROM AlertNoticeEntity notice WHERE notice.uuid = :uuid"),
-    @NamedQuery(name = "AlertNoticeEntity.findByDefinitionId", query = "SELECT notice FROM AlertNoticeEntity notice WHERE notice.alertHistory.alertDefinition.definitionId = :definitionId"),
     @NamedQuery(name = "AlertNoticeEntity.removeByDefinitionId", query = "DELETE FROM AlertNoticeEntity notice WHERE notice.alertHistory.alertDefinition.definitionId = :definitionId") })
 public class AlertNoticeEntity {
 

+ 1 - 2
ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDefinitionDAOTest.java

@@ -381,8 +381,7 @@ public class AlertDefinitionDAOTest {
     ClusterDAO clusterDAO = injector.getInstance(ClusterDAO.class);
     ClusterEntity clusterEntity = clusterDAO.findById(clusterId);
     clusterDAO.refresh(clusterEntity);
-    injector.getInstance(UnitOfWork.class).end();
-    injector.getInstance(UnitOfWork.class).begin();
+
     Clusters clusters = injector.getInstance(Clusters.class);
     Cluster cluster = clusters.getClusterById(clusterId);
     cluster.delete();

+ 1 - 10
ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertDispatchDAOTest.java

@@ -513,8 +513,6 @@ public class AlertDispatchDAOTest {
     target = m_dao.findTargetById(target.getTargetId());
     assertNull(target);
 
-    m_dao.refresh(group);
-
     group = m_dao.findGroupById(group.getGroupId());
     assertNotNull(group);
 
@@ -665,9 +663,7 @@ public class AlertDispatchDAOTest {
   public void testAlertNoticePredicate() throws Exception {
     Cluster cluster = m_helper.buildNewCluster(m_clusters, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
-    // end the UnitOfWork to clean the cache
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
+
     m_alertHelper.populateData(cluster);
 
     Predicate clusterPredicate = null;
@@ -746,9 +742,6 @@ public class AlertDispatchDAOTest {
     Cluster cluster = m_helper.buildNewCluster(m_clusters, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
 
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
-
     m_alertHelper.populateData(cluster);
 
     AlertNoticeRequest request = new AlertNoticeRequest();
@@ -789,8 +782,6 @@ public class AlertDispatchDAOTest {
   public void testAlertNoticeSorting() throws Exception {
     Cluster cluster = m_helper.buildNewCluster(m_clusters, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
 
     m_alertHelper.populateData(cluster);
 

+ 0 - 12
ambari-server/src/test/java/org/apache/ambari/server/orm/dao/AlertsDAOTest.java

@@ -1175,10 +1175,6 @@ public class AlertsDAOTest {
   public void testAlertHistoryPredicate() throws Exception {
     m_helper.installHdfsService(m_cluster, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
-
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
-
     m_alertHelper.populateData(m_cluster);
 
     Predicate clusterPredicate = null;
@@ -1272,10 +1268,6 @@ public class AlertsDAOTest {
   public void testAlertHistoryPagination() throws Exception {
     m_helper.installHdfsService(m_cluster, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
-
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
-
     m_alertHelper.populateData(m_cluster);
 
     AlertHistoryRequest request = new AlertHistoryRequest();
@@ -1316,10 +1308,6 @@ public class AlertsDAOTest {
   public void testAlertHistorySorting() throws Exception {
     m_helper.installHdfsService(m_cluster, m_serviceFactory,
         m_componentFactory, m_schFactory, HOSTNAME);
-
-    m_injector.getInstance(UnitOfWork.class).end();
-    m_injector.getInstance(UnitOfWork.class).begin();
-
     m_alertHelper.populateData(m_cluster);
 
     List<SortRequestProperty> sortProperties = new ArrayList<SortRequestProperty>();

+ 0 - 3
ambari-server/src/test/java/org/apache/ambari/server/orm/dao/RequestDAOTest.java

@@ -49,7 +49,6 @@ import org.junit.Test;
 import com.google.inject.Guice;
 import com.google.inject.Injector;
 import com.google.inject.persist.PersistService;
-import com.google.inject.persist.UnitOfWork;
 
 /**
  * RequestDAO unit tests
@@ -73,13 +72,11 @@ public class RequestDAOTest {
     hostRoleCommandDAO = injector.getInstance(HostRoleCommandDAO.class);
     hostDAO = injector.getInstance(HostDAO.class);
     requestDAO = injector.getInstance(RequestDAO.class);
-    injector.getInstance(UnitOfWork.class).begin();
 
   }
 
   @After
   public void teardown() throws AmbariException {
-    injector.getInstance(UnitOfWork.class).end();
     injector.getInstance(PersistService.class).stop();
   }