You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by rl...@apache.org on 2015/05/23 02:36:42 UTC

ambari git commit: AMBARI-11327. DDL errors seen on a cluster while enabling Kerberos (rlevas)

Repository: ambari
Updated Branches:
  refs/heads/trunk b0693c86d -> cf5293a2c


AMBARI-11327. DDL errors seen on a cluster while enabling Kerberos (rlevas)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/cf5293a2
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/cf5293a2
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/cf5293a2

Branch: refs/heads/trunk
Commit: cf5293a2c06de405a8aeb740481d98d7cd19baa2
Parents: b0693c8
Author: Robert Levas <rl...@hortonworks.com>
Authored: Fri May 22 20:36:27 2015 -0400
Committer: Robert Levas <rl...@hortonworks.com>
Committed: Fri May 22 20:36:37 2015 -0400

----------------------------------------------------------------------
 .../server/orm/dao/KerberosPrincipalDAO.java      | 18 +++++++++++++++++-
 .../orm/entities/KerberosPrincipalEntity.java     |  2 --
 .../orm/entities/KerberosPrincipalHostEntity.java |  1 -
 3 files changed, 17 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/cf5293a2/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/KerberosPrincipalDAO.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/KerberosPrincipalDAO.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/KerberosPrincipalDAO.java
index 126d768..7aa4df2 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/KerberosPrincipalDAO.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/dao/KerberosPrincipalDAO.java
@@ -43,6 +43,11 @@ public class KerberosPrincipalDAO {
   @Inject
   Provider<EntityManager> entityManagerProvider;
 
+  /**
+   * Kerberos Principal Host DAO
+   */
+  @Inject
+  private KerberosPrincipalHostDAO kerberosPrincipalHostDAO;
 
   /**
    * Make an instance managed and persistent.
@@ -84,7 +89,18 @@ public class KerberosPrincipalDAO {
    */
   @Transactional
   public void remove(KerberosPrincipalEntity kerberosPrincipalEntity) {
-    entityManagerProvider.get().remove(merge(kerberosPrincipalEntity));
+    if(kerberosPrincipalEntity != null) {
+      EntityManager entityManager = entityManagerProvider.get();
+      String principalName = kerberosPrincipalEntity.getPrincipalName();
+
+      // Remove child entities...
+      kerberosPrincipalHostDAO.removeByPrincipal(principalName);
+
+      kerberosPrincipalEntity = find(principalName);
+      if (kerberosPrincipalEntity != null) {
+        entityManager.remove(kerberosPrincipalEntity);
+      }
+    }
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/cf5293a2/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalEntity.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalEntity.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalEntity.java
index 45ccd9c..0d89fcc 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalEntity.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalEntity.java
@@ -25,8 +25,6 @@ import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
 import javax.persistence.NamedQueries;
 import javax.persistence.NamedQuery;
 import javax.persistence.OneToMany;

http://git-wip-us.apache.org/repos/asf/ambari/blob/cf5293a2/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalHostEntity.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalHostEntity.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalHostEntity.java
index d8266e5..bb67131 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalHostEntity.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/KerberosPrincipalHostEntity.java
@@ -23,7 +23,6 @@ import javax.persistence.Entity;
 import javax.persistence.Id;
 import javax.persistence.IdClass;
 import javax.persistence.JoinColumn;
-import javax.persistence.JoinColumns;
 import javax.persistence.ManyToOne;
 import javax.persistence.NamedQueries;
 import javax.persistence.NamedQuery;