You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ha...@apache.org on 2017/07/05 13:17:59 UTC
[1/2] ambari git commit: AMBARI-21364 DB consistency checker throws
errors for missing 'parquet-logging' and 'product-info' configs after Ambari
upgrade (dlysnichenko via dgrinenko)
Repository: ambari
Updated Branches:
refs/heads/branch-2.5 9cd94a795 -> 0ac6a1e74
refs/heads/trunk 29203a15d -> 19d4200e7
AMBARI-21364 DB consistency checker throws errors for missing 'parquet-logging' and 'product-info' configs after Ambari upgrade (dlysnichenko via dgrinenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/0ac6a1e7
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/0ac6a1e7
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/0ac6a1e7
Branch: refs/heads/branch-2.5
Commit: 0ac6a1e74c72831eaf496bd1f1f1648890c65ca4
Parents: 9cd94a7
Author: Dmytro Grinenko <ha...@apache.org>
Authored: Wed Jul 5 16:14:20 2017 +0300
Committer: Dmytro Grinenko <ha...@apache.org>
Committed: Wed Jul 5 16:14:20 2017 +0300
----------------------------------------------------------------------
.../checks/DatabaseConsistencyCheckHelper.java | 14 ++++++++++++++
.../server/state/ClientConfigFileDefinition.java | 15 +++++++++++++--
.../common-services/HIVE/0.12.0.2.0/metainfo.xml | 1 +
3 files changed, 28 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/0ac6a1e7/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
index 29c1222..c6239d8 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
@@ -54,6 +54,8 @@ import org.apache.ambari.server.orm.entities.ClusterConfigEntity;
import org.apache.ambari.server.orm.entities.HostComponentDesiredStateEntity;
import org.apache.ambari.server.orm.entities.HostComponentStateEntity;
import org.apache.ambari.server.orm.entities.MetainfoEntity;
+import org.apache.ambari.server.state.ClientConfigFileDefinition;
+import org.apache.ambari.server.state.ComponentInfo;
import org.apache.ambari.server.state.SecurityState;
import org.apache.ambari.server.state.ServiceInfo;
import org.apache.ambari.server.state.State;
@@ -1040,10 +1042,22 @@ public class DatabaseConsistencyCheckHelper {
Multimap<String, String> dbServiceConfigs = dbServiceVersionConfigs.get(serviceVersion);
if (dbServiceConfigs != null) {
for (String serviceName : dbServiceConfigs.keySet()) {
+ ServiceInfo serviceInfo = serviceInfoMap.get(serviceName);
Collection<String> serviceConfigsFromStack = stackServiceConfigs.get(serviceName);
Collection<String> serviceConfigsFromDB = dbServiceConfigs.get(serviceName);
if (serviceConfigsFromDB != null && serviceConfigsFromStack != null) {
serviceConfigsFromStack.removeAll(serviceConfigsFromDB);
+ if (serviceInfo != null && serviceInfo.getComponents() != null) {
+ for (ComponentInfo componentInfo : serviceInfo.getComponents()) {
+ if (componentInfo.getClientConfigFiles() != null) {
+ for (ClientConfigFileDefinition clientConfigFileDefinition : componentInfo.getClientConfigFiles()) {
+ if (clientConfigFileDefinition.isOptional()) {
+ serviceConfigsFromStack.remove(clientConfigFileDefinition.getDictionaryName());
+ }
+ }
+ }
+ }
+ }
// skip ranger-{service_name}-* from being checked, unless ranger is installed
if(!dbServiceConfigs.containsKey("RANGER")) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/0ac6a1e7/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
index 6d31d98..3f7d42d 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
@@ -32,6 +32,15 @@ public class ClientConfigFileDefinition {
private String type;
private String fileName;
private String dictionaryName;
+ private boolean optional = false;
+
+ public boolean isOptional() {
+ return optional;
+ }
+
+ public void setOptional(boolean optional) {
+ this.optional = optional;
+ }
public void setType(String type) {
this.type = type;
@@ -73,7 +82,8 @@ public class ClientConfigFileDefinition {
return new EqualsBuilder().
append(type, rhs.type).
append(fileName, rhs.fileName).
- append(dictionaryName, rhs.dictionaryName).isEquals();
+ append(dictionaryName, rhs.dictionaryName).
+ append(optional, rhs.optional).isEquals();
}
@Override
@@ -81,6 +91,7 @@ public class ClientConfigFileDefinition {
return new HashCodeBuilder(17, 31).
append(type).
append(fileName).
- append(dictionaryName).toHashCode();
+ append(dictionaryName).
+ append(optional).toHashCode();
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/0ac6a1e7/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
index fee90cf..1fd6ee9 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
@@ -229,6 +229,7 @@
<type>env</type>
<fileName>parquet-logging.properties</fileName>
<dictionaryName>parquet-logging</dictionaryName>
+ <optional>true</optional>
</configFile>
</configFiles>
<configuration-dependencies>
[2/2] ambari git commit: AMBARI-21364 DB consistency checker throws
errors for missing 'parquet-logging' and 'product-info' configs after Ambari
upgrade (dlysnichenko via dgrinenko)
Posted by ha...@apache.org.
AMBARI-21364 DB consistency checker throws errors for missing 'parquet-logging' and 'product-info' configs after Ambari upgrade (dlysnichenko via dgrinenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/19d4200e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/19d4200e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/19d4200e
Branch: refs/heads/trunk
Commit: 19d4200e719854b0d304e0d7be5e20f33cda46ff
Parents: 29203a1
Author: Dmytro Grinenko <ha...@apache.org>
Authored: Wed Jul 5 16:16:49 2017 +0300
Committer: Dmytro Grinenko <ha...@apache.org>
Committed: Wed Jul 5 16:16:49 2017 +0300
----------------------------------------------------------------------
.../checks/DatabaseConsistencyCheckHelper.java | 14 ++++++++++++++
.../server/state/ClientConfigFileDefinition.java | 15 +++++++++++++--
.../common-services/HIVE/0.12.0.2.0/metainfo.xml | 1 +
.../common-services/HIVE/2.1.0.3.0/metainfo.xml | 7 +++++++
4 files changed, 35 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/19d4200e/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
index d1566d9..2559339 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/DatabaseConsistencyCheckHelper.java
@@ -58,6 +58,8 @@ import org.apache.ambari.server.orm.entities.HostComponentDesiredStateEntity;
import org.apache.ambari.server.orm.entities.HostComponentStateEntity;
import org.apache.ambari.server.orm.entities.MetainfoEntity;
import org.apache.ambari.server.orm.entities.ServiceComponentDesiredStateEntity;
+import org.apache.ambari.server.state.ClientConfigFileDefinition;
+import org.apache.ambari.server.state.ComponentInfo;
import org.apache.ambari.server.state.SecurityState;
import org.apache.ambari.server.state.ServiceInfo;
import org.apache.ambari.server.state.State;
@@ -1022,10 +1024,22 @@ public class DatabaseConsistencyCheckHelper {
Multimap<String, String> dbServiceConfigs = dbServiceVersionConfigs.get(serviceVersion);
if (dbServiceConfigs != null) {
for (String serviceName : dbServiceConfigs.keySet()) {
+ ServiceInfo serviceInfo = serviceInfoMap.get(serviceName);
Collection<String> serviceConfigsFromStack = stackServiceConfigs.get(serviceName);
Collection<String> serviceConfigsFromDB = dbServiceConfigs.get(serviceName);
if (serviceConfigsFromDB != null && serviceConfigsFromStack != null) {
serviceConfigsFromStack.removeAll(serviceConfigsFromDB);
+ if (serviceInfo != null && serviceInfo.getComponents() != null) {
+ for (ComponentInfo componentInfo : serviceInfo.getComponents()) {
+ if (componentInfo.getClientConfigFiles() != null) {
+ for (ClientConfigFileDefinition clientConfigFileDefinition : componentInfo.getClientConfigFiles()) {
+ if (clientConfigFileDefinition.isOptional()) {
+ serviceConfigsFromStack.remove(clientConfigFileDefinition.getDictionaryName());
+ }
+ }
+ }
+ }
+ }
// skip ranger-{service_name}-* from being checked, unless ranger is installed
if(!dbServiceConfigs.containsKey("RANGER")) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/19d4200e/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
index 8c97473..354d4d3 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ClientConfigFileDefinition.java
@@ -32,6 +32,15 @@ public class ClientConfigFileDefinition {
private String type;
private String fileName;
private String dictionaryName;
+ private boolean optional = false;
+
+ public boolean isOptional() {
+ return optional;
+ }
+
+ public void setOptional(boolean optional) {
+ this.optional = optional;
+ }
public void setType(String type) {
this.type = type;
@@ -73,7 +82,8 @@ public class ClientConfigFileDefinition {
return new EqualsBuilder().
append(type, rhs.type).
append(fileName, rhs.fileName).
- append(dictionaryName, rhs.dictionaryName).isEquals();
+ append(dictionaryName, rhs.dictionaryName).
+ append(optional, rhs.optional).isEquals();
}
@Override
@@ -81,6 +91,7 @@ public class ClientConfigFileDefinition {
return new HashCodeBuilder(17, 31).
append(type).
append(fileName).
- append(dictionaryName).toHashCode();
+ append(dictionaryName).
+ append(optional).toHashCode();
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/19d4200e/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
index e3300e3..d2d6437 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
@@ -229,6 +229,7 @@
<type>env</type>
<fileName>parquet-logging.properties</fileName>
<dictionaryName>parquet-logging</dictionaryName>
+ <optional>true</optional>
</configFile>
</configFiles>
<configuration-dependencies>
http://git-wip-us.apache.org/repos/asf/ambari/blob/19d4200e/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml b/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
index 4225f19..db490c9 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
@@ -332,6 +332,12 @@
<fileName>hive-exec-log4j.properties</fileName>
<dictionaryName>hive-exec-log4j</dictionaryName>
</configFile>
+ <configFile>
+ <type>env</type>
+ <fileName>parquet-logging.properties</fileName>
+ <dictionaryName>parquet-logging</dictionaryName>
+ <optional>true</optional>
+ </configFile>
</configFiles>
<configuration-dependencies>
<config-type>hive-site</config-type>
@@ -514,6 +520,7 @@
<config-type>ranger-hive-audit</config-type>
<config-type>ranger-hive-policymgr-ssl</config-type>
<config-type>ranger-hive-security</config-type>
+ <config-type>parquet-logging</config-type>
<config-type>mapred-site</config-type>
<config-type>application.properties</config-type>
<config-type>hive-atlas-application.properties</config-type>