You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jo...@apache.org on 2017/07/19 14:20:15 UTC
[13/13] ambari git commit: AMBARI-21450 - Fixing Unit Test
Compilation Issues From trunk Merge (jonathanhurley)
AMBARI-21450 - Fixing Unit Test Compilation Issues From trunk Merge (jonathanhurley)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/56362fd6
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/56362fd6
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/56362fd6
Branch: refs/heads/branch-feature-AMBARI-21450
Commit: 56362fd64ecd779d1b8827a83f224a824edd5ad4
Parents: 5cdcd07
Author: Jonathan Hurley <jh...@hortonworks.com>
Authored: Tue Jul 18 15:34:01 2017 -0400
Committer: Jonathan Hurley <jh...@hortonworks.com>
Committed: Wed Jul 19 10:19:13 2017 -0400
----------------------------------------------------------------------
.../server/controller/ClusterResponse.java | 10 +-
.../controller/ResourceProviderFactory.java | 8 +-
.../AbstractControllerResourceProvider.java | 4 +-
.../internal/ComponentResourceProvider.java | 55 +-
.../ambari/server/state/ConfigHelper.java | 16 +
.../main/resources/Ambari-DDL-Derby-CREATE.sql | 70 +-
.../main/resources/Ambari-DDL-MySQL-CREATE.sql | 71 +-
.../main/resources/Ambari-DDL-Oracle-CREATE.sql | 75 +-
.../resources/Ambari-DDL-SQLAnywhere-CREATE.sql | 76 +-
.../resources/Ambari-DDL-SQLServer-CREATE.sql | 70 +-
.../TestActionSchedulerThreading.java | 31 +-
.../server/agent/DummyHeartbeatConstants.java | 3 +-
.../server/agent/HeartbeatProcessorTest.java | 240 +-
.../server/agent/HeartbeatTestHelper.java | 26 +-
.../server/agent/TestHeartbeatHandler.java | 203 +-
.../server/agent/TestHeartbeatMonitor.java | 49 +-
.../resources/BaseResourceDefinitionTest.java | 60 +-
.../server/api/services/AmbariMetaInfoTest.java | 235 +-
.../checks/AbstractCheckDescriptorTest.java | 27 +-
...duce2JobHistoryStatePreservingCheckTest.java | 38 +-
.../server/checks/RangerAuditDbCheckTest.java | 8 +-
.../configuration/RecoveryConfigHelperTest.java | 51 +-
.../AmbariCustomCommandExecutionHelperTest.java | 6 +-
.../AmbariManagementControllerImplTest.java | 382 ++--
.../AmbariManagementControllerTest.java | 2108 ++++++------------
.../BackgroundCustomCommandExecutionTest.java | 36 +-
.../server/controller/ClusterResponseTest.java | 8 +-
.../server/controller/KerberosHelperTest.java | 477 ++--
...hYarnCapacitySchedulerReleaseConfigTest.java | 86 +-
.../AbstractControllerResourceProviderTest.java | 51 +-
.../internal/AbstractResourceProviderTest.java | 73 +-
.../ClientConfigResourceProviderTest.java | 12 +-
...leRepositoryVersionResourceProviderTest.java | 11 +-
.../internal/ComponentResourceProviderTest.java | 225 +-
.../HostComponentResourceProviderTest.java | 87 +-
.../internal/JMXHostProviderTest.java | 72 +-
...ootServiceComponentResourceProviderTest.java | 35 +-
...erviceHostComponentResourceProviderTest.java | 26 +-
.../internal/ScaleClusterRequestTest.java | 74 +-
.../internal/ServiceResourceProviderTest.java | 2 +-
.../StackDefinedPropertyProviderTest.java | 48 +-
.../StackUpgradeConfigurationMergeTest.java | 263 +--
.../UpgradeResourceProviderHDP22Test.java | 324 ---
.../internal/UpgradeResourceProviderTest.java | 2 +-
.../UpgradeSummaryResourceProviderTest.java | 29 +-
.../GeneralServiceCalculatedStateTest.java | 15 +-
.../apache/ambari/server/events/EventsTest.java | 29 +-
.../apache/ambari/server/orm/OrmTestHelper.java | 104 +-
.../orm/dao/RepositoryVersionDAOTest.java | 41 +-
.../ambari/server/orm/dao/UpgradeDAOTest.java | 20 +-
.../UpdateKerberosConfigsServerActionTest.java | 19 +-
.../upgrades/ConfigureActionTest.java | 706 +++---
.../upgrades/UpgradeActionTest.java | 686 ++----
.../ambari/server/state/CheckHelperTest.java | 15 +-
.../ambari/server/state/ConfigHelperTest.java | 65 +-
.../server/state/ServiceComponentTest.java | 346 ++-
.../apache/ambari/server/state/ServiceTest.java | 84 +-
.../state/alerts/AlertEventPublisherTest.java | 21 +-
.../state/alerts/InitialAlertEventTest.java | 23 +-
.../state/cluster/ClusterDeadlockTest.java | 35 +-
.../cluster/ClusterEffectiveVersionTest.java | 326 ---
.../server/state/cluster/ClusterImplTest.java | 47 +-
.../server/state/cluster/ClusterTest.java | 1167 +++-------
.../state/cluster/ClustersDeadlockTest.java | 26 +-
.../server/state/cluster/ClustersTest.java | 65 +-
.../ConcurrentServiceConfigVersionTest.java | 23 +-
...omponentHostConcurrentWriteDeadlockTest.java | 39 +-
.../ambari/server/state/host/HostTest.java | 28 +-
.../svccomphost/ServiceComponentHostTest.java | 95 +-
.../server/topology/TopologyManagerTest.java | 25 +-
.../server/upgrade/UpgradeCatalogHelper.java | 39 +-
.../server/upgrade/UpgradeCatalogTest.java | 42 +-
.../ambari/server/utils/StageUtilsTest.java | 65 +-
73 files changed, 3636 insertions(+), 6423 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java
index e19f8f6..c7577ee 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterResponse.java
@@ -19,15 +19,13 @@
package org.apache.ambari.server.controller;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
import java.util.Set;
-import com.google.common.collect.Multimap;
+import org.apache.ambari.server.state.ClusterHealthReport;
import org.apache.ambari.server.state.DesiredConfig;
import org.apache.ambari.server.state.SecurityType;
import org.apache.ambari.server.state.State;
-import org.apache.ambari.server.state.ClusterHealthReport;
public class ClusterResponse {
@@ -84,7 +82,7 @@ public class ClusterResponse {
/**
* @return the clusterId
*/
- public Long getClusterId() {
+ public long getClusterId() {
return clusterId;
}
@@ -215,7 +213,7 @@ public class ClusterResponse {
/**
* @return total number of hosts in the cluster
*/
- public Integer getTotalHosts() {
+ public int getTotalHosts() {
return totalHosts;
}
@@ -235,7 +233,7 @@ public class ClusterResponse {
}
public void setCredentialStoreServiceProperties(Map<String, String> credentialServiceProperties) {
- this.credentialStoreServiceProperties = credentialServiceProperties;
+ credentialStoreServiceProperties = credentialServiceProperties;
}
public Map<String, String> getCredentialStoreServiceProperties() {
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java
index fb8742b..9f9eaee 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java
@@ -1,4 +1,4 @@
-/**
+/*
* 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
@@ -44,9 +44,7 @@ public interface ResourceProviderFactory {
ResourceProvider getServiceResourceProvider(AmbariManagementController managementController);
@Named("component")
- ResourceProvider getComponentResourceProvider(Set<String> propertyIds,
- Map<Type, String> keyPropertyIds,
- AmbariManagementController managementController);
+ ResourceProvider getComponentResourceProvider(AmbariManagementController managementController);
@Named("member")
ResourceProvider getMemberResourceProvider(Set<String> propertyIds,
@@ -70,4 +68,4 @@ public interface ResourceProviderFactory {
@Named("upgrade")
UpgradeResourceProvider getUpgradeResourceProvider(AmbariManagementController managementController);
-}
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
index a9d234d..77e6250 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
@@ -57,7 +57,7 @@ public abstract class AbstractControllerResourceProvider extends AbstractAuthori
super(propertyIds, keyPropertyIds);
this.managementController = managementController;
}
-
+
/**
* Create a new resource provider for the given management controller. This
* constructor will initialize the specified {@link Resource.Type} with the
@@ -155,7 +155,7 @@ public abstract class AbstractControllerResourceProvider extends AbstractAuthori
case Service:
return resourceProviderFactory.getServiceResourceProvider(managementController);
case Component:
- return resourceProviderFactory.getComponentResourceProvider(propertyIds, keyPropertyIds, managementController);
+ return resourceProviderFactory.getComponentResourceProvider(managementController);
case Host:
return resourceProviderFactory.getHostResourceProvider(propertyIds, keyPropertyIds, managementController);
case HostComponent:
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
index b35903b..9137799 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
@@ -18,7 +18,6 @@
package org.apache.ambari.server.controller.internal;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collection;
import java.util.EnumSet;
import java.util.HashMap;
@@ -64,6 +63,7 @@ import org.apache.ambari.server.state.State;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.Validate;
+import com.google.common.collect.Sets;
import com.google.inject.assistedinject.Assisted;
import com.google.inject.assistedinject.AssistedInject;
import com.google.inject.persist.Transactional;
@@ -98,11 +98,46 @@ public class ComponentResourceProvider extends AbstractControllerResourceProvide
//Parameters from the predicate
private static final String QUERY_PARAMETERS_RUN_SMOKE_TEST_ID = "params/run_smoke_test";
- private static Set<String> pkPropertyIds =
- new HashSet<>(Arrays.asList(new String[]{
- COMPONENT_CLUSTER_NAME_PROPERTY_ID,
- COMPONENT_SERVICE_NAME_PROPERTY_ID,
- COMPONENT_COMPONENT_NAME_PROPERTY_ID}));
+ private static Set<String> pkPropertyIds = Sets.newHashSet(COMPONENT_CLUSTER_NAME_PROPERTY_ID,
+ COMPONENT_SERVICE_NAME_PROPERTY_ID, COMPONENT_COMPONENT_NAME_PROPERTY_ID);
+
+ /**
+ * The property ids for an servce resource.
+ */
+ private static final Set<String> PROPERTY_IDS = new HashSet<>();
+
+ /**
+ * The key property ids for an service resource.
+ */
+ private static final Map<Resource.Type, String> KEY_PROPERTY_IDS = new HashMap<>();
+
+ static {
+ // properties
+ PROPERTY_IDS.add(COMPONENT_CLUSTER_NAME_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_SERVICE_NAME_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_COMPONENT_NAME_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_DISPLAY_NAME_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_STATE_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_CATEGORY_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_TOTAL_COUNT_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_STARTED_COUNT_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_INSTALLED_COUNT_PROPERTY_ID);
+
+ PROPERTY_IDS.add(COMPONENT_INIT_COUNT_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_UNKNOWN_COUNT_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_INSTALL_FAILED_COUNT_PROPERTY_ID);
+ PROPERTY_IDS.add(COMPONENT_RECOVERY_ENABLED_ID);
+ PROPERTY_IDS.add(COMPONENT_DESIRED_STACK);
+ PROPERTY_IDS.add(COMPONENT_DESIRED_VERSION);
+ PROPERTY_IDS.add(COMPONENT_REPOSITORY_STATE);
+
+ PROPERTY_IDS.add(QUERY_PARAMETERS_RUN_SMOKE_TEST_ID);
+
+ // keys
+ KEY_PROPERTY_IDS.put(Resource.Type.Component, COMPONENT_COMPONENT_NAME_PROPERTY_ID);
+ KEY_PROPERTY_IDS.put(Resource.Type.Service, COMPONENT_SERVICE_NAME_PROPERTY_ID);
+ KEY_PROPERTY_IDS.put(Resource.Type.Cluster, COMPONENT_CLUSTER_NAME_PROPERTY_ID);
+ }
private MaintenanceStateHelper maintenanceStateHelper;
@@ -116,11 +151,9 @@ public class ComponentResourceProvider extends AbstractControllerResourceProvide
* @param managementController the management controller
*/
@AssistedInject
- ComponentResourceProvider(@Assisted Set<String> propertyIds,
- @Assisted Map<Resource.Type, String> keyPropertyIds,
- @Assisted AmbariManagementController managementController,
- MaintenanceStateHelper maintenanceStateHelper) {
- super(propertyIds, keyPropertyIds, managementController);
+ ComponentResourceProvider(@Assisted AmbariManagementController managementController,
+ MaintenanceStateHelper maintenanceStateHelper) {
+ super(Resource.Type.Component, PROPERTY_IDS, KEY_PROPERTY_IDS, managementController);
this.maintenanceStateHelper = maintenanceStateHelper;
setRequiredCreateAuthorizations(EnumSet.of(RoleAuthorization.SERVICE_ADD_DELETE_SERVICES, RoleAuthorization.HOST_ADD_DELETE_COMPONENTS));
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
index e178b92..cd717c5 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
@@ -219,6 +219,22 @@ public class ConfigHelper {
return resolved;
}
+
+ public Set<String> filterInvalidPropertyValues(Map<PropertyInfo, String> properties, String filteredListName) {
+ Set<String> resultSet = new HashSet<>();
+ for (Iterator<Entry<PropertyInfo, String>> iterator = properties.entrySet().iterator(); iterator.hasNext();) {
+ Entry<PropertyInfo, String> property = iterator.next();
+ PropertyInfo propertyInfo = property.getKey();
+ String propertyValue = property.getValue();
+ if (property == null || propertyValue == null || propertyValue.toLowerCase().equals("null") || propertyValue.isEmpty()) {
+ LOG.error(String.format("Excluding property %s from %s, because of invalid or empty value!", propertyInfo.getName(), filteredListName));
+ iterator.remove();
+ } else {
+ resultSet.add(propertyValue);
+ }
+ }
+ return resultSet;
+ }
/**
* Get all config properties for a cluster given a set of configType to
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql b/ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql
index 54e7039..e27430a 100644
--- a/ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql
+++ b/ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql
@@ -72,26 +72,18 @@ CREATE TABLE clusterconfig (
type_name VARCHAR(255) NOT NULL,
cluster_id BIGINT NOT NULL,
stack_id BIGINT NOT NULL,
+ selected SMALLINT NOT NULL DEFAULT 0,
config_data VARCHAR(3000) NOT NULL,
config_attributes VARCHAR(3000),
create_timestamp BIGINT NOT NULL,
service_deleted SMALLINT NOT NULL DEFAULT 0,
+ selected_timestamp BIGINT NOT NULL DEFAULT 0,
CONSTRAINT PK_clusterconfig PRIMARY KEY (config_id),
CONSTRAINT FK_clusterconfig_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
CONSTRAINT FK_clusterconfig_stack_id FOREIGN KEY (stack_id) REFERENCES stack(stack_id),
CONSTRAINT UQ_config_type_tag UNIQUE (version_tag, type_name, cluster_id),
CONSTRAINT UQ_config_type_version UNIQUE (cluster_id, type_name, version));
-CREATE TABLE clusterconfigmapping (
- cluster_id BIGINT NOT NULL,
- type_name VARCHAR(255) NOT NULL,
- version_tag VARCHAR(255) NOT NULL,
- create_timestamp BIGINT NOT NULL,
- selected INTEGER NOT NULL DEFAULT 0,
- user_name VARCHAR(255) NOT NULL DEFAULT '_db',
- CONSTRAINT PK_clusterconfigmapping PRIMARY KEY (cluster_id, type_name, create_timestamp),
- CONSTRAINT clusterconfigmappingcluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id));
-
CREATE TABLE serviceconfig (
service_config_id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
@@ -171,37 +163,25 @@ CREATE TABLE repo_version (
CONSTRAINT UQ_repo_version_display_name UNIQUE (display_name),
CONSTRAINT UQ_repo_version_stack_id UNIQUE (stack_id, version));
-CREATE TABLE cluster_version (
- id BIGINT NOT NULL,
- repo_version_id BIGINT NOT NULL,
- cluster_id BIGINT NOT NULL,
- state VARCHAR(32) NOT NULL,
- start_time BIGINT NOT NULL,
- end_time BIGINT,
- user_name VARCHAR(32),
- CONSTRAINT PK_cluster_version PRIMARY KEY (id),
- CONSTRAINT FK_cluster_version_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
- CONSTRAINT FK_cluster_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id));
CREATE TABLE servicecomponentdesiredstate (
id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
cluster_id BIGINT NOT NULL,
- desired_stack_id BIGINT NOT NULL,
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
- desired_version VARCHAR(255) NOT NULL DEFAULT 'UNKNOWN',
service_name VARCHAR(255) NOT NULL,
recovery_enabled SMALLINT NOT NULL DEFAULT 0,
+ repo_state VARCHAR(255) NOT NULL DEFAULT 'NOT_REQUIRED',
CONSTRAINT pk_sc_desiredstate PRIMARY KEY (id),
CONSTRAINT UQ_scdesiredstate_name UNIQUE(component_name, service_name, cluster_id),
- CONSTRAINT FK_scds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_scds_desired_repo_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT srvccmponentdesiredstatesrvcnm FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE hostcomponentdesiredstate (
id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
- desired_stack_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(255) NOT NULL,
@@ -212,7 +192,6 @@ CREATE TABLE hostcomponentdesiredstate (
CONSTRAINT PK_hostcomponentdesiredstate PRIMARY KEY (id),
CONSTRAINT UQ_hcdesiredstate_name UNIQUE (component_name, service_name, host_id, cluster_id),
CONSTRAINT FK_hcdesiredstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
- CONSTRAINT FK_hcds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
CONSTRAINT hstcmpnntdesiredstatecmpnntnme FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -221,14 +200,12 @@ CREATE TABLE hostcomponentstate (
cluster_id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
version VARCHAR(32) NOT NULL DEFAULT 'UNKNOWN',
- current_stack_id BIGINT NOT NULL,
current_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(255) NOT NULL,
upgrade_state VARCHAR(32) NOT NULL DEFAULT 'NONE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
CONSTRAINT pk_hostcomponentstate PRIMARY KEY (id),
- CONSTRAINT FK_hcs_current_stack_id FOREIGN KEY (current_stack_id) REFERENCES stack(stack_id),
CONSTRAINT FK_hostcomponentstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT hstcomponentstatecomponentname FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -253,19 +230,19 @@ CREATE TABLE host_version (
CONSTRAINT PK_host_version PRIMARY KEY (id),
CONSTRAINT FK_host_version_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT FK_host_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT UQ_host_repo UNIQUE(repo_version_id, host_id));
+ CONSTRAINT UQ_host_repo UNIQUE(host_id, repo_version_id, state));
CREATE TABLE servicedesiredstate (
cluster_id BIGINT NOT NULL,
desired_host_role_mapping INTEGER NOT NULL,
- desired_stack_id BIGINT NOT NULL,
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
maintenance_state VARCHAR(32) NOT NULL,
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
credential_store_enabled SMALLINT NOT NULL DEFAULT 0,
CONSTRAINT PK_servicedesiredstate PRIMARY KEY (cluster_id, service_name),
- CONSTRAINT FK_sds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_repo_version_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT servicedesiredstateservicename FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE adminprincipaltype (
@@ -831,11 +808,10 @@ CREATE TABLE upgrade (
upgrade_id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
request_id BIGINT NOT NULL,
- from_repo_version_id BIGINT NOT NULL,
- to_repo_version_id BIGINT NOT NULL,
direction VARCHAR(255) DEFAULT 'UPGRADE' NOT NULL,
upgrade_package VARCHAR(255) NOT NULL,
upgrade_type VARCHAR(32) NOT NULL,
+ repo_version_id BIGINT NOT NULL,
skip_failures SMALLINT DEFAULT 0 NOT NULL,
skip_sc_failures SMALLINT DEFAULT 0 NOT NULL,
downgrade_allowed SMALLINT DEFAULT 1 NOT NULL,
@@ -843,8 +819,7 @@ CREATE TABLE upgrade (
CONSTRAINT PK_upgrade PRIMARY KEY (upgrade_id),
FOREIGN KEY (cluster_id) REFERENCES clusters(cluster_id),
FOREIGN KEY (request_id) REFERENCES request(request_id),
- CONSTRAINT FK_upgrade_from_repo_id FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT FK_upgrade_to_repo_id FOREIGN KEY (to_repo_version_id) REFERENCES repo_version (repo_version_id)
+ FOREIGN KEY (repo_version_id) REFERENCES repo_version(repo_version_id)
);
CREATE TABLE upgrade_group (
@@ -868,17 +843,18 @@ CREATE TABLE upgrade_item (
FOREIGN KEY (upgrade_group_id) REFERENCES upgrade_group(upgrade_group_id)
);
-CREATE TABLE servicecomponent_history(
+CREATE TABLE upgrade_history(
id BIGINT NOT NULL,
- component_id BIGINT NOT NULL,
upgrade_id BIGINT NOT NULL,
- from_stack_id BIGINT NOT NULL,
- to_stack_id BIGINT NOT NULL,
- CONSTRAINT PK_sc_history PRIMARY KEY (id),
- CONSTRAINT FK_sc_history_component_id FOREIGN KEY (component_id) REFERENCES servicecomponentdesiredstate (id),
- CONSTRAINT FK_sc_history_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
- CONSTRAINT FK_sc_history_from_stack_id FOREIGN KEY (from_stack_id) REFERENCES stack (stack_id),
- CONSTRAINT FK_sc_history_to_stack_id FOREIGN KEY (to_stack_id) REFERENCES stack (stack_id)
+ service_name VARCHAR(255) NOT NULL,
+ component_name VARCHAR(255) NOT NULL,
+ from_repo_version_id BIGINT NOT NULL,
+ target_repo_version_id BIGINT NOT NULL,
+ CONSTRAINT PK_upgrade_hist PRIMARY KEY (id),
+ CONSTRAINT FK_upgrade_hist_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
+ CONSTRAINT FK_upgrade_hist_from_repo FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT FK_upgrade_hist_target_repo FOREIGN KEY (target_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT UQ_upgrade_hist UNIQUE (upgrade_id, component_name, service_name)
);
CREATE TABLE servicecomponent_version(
@@ -1112,8 +1088,6 @@ INSERT INTO ambari_sequences (sequence_name, sequence_value)
union all
select 'repo_version_id_seq', 0 FROM SYSIBM.SYSDUMMY1
union all
- select 'cluster_version_id_seq', 0 FROM SYSIBM.SYSDUMMY1
- union all
select 'host_version_id_seq', 0 FROM SYSIBM.SYSDUMMY1
union all
select 'service_config_id_seq', 1 FROM SYSIBM.SYSDUMMY1
@@ -1154,7 +1128,7 @@ INSERT INTO ambari_sequences (sequence_name, sequence_value)
union all
select 'servicecomponentdesiredstate_id_seq', 0 FROM SYSIBM.SYSDUMMY1
union all
- select 'servicecomponent_history_id_seq', 0 FROM SYSIBM.SYSDUMMY1
+ select 'upgrade_history_id_seq', 0 FROM SYSIBM.SYSDUMMY1
union all
select 'blueprint_setting_id_seq', 0 FROM SYSIBM.SYSDUMMY1
union all
@@ -1650,4 +1624,4 @@ create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,IN
create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP);
create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP);
create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
-create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
+create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql b/ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql
index d6ac15b..c73db6e 100644
--- a/ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql
+++ b/ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql
@@ -92,10 +92,12 @@ CREATE TABLE clusterconfig (
type_name VARCHAR(100) NOT NULL,
cluster_id BIGINT NOT NULL,
stack_id BIGINT NOT NULL,
+ selected SMALLINT NOT NULL DEFAULT 0,
config_data LONGTEXT NOT NULL,
config_attributes LONGTEXT,
create_timestamp BIGINT NOT NULL,
service_deleted SMALLINT NOT NULL DEFAULT 0,
+ selected_timestamp BIGINT NOT NULL DEFAULT 0,
CONSTRAINT PK_clusterconfig PRIMARY KEY (config_id),
CONSTRAINT FK_clusterconfig_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
CONSTRAINT FK_clusterconfig_stack_id FOREIGN KEY (stack_id) REFERENCES stack(stack_id),
@@ -181,37 +183,25 @@ CREATE TABLE repo_version (
CONSTRAINT UQ_repo_version_display_name UNIQUE (display_name),
CONSTRAINT UQ_repo_version_stack_id UNIQUE (stack_id, version));
-CREATE TABLE cluster_version (
- id BIGINT NOT NULL,
- repo_version_id BIGINT NOT NULL,
- cluster_id BIGINT NOT NULL,
- state VARCHAR(32) NOT NULL,
- start_time BIGINT NOT NULL,
- end_time BIGINT,
- user_name VARCHAR(32),
- CONSTRAINT PK_cluster_version PRIMARY KEY (id),
- CONSTRAINT FK_cluster_version_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
- CONSTRAINT FK_cluster_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id));
CREATE TABLE servicecomponentdesiredstate (
id BIGINT NOT NULL,
component_name VARCHAR(100) NOT NULL,
cluster_id BIGINT NOT NULL,
- desired_stack_id BIGINT NOT NULL,
- desired_version VARCHAR(255) NOT NULL DEFAULT 'UNKNOWN',
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(100) NOT NULL,
recovery_enabled SMALLINT NOT NULL DEFAULT 0,
+ repo_state VARCHAR(255) NOT NULL DEFAULT 'NOT_REQUIRED',
CONSTRAINT pk_sc_desiredstate PRIMARY KEY (id),
CONSTRAINT UQ_scdesiredstate_name UNIQUE(component_name, service_name, cluster_id),
- CONSTRAINT FK_scds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_scds_desired_repo_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT srvccmponentdesiredstatesrvcnm FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE hostcomponentdesiredstate (
id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
component_name VARCHAR(100) NOT NULL,
- desired_stack_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(100) NOT NULL,
@@ -222,7 +212,6 @@ CREATE TABLE hostcomponentdesiredstate (
CONSTRAINT PK_hostcomponentdesiredstate PRIMARY KEY (id),
CONSTRAINT UQ_hcdesiredstate_name UNIQUE (component_name, service_name, host_id, cluster_id),
CONSTRAINT FK_hcdesiredstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
- CONSTRAINT FK_hcds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
CONSTRAINT hstcmpnntdesiredstatecmpnntnme FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -231,14 +220,12 @@ CREATE TABLE hostcomponentstate (
cluster_id BIGINT NOT NULL,
component_name VARCHAR(100) NOT NULL,
version VARCHAR(32) NOT NULL DEFAULT 'UNKNOWN',
- current_stack_id BIGINT NOT NULL,
current_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(100) NOT NULL,
upgrade_state VARCHAR(32) NOT NULL DEFAULT 'NONE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
CONSTRAINT pk_hostcomponentstate PRIMARY KEY (id),
- CONSTRAINT FK_hcs_current_stack_id FOREIGN KEY (current_stack_id) REFERENCES stack(stack_id),
CONSTRAINT FK_hostcomponentstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT hstcomponentstatecomponentname FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -263,19 +250,19 @@ CREATE TABLE host_version (
CONSTRAINT PK_host_version PRIMARY KEY (id),
CONSTRAINT FK_host_version_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT FK_host_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT UQ_host_repo UNIQUE(repo_version_id, host_id));
+ CONSTRAINT UQ_host_repo UNIQUE(host_id, repo_version_id));
CREATE TABLE servicedesiredstate (
cluster_id BIGINT NOT NULL,
desired_host_role_mapping INTEGER NOT NULL,
- desired_stack_id BIGINT NOT NULL,
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
maintenance_state VARCHAR(32) NOT NULL DEFAULT 'ACTIVE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
credential_store_enabled SMALLINT NOT NULL DEFAULT 0,
CONSTRAINT PK_servicedesiredstate PRIMARY KEY (cluster_id, service_name),
- CONSTRAINT FK_sds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_repo_version_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT servicedesiredstateservicename FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE adminprincipaltype (
@@ -391,7 +378,7 @@ CREATE TABLE host_role_command (
start_time BIGINT NOT NULL,
original_start_time BIGINT NOT NULL,
end_time BIGINT,
- status VARCHAR(100),
+ status VARCHAR(255),
auto_skip_on_failure SMALLINT DEFAULT 0 NOT NULL,
std_error LONGBLOB,
std_out LONGBLOB,
@@ -443,16 +430,6 @@ CREATE TABLE key_value_store (`key` VARCHAR(255),
`value` LONGTEXT,
CONSTRAINT PK_key_value_store PRIMARY KEY (`key`));
-CREATE TABLE clusterconfigmapping (
- type_name VARCHAR(255) NOT NULL,
- create_timestamp BIGINT NOT NULL,
- cluster_id BIGINT NOT NULL,
- selected INTEGER NOT NULL DEFAULT 0,
- version_tag VARCHAR(255) NOT NULL,
- user_name VARCHAR(255) NOT NULL DEFAULT '_db',
- CONSTRAINT PK_clusterconfigmapping PRIMARY KEY (type_name, create_timestamp, cluster_id),
- CONSTRAINT clusterconfigmappingcluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id));
-
CREATE TABLE hostconfigmapping (
create_timestamp BIGINT NOT NULL,
host_id BIGINT NOT NULL,
@@ -849,11 +826,10 @@ CREATE TABLE upgrade (
upgrade_id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
request_id BIGINT NOT NULL,
- from_repo_version_id BIGINT NOT NULL,
- to_repo_version_id BIGINT NOT NULL,
direction VARCHAR(255) DEFAULT 'UPGRADE' NOT NULL,
upgrade_package VARCHAR(255) NOT NULL,
upgrade_type VARCHAR(32) NOT NULL,
+ repo_version_id BIGINT NOT NULL,
skip_failures TINYINT(1) NOT NULL DEFAULT 0,
skip_sc_failures TINYINT(1) NOT NULL DEFAULT 0,
downgrade_allowed TINYINT(1) NOT NULL DEFAULT 1,
@@ -861,8 +837,7 @@ CREATE TABLE upgrade (
CONSTRAINT PK_upgrade PRIMARY KEY (upgrade_id),
FOREIGN KEY (cluster_id) REFERENCES clusters(cluster_id),
FOREIGN KEY (request_id) REFERENCES request(request_id),
- CONSTRAINT FK_upgrade_from_repo_id FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT FK_upgrade_to_repo_id FOREIGN KEY (to_repo_version_id) REFERENCES repo_version (repo_version_id)
+ FOREIGN KEY (repo_version_id) REFERENCES repo_version(repo_version_id)
);
CREATE TABLE upgrade_group (
@@ -886,17 +861,18 @@ CREATE TABLE upgrade_item (
FOREIGN KEY (upgrade_group_id) REFERENCES upgrade_group(upgrade_group_id)
);
-CREATE TABLE servicecomponent_history(
+CREATE TABLE upgrade_history(
id BIGINT NOT NULL,
- component_id BIGINT NOT NULL,
upgrade_id BIGINT NOT NULL,
- from_stack_id BIGINT NOT NULL,
- to_stack_id BIGINT NOT NULL,
- CONSTRAINT PK_sc_history PRIMARY KEY (id),
- CONSTRAINT FK_sc_history_component_id FOREIGN KEY (component_id) REFERENCES servicecomponentdesiredstate (id),
- CONSTRAINT FK_sc_history_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
- CONSTRAINT FK_sc_history_from_stack_id FOREIGN KEY (from_stack_id) REFERENCES stack (stack_id),
- CONSTRAINT FK_sc_history_to_stack_id FOREIGN KEY (to_stack_id) REFERENCES stack (stack_id)
+ service_name VARCHAR(255) NOT NULL,
+ component_name VARCHAR(255) NOT NULL,
+ from_repo_version_id BIGINT NOT NULL,
+ target_repo_version_id BIGINT NOT NULL,
+ CONSTRAINT PK_upgrade_hist PRIMARY KEY (id),
+ CONSTRAINT FK_upgrade_hist_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
+ CONSTRAINT FK_upgrade_hist_from_repo FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT FK_upgrade_hist_target_repo FOREIGN KEY (target_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT UQ_upgrade_hist UNIQUE (upgrade_id, component_name, service_name)
);
CREATE TABLE servicecomponent_version(
@@ -1096,7 +1072,6 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) VALUES
('permission_id_seq', 7),
('privilege_id_seq', 1),
('config_id_seq', 1),
- ('cluster_version_id_seq', 0),
('host_version_id_seq', 0),
('service_config_id_seq', 1),
('alert_definition_id_seq', 0),
@@ -1124,7 +1099,7 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) VALUES
('setting_id_seq', 0),
('hostcomponentstate_id_seq', 0),
('servicecomponentdesiredstate_id_seq', 0),
- ('servicecomponent_history_id_seq', 0),
+ ('upgrade_history_id_seq', 0),
('blueprint_setting_id_seq', 0),
('ambari_operation_history_id_seq', 0),
('remote_cluster_id_seq', 0),
@@ -1602,4 +1577,4 @@ create index idx_qrtz_ft_jg on QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP);
create index idx_qrtz_ft_t_g on QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
create index idx_qrtz_ft_tg on QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP);
-commit;
+commit;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql b/ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql
index c107a65..52f680d 100644
--- a/ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql
+++ b/ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql
@@ -72,10 +72,12 @@ CREATE TABLE clusterconfig (
type_name VARCHAR2(255) NOT NULL,
cluster_id NUMBER(19) NOT NULL,
stack_id NUMBER(19) NOT NULL,
+ selected NUMBER(1) DEFAULT 0 NOT NULL,
config_data CLOB NOT NULL,
config_attributes CLOB,
create_timestamp NUMBER(19) NOT NULL,
service_deleted SMALLINT DEFAULT 0 NOT NULL,
+ selected_timestamp NUMBER(19) DEFAULT 0 NOT NULL,
CONSTRAINT PK_clusterconfig PRIMARY KEY (config_id),
CONSTRAINT FK_clusterconfig_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
CONSTRAINT FK_clusterconfig_stack_id FOREIGN KEY (stack_id) REFERENCES stack(stack_id),
@@ -162,37 +164,25 @@ CREATE TABLE repo_version (
CONSTRAINT UQ_repo_version_display_name UNIQUE (display_name),
CONSTRAINT UQ_repo_version_stack_id UNIQUE (stack_id, version));
-CREATE TABLE cluster_version (
- id NUMBER(19) NULL,
- repo_version_id NUMBER(19) NOT NULL,
- cluster_id NUMBER(19) NOT NULL,
- state VARCHAR2(32) NOT NULL,
- start_time NUMBER(19) NOT NULL,
- end_time NUMBER(19),
- user_name VARCHAR2(32),
- CONSTRAINT PK_cluster_version PRIMARY KEY (id),
- CONSTRAINT FK_cluster_version_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
- CONSTRAINT FK_cluster_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id));
CREATE TABLE servicecomponentdesiredstate (
id NUMBER(19) NOT NULL,
component_name VARCHAR2(255) NOT NULL,
cluster_id NUMBER(19) NOT NULL,
- desired_stack_id NUMBER(19) NOT NULL,
+ desired_repo_version_id NUMBER(19) NOT NULL,
desired_state VARCHAR2(255) NOT NULL,
- desired_version VARCHAR(255) DEFAULT 'UNKNOWN' NOT NULL,
service_name VARCHAR2(255) NOT NULL,
recovery_enabled SMALLINT DEFAULT 0 NOT NULL,
+ repo_state VARCHAR2(255) DEFAULT 'NOT_REQUIRED' NOT NULL,
CONSTRAINT pk_sc_desiredstate PRIMARY KEY (id),
CONSTRAINT UQ_scdesiredstate_name UNIQUE(component_name, service_name, cluster_id),
- CONSTRAINT FK_scds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_scds_desired_repo_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT srvccmponentdesiredstatesrvcnm FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE hostcomponentdesiredstate (
id NUMBER(19) NOT NULL,
cluster_id NUMBER(19) NOT NULL,
component_name VARCHAR2(255) NOT NULL,
- desired_stack_id NUMBER(19) NULL,
desired_state VARCHAR2(255) NOT NULL,
host_id NUMBER(19) NOT NULL,
service_name VARCHAR2(255) NOT NULL,
@@ -203,7 +193,6 @@ CREATE TABLE hostcomponentdesiredstate (
CONSTRAINT PK_hostcomponentdesiredstate PRIMARY KEY (id),
CONSTRAINT UQ_hcdesiredstate_name UNIQUE (component_name, service_name, host_id, cluster_id),
CONSTRAINT FK_hcdesiredstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
- CONSTRAINT FK_hcds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
CONSTRAINT hstcmpnntdesiredstatecmpnntnme FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
CREATE TABLE hostcomponentstate (
@@ -211,14 +200,12 @@ CREATE TABLE hostcomponentstate (
cluster_id NUMBER(19) NOT NULL,
component_name VARCHAR2(255) NOT NULL,
version VARCHAR2(32) DEFAULT 'UNKNOWN' NOT NULL,
- current_stack_id NUMBER(19) NOT NULL,
current_state VARCHAR2(255) NOT NULL,
host_id NUMBER(19) NOT NULL,
service_name VARCHAR2(255) NOT NULL,
upgrade_state VARCHAR2(32) DEFAULT 'NONE' NOT NULL,
security_state VARCHAR2(32) DEFAULT 'UNSECURED' NOT NULL,
CONSTRAINT pk_hostcomponentstate PRIMARY KEY (id),
- CONSTRAINT FK_hcs_current_stack_id FOREIGN KEY (current_stack_id) REFERENCES stack(stack_id),
CONSTRAINT FK_hostcomponentstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT hstcomponentstatecomponentname FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -243,19 +230,19 @@ CREATE TABLE host_version (
CONSTRAINT PK_host_version PRIMARY KEY (id),
CONSTRAINT FK_host_version_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT FK_host_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT UQ_host_repo UNIQUE(repo_version_id, host_id));
+ CONSTRAINT UQ_host_repo UNIQUE(host_id, repo_version_id));
CREATE TABLE servicedesiredstate (
cluster_id NUMBER(19) NOT NULL,
desired_host_role_mapping NUMBER(10) NOT NULL,
- desired_stack_id NUMBER(19) NOT NULL,
+ desired_repo_version_id NUMBER(19) NOT NULL,
desired_state VARCHAR2(255) NOT NULL,
service_name VARCHAR2(255) NOT NULL,
maintenance_state VARCHAR2(32) NOT NULL,
security_state VARCHAR2(32) DEFAULT 'UNSECURED' NOT NULL,
credential_store_enabled SMALLINT DEFAULT 0 NOT NULL,
CONSTRAINT PK_servicedesiredstate PRIMARY KEY (cluster_id, service_name),
- CONSTRAINT FK_sds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_repo_version_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT servicedesiredstateservicename FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE adminprincipaltype (
@@ -371,7 +358,7 @@ CREATE TABLE host_role_command (
start_time NUMBER(19) NOT NULL,
original_start_time NUMBER(19) NOT NULL,
end_time NUMBER(19),
- status VARCHAR2(255) NULL,
+ status VARCHAR(255),
auto_skip_on_failure NUMBER(1) DEFAULT 0 NOT NULL,
std_error BLOB NULL,
std_out BLOB NULL,
@@ -424,16 +411,6 @@ CREATE TABLE key_value_store (
"value" CLOB NULL,
CONSTRAINT PK_key_value_store PRIMARY KEY ("key"));
-CREATE TABLE clusterconfigmapping (
- type_name VARCHAR2(255) NOT NULL,
- create_timestamp NUMBER(19) NOT NULL,
- cluster_id NUMBER(19) NOT NULL,
- selected NUMBER(10) NOT NULL,
- version_tag VARCHAR2(255) NOT NULL,
- user_name VARCHAR(255) DEFAULT '_db',
- CONSTRAINT PK_clusterconfigmapping PRIMARY KEY (type_name, create_timestamp, cluster_id),
- CONSTRAINT clusterconfigmappingcluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id));
-
CREATE TABLE hostconfigmapping (
create_timestamp NUMBER(19) NOT NULL,
host_id NUMBER(19) NOT NULL,
@@ -828,11 +805,10 @@ CREATE TABLE upgrade (
upgrade_id NUMBER(19) NOT NULL,
cluster_id NUMBER(19) NOT NULL,
request_id NUMBER(19) NOT NULL,
- from_repo_version_id NUMBER(19) NOT NULL,
- to_repo_version_id NUMBER(19) NOT NULL,
direction VARCHAR2(255) DEFAULT 'UPGRADE' NOT NULL,
upgrade_package VARCHAR2(255) NOT NULL,
upgrade_type VARCHAR2(32) NOT NULL,
+ repo_version_id NUMBER(19) NOT NULL,
skip_failures NUMBER(1) DEFAULT 0 NOT NULL,
skip_sc_failures NUMBER(1) DEFAULT 0 NOT NULL,
downgrade_allowed NUMBER(1) DEFAULT 1 NOT NULL,
@@ -840,8 +816,7 @@ CREATE TABLE upgrade (
CONSTRAINT PK_upgrade PRIMARY KEY (upgrade_id),
FOREIGN KEY (cluster_id) REFERENCES clusters(cluster_id),
FOREIGN KEY (request_id) REFERENCES request(request_id),
- CONSTRAINT FK_upgrade_from_repo_id FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT FK_upgrade_to_repo_id FOREIGN KEY (to_repo_version_id) REFERENCES repo_version (repo_version_id)
+ FOREIGN KEY (repo_version_id) REFERENCES repo_version(repo_version_id)
);
CREATE TABLE upgrade_group (
@@ -865,17 +840,18 @@ CREATE TABLE upgrade_item (
FOREIGN KEY (upgrade_group_id) REFERENCES upgrade_group(upgrade_group_id)
);
-CREATE TABLE servicecomponent_history(
- id NUMBER(19) NOT NULL,
- component_id NUMBER(19) NOT NULL,
- upgrade_id NUMBER(19) NOT NULL,
- from_stack_id NUMBER(19) NOT NULL,
- to_stack_id NUMBER(19) NOT NULL,
- CONSTRAINT PK_sc_history PRIMARY KEY (id),
- CONSTRAINT FK_sc_history_component_id FOREIGN KEY (component_id) REFERENCES servicecomponentdesiredstate (id),
- CONSTRAINT FK_sc_history_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
- CONSTRAINT FK_sc_history_from_stack_id FOREIGN KEY (from_stack_id) REFERENCES stack (stack_id),
- CONSTRAINT FK_sc_history_to_stack_id FOREIGN KEY (to_stack_id) REFERENCES stack (stack_id)
+CREATE TABLE upgrade_history(
+ id BIGINT NOT NULL,
+ upgrade_id BIGINT NOT NULL,
+ service_name VARCHAR2(255) NOT NULL,
+ component_name VARCHAR2(255) NOT NULL,
+ from_repo_version_id BIGINT NOT NULL,
+ target_repo_version_id BIGINT NOT NULL,
+ CONSTRAINT PK_upgrade_hist PRIMARY KEY (id),
+ CONSTRAINT FK_upgrade_hist_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
+ CONSTRAINT FK_upgrade_hist_from_repo FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT FK_upgrade_hist_target_repo FOREIGN KEY (target_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT UQ_upgrade_hist UNIQUE (upgrade_id, component_name, service_name)
);
CREATE TABLE servicecomponent_version(
@@ -1075,7 +1051,6 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('principal_i
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('permission_id_seq', 7);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('privilege_id_seq', 1);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('config_id_seq', 1);
-INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('cluster_version_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('host_version_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('service_config_id_seq', 1);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('alert_definition_id_seq', 0);
@@ -1103,7 +1078,7 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('topology_ho
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('setting_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('hostcomponentstate_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('servicecomponentdesiredstate_id_seq', 0);
-INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('servicecomponent_history_id_seq', 0);
+INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('upgrade_history_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('blueprint_setting_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('ambari_operation_history_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('remote_cluster_id_seq', 0);
@@ -1587,4 +1562,4 @@ create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,IN
create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP);
create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP);
create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
-create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
+create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql b/ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql
index dfcd2f2..806a6ae 100644
--- a/ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql
+++ b/ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql
@@ -71,10 +71,12 @@ CREATE TABLE clusterconfig (
type_name VARCHAR(255) NOT NULL,
cluster_id NUMERIC(19) NOT NULL,
stack_id NUMERIC(19) NOT NULL,
+ selected SMALLINT NOT NULL DEFAULT 0,
config_data TEXT NOT NULL,
config_attributes TEXT,
create_timestamp NUMERIC(19) NOT NULL,
service_deleted SMALLINT NOT NULL DEFAULT 0,
+ selected_timestamp NUMERIC(19) NOT NULL DEFAULT 0,
CONSTRAINT PK_clusterconfig PRIMARY KEY (config_id),
CONSTRAINT FK_clusterconfig_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
CONSTRAINT FK_clusterconfig_stack_id FOREIGN KEY (stack_id) REFERENCES stack(stack_id),
@@ -160,37 +162,24 @@ CREATE TABLE repo_version (
CONSTRAINT UQ_repo_version_display_name UNIQUE (display_name),
CONSTRAINT UQ_repo_version_stack_id UNIQUE (stack_id, version));
-CREATE TABLE cluster_version (
- id NUMERIC(19) NOT NULL,
- repo_version_id NUMERIC(19) NOT NULL,
- cluster_id NUMERIC(19) NOT NULL,
- state VARCHAR(32) NOT NULL,
- start_time NUMERIC(19) NOT NULL,
- end_time NUMERIC(19),
- user_name VARCHAR(32),
- CONSTRAINT PK_cluster_version PRIMARY KEY (id),
- CONSTRAINT FK_cluster_version_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
- CONSTRAINT FK_cluster_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id));
-
CREATE TABLE servicecomponentdesiredstate (
id NUMERIC(19) NOT NULL,
component_name VARCHAR(255) NOT NULL,
cluster_id NUMERIC(19) NOT NULL,
- desired_stack_id NUMERIC(19) NOT NULL,
- desired_version VARCHAR(255) NOT NULL DEFAULT 'UNKNOWN',
+ desired_repo_version_id NUMERIC(19) NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
recovery_enabled SMALLINT NOT NULL DEFAULT 0,
+ repo_state VARCHAR(255) NOT NULL DEFAULT 'NOT_REQUIRED',
CONSTRAINT pk_sc_desiredstate PRIMARY KEY (id),
CONSTRAINT UQ_scdesiredstate_name UNIQUE(component_name, service_name, cluster_id),
- CONSTRAINT FK_scds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_scds_desired_repo_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT srvccmponentdesiredstatesrvcnm FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE hostcomponentdesiredstate (
id NUMERIC(19) NOT NULL,
cluster_id NUMERIC(19) NOT NULL,
component_name VARCHAR(255) NOT NULL,
- desired_stack_id NUMERIC(19) NOT NULL,
desired_state VARCHAR(255) NOT NULL,
host_id NUMERIC(19) NOT NULL,
service_name VARCHAR(255) NOT NULL,
@@ -201,7 +190,6 @@ CREATE TABLE hostcomponentdesiredstate (
CONSTRAINT PK_hostcomponentdesiredstate PRIMARY KEY (id),
CONSTRAINT UQ_hcdesiredstate_name UNIQUE (component_name, service_name, host_id, cluster_id),
CONSTRAINT FK_hcdesiredstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
- CONSTRAINT FK_hcds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
CONSTRAINT hstcmpnntdesiredstatecmpnntnme FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
CREATE TABLE hostcomponentstate (
@@ -209,14 +197,12 @@ CREATE TABLE hostcomponentstate (
cluster_id NUMERIC(19) NOT NULL,
component_name VARCHAR(255) NOT NULL,
version VARCHAR(32) NOT NULL DEFAULT 'UNKNOWN',
- current_stack_id NUMERIC(19) NOT NULL,
current_state VARCHAR(255) NOT NULL,
host_id NUMERIC(19) NOT NULL,
service_name VARCHAR(255) NOT NULL,
upgrade_state VARCHAR(32) NOT NULL DEFAULT 'NONE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
CONSTRAINT PK_hostcomponentstate PRIMARY KEY (id),
- CONSTRAINT FK_hcs_current_stack_id FOREIGN KEY (current_stack_id) REFERENCES stack(stack_id),
CONSTRAINT FK_hostcomponentstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT hstcomponentstatecomponentname FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -241,19 +227,19 @@ CREATE TABLE host_version (
CONSTRAINT PK_host_version PRIMARY KEY (id),
CONSTRAINT FK_host_version_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT FK_host_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT UQ_host_repo UNIQUE(repo_version_id, host_id));
+ CONSTRAINT UQ_host_repo UNIQUE(host_id, repo_version_id));
CREATE TABLE servicedesiredstate (
cluster_id NUMERIC(19) NOT NULL,
desired_host_role_mapping INTEGER NOT NULL,
- desired_stack_id NUMERIC(19) NOT NULL,
+ desired_repo_version_id NUMERIC(19) NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
maintenance_state VARCHAR(32) NOT NULL DEFAULT 'ACTIVE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
credential_store_enabled SMALLINT NOT NULL DEFAULT 0,
CONSTRAINT PK_servicedesiredstate PRIMARY KEY (cluster_id, service_name),
- CONSTRAINT FK_sds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_repo_version_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT servicedesiredstateservicename FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE adminprincipaltype (
@@ -336,6 +322,7 @@ CREATE TABLE request (
request_type VARCHAR(255),
start_time NUMERIC(19) NOT NULL,
status VARCHAR(255),
+ cluster_host_info IMAGE,
CONSTRAINT PK_request PRIMARY KEY (request_id),
CONSTRAINT FK_request_schedule_id FOREIGN KEY (request_schedule_id) REFERENCES requestschedule (schedule_id));
@@ -347,7 +334,6 @@ CREATE TABLE stage (
supports_auto_skip_failure SMALLINT DEFAULT 0 NOT NULL,
log_info VARCHAR(255) NOT NULL,
request_context VARCHAR(255),
- cluster_host_info IMAGE,
command_params IMAGE,
host_params IMAGE,
command_execution_type VARCHAR(32) NOT NULL DEFAULT 'STAGE',
@@ -421,16 +407,6 @@ CREATE TABLE key_value_store ("key" VARCHAR(255),
"value" TEXT,
CONSTRAINT PK_key_value_store PRIMARY KEY ("key"));
-CREATE TABLE clusterconfigmapping (
- type_name VARCHAR(255) NOT NULL,
- create_timestamp NUMERIC(19) NOT NULL,
- cluster_id NUMERIC(19) NOT NULL,
- selected INTEGER NOT NULL DEFAULT 0,
- version_tag VARCHAR(255) NOT NULL,
- user_name VARCHAR(255) NOT NULL DEFAULT '_db',
- CONSTRAINT PK_clusterconfigmapping PRIMARY KEY (type_name, create_timestamp, cluster_id),
- CONSTRAINT clusterconfigmappingcluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id));
-
CREATE TABLE hostconfigmapping (
create_timestamp NUMERIC(19) NOT NULL,
host_id NUMERIC(19) NOT NULL,
@@ -827,10 +803,9 @@ CREATE TABLE upgrade (
upgrade_id NUMERIC(19) NOT NULL,
cluster_id NUMERIC(19) NOT NULL,
request_id NUMERIC(19) NOT NULL,
- from_repo_version_id NUMERIC(19) NOT NULL,
- to_repo_version_id NUMERIC(19) NOT NULL,
direction VARCHAR(255) DEFAULT 'UPGRADE' NOT NULL,
upgrade_type VARCHAR(32) NOT NULL,
+ repo_version_id NUMERIC(19) NOT NULL,
upgrade_package VARCHAR(255) NOT NULL,
skip_failures BIT NOT NULL DEFAULT 0,
skip_sc_failures BIT NOT NULL DEFAULT 0,
@@ -839,8 +814,7 @@ CREATE TABLE upgrade (
CONSTRAINT PK_upgrade PRIMARY KEY (upgrade_id),
FOREIGN KEY (cluster_id) REFERENCES clusters(cluster_id),
FOREIGN KEY (request_id) REFERENCES request(request_id),
- CONSTRAINT FK_upgrade_from_repo_id FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT FK_upgrade_to_repo_id FOREIGN KEY (to_repo_version_id) REFERENCES repo_version (repo_version_id)
+ FOREIGN KEY (repo_version_id) REFERENCES repo_version(repo_version_id)
);
CREATE TABLE upgrade_group (
@@ -864,17 +838,18 @@ CREATE TABLE upgrade_item (
FOREIGN KEY (upgrade_group_id) REFERENCES upgrade_group(upgrade_group_id)
);
-CREATE TABLE servicecomponent_history(
- id NUMERIC(19) NOT NULL,
- component_id NUMERIC(19) NOT NULL,
- upgrade_id NUMERIC(19) NOT NULL,
- from_stack_id NUMERIC(19) NOT NULL,
- to_stack_id NUMERIC(19) NOT NULL,
- CONSTRAINT PK_sc_history PRIMARY KEY (id),
- CONSTRAINT FK_sc_history_component_id FOREIGN KEY (component_id) REFERENCES servicecomponentdesiredstate (id),
- CONSTRAINT FK_sc_history_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
- CONSTRAINT FK_sc_history_from_stack_id FOREIGN KEY (from_stack_id) REFERENCES stack (stack_id),
- CONSTRAINT FK_sc_history_to_stack_id FOREIGN KEY (to_stack_id) REFERENCES stack (stack_id)
+CREATE TABLE upgrade_history(
+ id BIGINT NOT NULL,
+ upgrade_id BIGINT NOT NULL,
+ service_name VARCHAR(255) NOT NULL,
+ component_name VARCHAR(255) NOT NULL,
+ from_repo_version_id BIGINT NOT NULL,
+ target_repo_version_id BIGINT NOT NULL,
+ CONSTRAINT PK_upgrade_hist PRIMARY KEY (id),
+ CONSTRAINT FK_upgrade_hist_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
+ CONSTRAINT FK_upgrade_hist_from_repo FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT FK_upgrade_hist_target_repo FOREIGN KEY (target_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT UQ_upgrade_hist UNIQUE (upgrade_id, component_name, service_name)
);
CREATE TABLE servicecomponent_version(
@@ -1074,7 +1049,6 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('principal_i
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('permission_id_seq', 7);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('privilege_id_seq', 1);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('config_id_seq', 1);
-INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('cluster_version_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('host_version_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('service_config_id_seq', 1);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('alert_definition_id_seq', 0);
@@ -1102,7 +1076,7 @@ INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('topology_ho
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('setting_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('hostcomponentstate_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('servicecomponentdesiredstate_id_seq', 0);
-INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('servicecomponent_history_id_seq', 0);
+INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('upgrade_history_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('blueprint_setting_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('ambari_operation_history_id_seq', 0);
INSERT INTO ambari_sequences(sequence_name, sequence_value) values ('remote_cluster_id_seq', 0);
@@ -1597,4 +1571,4 @@ create index idx_qrtz_ft_jg on QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP);
create index idx_qrtz_ft_t_g on QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
create index idx_qrtz_ft_tg on QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP);
-commit;
+commit;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql b/ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql
index 63c17a9..cabc32a 100644
--- a/ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql
+++ b/ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql
@@ -85,10 +85,12 @@ CREATE TABLE clusterconfig (
type_name VARCHAR(255) NOT NULL,
cluster_id BIGINT NOT NULL,
stack_id BIGINT NOT NULL,
+ selected SMALLINT NOT NULL DEFAULT 0,
config_data VARCHAR(MAX) NOT NULL,
config_attributes VARCHAR(MAX),
create_timestamp BIGINT NOT NULL,
service_deleted SMALLINT NOT NULL DEFAULT 0,
+ selected_timestamp BIGINT NOT NULL DEFAULT 0,
CONSTRAINT PK_clusterconfig PRIMARY KEY CLUSTERED (config_id),
CONSTRAINT FK_clusterconfig_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
CONSTRAINT FK_clusterconfig_stack_id FOREIGN KEY (stack_id) REFERENCES stack(stack_id),
@@ -143,16 +145,6 @@ CREATE TABLE serviceconfigmapping (
CONSTRAINT FK_scvm_config FOREIGN KEY (config_id) REFERENCES clusterconfig(config_id),
CONSTRAINT FK_scvm_scv FOREIGN KEY (service_config_id) REFERENCES serviceconfig(service_config_id));
-CREATE TABLE clusterconfigmapping (
- cluster_id BIGINT NOT NULL,
- type_name VARCHAR(255) NOT NULL,
- version_tag VARCHAR(255) NOT NULL,
- create_timestamp BIGINT NOT NULL,
- selected INT NOT NULL DEFAULT 0,
- user_name VARCHAR(255) NOT NULL DEFAULT '_db',
- CONSTRAINT PK_clusterconfigmapping PRIMARY KEY CLUSTERED (cluster_id, type_name, create_timestamp ),
- CONSTRAINT clusterconfigmappingcluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id));
-
CREATE TABLE clusterservices (
service_name VARCHAR(255) NOT NULL,
cluster_id BIGINT NOT NULL,
@@ -184,37 +176,24 @@ CREATE TABLE repo_version (
CONSTRAINT UQ_repo_version_display_name UNIQUE (display_name),
CONSTRAINT UQ_repo_version_stack_id UNIQUE (stack_id, version));
-CREATE TABLE cluster_version (
- id BIGINT NOT NULL,
- cluster_id BIGINT NOT NULL,
- repo_version_id BIGINT NOT NULL,
- STATE VARCHAR(255) NOT NULL,
- start_time BIGINT NOT NULL,
- end_time BIGINT,
- user_name VARCHAR(255),
- CONSTRAINT PK_cluster_version PRIMARY KEY CLUSTERED (id),
- CONSTRAINT FK_cluster_version_cluster_id FOREIGN KEY (cluster_id) REFERENCES clusters (cluster_id),
- CONSTRAINT FK_cluster_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id));
-
CREATE TABLE servicecomponentdesiredstate (
id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
cluster_id BIGINT NOT NULL,
- desired_stack_id BIGINT NOT NULL,
- desired_version VARCHAR(255) NOT NULL DEFAULT 'UNKNOWN',
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
recovery_enabled SMALLINT NOT NULL DEFAULT 0,
+ repo_state VARCHAR(255) NOT NULL DEFAULT 'NOT_REQUIRED',
CONSTRAINT pk_sc_desiredstate PRIMARY KEY (id),
CONSTRAINT UQ_scdesiredstate_name UNIQUE(component_name, service_name, cluster_id),
- CONSTRAINT FK_scds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_scds_desired_repo_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT srvccmponentdesiredstatesrvcnm FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE hostcomponentdesiredstate (
id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
- desired_stack_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(255) NOT NULL,
@@ -224,7 +203,6 @@ CREATE TABLE hostcomponentdesiredstate (
restart_required BIT NOT NULL DEFAULT 0,
CONSTRAINT PK_hostcomponentdesiredstate PRIMARY KEY CLUSTERED (id),
CONSTRAINT UQ_hcdesiredstate_name UNIQUE NONCLUSTERED (component_name, service_name, host_id, cluster_id),
- CONSTRAINT FK_hcds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
CONSTRAINT hstcmpnntdesiredstatecmpnntnme FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id),
CONSTRAINT hstcmponentdesiredstatehstid FOREIGN KEY (host_id) REFERENCES hosts (host_id));
@@ -234,14 +212,12 @@ CREATE TABLE hostcomponentstate (
cluster_id BIGINT NOT NULL,
component_name VARCHAR(255) NOT NULL,
version VARCHAR(32) NOT NULL DEFAULT 'UNKNOWN',
- current_stack_id BIGINT NOT NULL,
current_state VARCHAR(255) NOT NULL,
host_id BIGINT NOT NULL,
service_name VARCHAR(255) NOT NULL,
upgrade_state VARCHAR(32) NOT NULL DEFAULT 'NONE',
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
CONSTRAINT PK_hostcomponentstate PRIMARY KEY CLUSTERED (id),
- CONSTRAINT FK_hcs_current_stack_id FOREIGN KEY (current_stack_id) REFERENCES stack(stack_id),
CONSTRAINT FK_hostcomponentstate_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT hstcomponentstatecomponentname FOREIGN KEY (component_name, service_name, cluster_id) REFERENCES servicecomponentdesiredstate (component_name, service_name, cluster_id));
@@ -261,14 +237,14 @@ CREATE TABLE hoststate (
CREATE TABLE servicedesiredstate (
cluster_id BIGINT NOT NULL,
desired_host_role_mapping INTEGER NOT NULL,
- desired_stack_id BIGINT NOT NULL,
+ desired_repo_version_id BIGINT NOT NULL,
desired_state VARCHAR(255) NOT NULL,
service_name VARCHAR(255) NOT NULL,
maintenance_state VARCHAR(32) NOT NULL,
security_state VARCHAR(32) NOT NULL DEFAULT 'UNSECURED',
credential_store_enabled SMALLINT NOT NULL DEFAULT 0,
CONSTRAINT PK_servicedesiredstate PRIMARY KEY CLUSTERED (cluster_id,service_name),
- CONSTRAINT FK_sds_desired_stack_id FOREIGN KEY (desired_stack_id) REFERENCES stack(stack_id),
+ CONSTRAINT FK_repo_version_id FOREIGN KEY (desired_repo_version_id) REFERENCES repo_version (repo_version_id),
CONSTRAINT servicedesiredstateservicename FOREIGN KEY (service_name, cluster_id) REFERENCES clusterservices (service_name, cluster_id));
CREATE TABLE adminprincipaltype (
@@ -703,7 +679,7 @@ CREATE TABLE host_version (
CONSTRAINT PK_host_version PRIMARY KEY CLUSTERED (id),
CONSTRAINT FK_host_version_host_id FOREIGN KEY (host_id) REFERENCES hosts (host_id),
CONSTRAINT FK_host_version_repovers_id FOREIGN KEY (repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT UQ_host_repo UNIQUE(repo_version_id, host_id));
+ CONSTRAINT UQ_host_repo UNIQUE(host_id, repo_version_id));
CREATE TABLE artifact (
artifact_name VARCHAR(255) NOT NULL,
@@ -849,11 +825,10 @@ CREATE TABLE upgrade (
upgrade_id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
request_id BIGINT NOT NULL,
- from_repo_version_id BIGINT NOT NULL,
- to_repo_version_id BIGINT NOT NULL,
direction VARCHAR(255) DEFAULT 'UPGRADE' NOT NULL,
upgrade_package VARCHAR(255) NOT NULL,
upgrade_type VARCHAR(32) NOT NULL,
+ repo_version_id BIGINT NOT NULL,
skip_failures BIT NOT NULL DEFAULT 0,
skip_sc_failures BIT NOT NULL DEFAULT 0,
downgrade_allowed BIT NOT NULL DEFAULT 1,
@@ -861,8 +836,7 @@ CREATE TABLE upgrade (
CONSTRAINT PK_upgrade PRIMARY KEY CLUSTERED (upgrade_id),
FOREIGN KEY (cluster_id) REFERENCES clusters(cluster_id),
FOREIGN KEY (request_id) REFERENCES request(request_id),
- CONSTRAINT FK_upgrade_from_repo_id FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
- CONSTRAINT FK_upgrade_to_repo_id FOREIGN KEY (to_repo_version_id) REFERENCES repo_version (repo_version_id)
+ FOREIGN KEY (repo_version_id) REFERENCES repo_version(repo_version_id)
);
CREATE TABLE upgrade_group (
@@ -886,17 +860,18 @@ CREATE TABLE upgrade_item (
FOREIGN KEY (upgrade_group_id) REFERENCES upgrade_group(upgrade_group_id)
);
-CREATE TABLE servicecomponent_history(
+CREATE TABLE upgrade_history(
id BIGINT NOT NULL,
- component_id BIGINT NOT NULL,
upgrade_id BIGINT NOT NULL,
- from_stack_id BIGINT NOT NULL,
- to_stack_id BIGINT NOT NULL,
- CONSTRAINT PK_sc_history PRIMARY KEY (id),
- CONSTRAINT FK_sc_history_component_id FOREIGN KEY (component_id) REFERENCES servicecomponentdesiredstate (id),
- CONSTRAINT FK_sc_history_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
- CONSTRAINT FK_sc_history_from_stack_id FOREIGN KEY (from_stack_id) REFERENCES stack (stack_id),
- CONSTRAINT FK_sc_history_to_stack_id FOREIGN KEY (to_stack_id) REFERENCES stack (stack_id)
+ service_name VARCHAR(255) NOT NULL,
+ component_name VARCHAR(255) NOT NULL,
+ from_repo_version_id BIGINT NOT NULL,
+ target_repo_version_id BIGINT NOT NULL,
+ CONSTRAINT PK_upgrade_hist PRIMARY KEY (id),
+ CONSTRAINT FK_upgrade_hist_upgrade_id FOREIGN KEY (upgrade_id) REFERENCES upgrade (upgrade_id),
+ CONSTRAINT FK_upgrade_hist_from_repo FOREIGN KEY (from_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT FK_upgrade_hist_target_repo FOREIGN KEY (target_repo_version_id) REFERENCES repo_version (repo_version_id),
+ CONSTRAINT UQ_upgrade_hist UNIQUE (upgrade_id, component_name, service_name)
);
CREATE TABLE servicecomponent_version(
@@ -1108,7 +1083,6 @@ BEGIN TRANSACTION
('alert_current_id_seq', 0),
('config_id_seq', 11),
('repo_version_id_seq', 0),
- ('cluster_version_id_seq', 0),
('host_version_id_seq', 0),
('service_config_id_seq', 1),
('upgrade_id_seq', 0),
@@ -1129,7 +1103,7 @@ BEGIN TRANSACTION
('setting_id_seq', 0),
('hostcomponentstate_id_seq', 0),
('servicecomponentdesiredstate_id_seq', 0),
- ('servicecomponent_history_id_seq', 0),
+ ('upgrade_history_id_seq', 0),
('blueprint_setting_id_seq', 0),
('ambari_operation_history_id_seq', 0),
('remote_cluster_id_seq', 0),
@@ -1611,4 +1585,4 @@ create index idx_qrtz_ft_inst_job_req_rcvry on qrtz_fired_triggers(SCHED_NAME,IN
create index idx_qrtz_ft_j_g on qrtz_fired_triggers(SCHED_NAME,JOB_NAME,JOB_GROUP);
create index idx_qrtz_ft_jg on qrtz_fired_triggers(SCHED_NAME,JOB_GROUP);
create index idx_qrtz_ft_t_g on qrtz_fired_triggers(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP);
-create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
+create index idx_qrtz_ft_tg on qrtz_fired_triggers(SCHED_NAME,TRIGGER_GROUP);
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
index 217f95e..2c94da9 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionSchedulerThreading.java
@@ -34,12 +34,14 @@ import org.apache.ambari.server.events.publishers.JPAEventPublisher;
import org.apache.ambari.server.orm.GuiceJpaInitializer;
import org.apache.ambari.server.orm.InMemoryDefaultTestModule;
import org.apache.ambari.server.orm.OrmTestHelper;
+import org.apache.ambari.server.orm.entities.RepositoryVersionEntity;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
import org.apache.ambari.server.state.Config;
import org.apache.ambari.server.state.ConfigFactory;
import org.apache.ambari.server.state.ConfigHelper;
import org.apache.ambari.server.state.DesiredConfig;
+import org.apache.ambari.server.state.Service;
import org.apache.ambari.server.state.StackId;
import org.junit.After;
import org.junit.Before;
@@ -98,37 +100,44 @@ public class TestActionSchedulerThreading {
StackId stackId = cluster.getCurrentStackVersion();
StackId newStackId = new StackId("HDP-2.2.0");
+ RepositoryVersionEntity repoVersion220 = ormTestHelper.getOrCreateRepositoryVersion(newStackId, "2.2.0-1234");
// make sure the stacks are different
Assert.assertFalse(stackId.equals(newStackId));
- Map<String, String> properties = new HashMap<String, String>();
- Map<String, Map<String, String>> propertiesAttributes = new HashMap<String, Map<String, String>>();
+ // add a service
+ String serviceName = "ZOOKEEPER";
+ RepositoryVersionEntity repositoryVersion = ormTestHelper.getOrCreateRepositoryVersion(cluster);
+ Service service = cluster.addService(serviceName, repositoryVersion);
+ String configType = "zoo.cfg";
+
+ Map<String, String> properties = new HashMap<>();
+ Map<String, Map<String, String>> propertiesAttributes = new HashMap<>();
ConfigFactory configFactory = injector.getInstance(ConfigFactory.class);
- // foo-type for v1 on current stack
+ // zoo-cfg for v1 on current stack
properties.put("foo-property-1", "foo-value-1");
- Config c1 = configFactory.createNew(cluster, "foo-type", "version-1", properties, propertiesAttributes);
+ Config c1 = configFactory.createNew(cluster, configType, "version-1", properties, propertiesAttributes);
// make v1 "current"
cluster.addDesiredConfig("admin", Sets.newHashSet(c1), "note-1");
// bump the stack
- cluster.setDesiredStackVersion(newStackId);
+ service.setDesiredRepositoryVersion(repoVersion220);
// save v2
- // foo-type for v2 on new stack
+ // zoo-cfg for v2 on new stack
properties.put("foo-property-2", "foo-value-2");
- Config c2 = configFactory.createNew(cluster, "foo-type", "version-2", properties, propertiesAttributes);
+ Config c2 = configFactory.createNew(cluster, configType, "version-2", properties, propertiesAttributes);
// make v2 "current"
cluster.addDesiredConfig("admin", Sets.newHashSet(c2), "note-2");
// check desired config
Map<String, DesiredConfig> desiredConfigs = cluster.getDesiredConfigs();
- DesiredConfig desiredConfig = desiredConfigs.get("foo-type");
- desiredConfig = desiredConfigs.get("foo-type");
+ DesiredConfig desiredConfig = desiredConfigs.get(configType);
+ desiredConfig = desiredConfigs.get(configType);
assertNotNull(desiredConfig);
assertEquals(Long.valueOf(2), desiredConfig.getVersion());
assertEquals("version-2", desiredConfig.getTag());
@@ -136,7 +145,7 @@ public class TestActionSchedulerThreading {
final String hostName = cluster.getHosts().iterator().next().getHostName();
// move the stack back to the old stack
- cluster.setDesiredStackVersion(stackId);
+ service.setDesiredRepositoryVersion(repositoryVersion);
// create the semaphores, taking 1 from each to make them blocking from the
// start
@@ -158,7 +167,7 @@ public class TestActionSchedulerThreading {
threadInitialCachingSemaphore.acquire();
// apply the configs for the old stack
- cluster.applyLatestConfigurations(stackId);
+ cluster.applyLatestConfigurations(stackId, serviceName);
// wake the thread up and have it verify that it can see the updated configs
applyLatestConfigsSemaphore.release();
http://git-wip-us.apache.org/repos/asf/ambari/blob/56362fd6/ambari-server/src/test/java/org/apache/ambari/server/agent/DummyHeartbeatConstants.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/agent/DummyHeartbeatConstants.java b/ambari-server/src/test/java/org/apache/ambari/server/agent/DummyHeartbeatConstants.java
index a7c53d5..150ac35 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/agent/DummyHeartbeatConstants.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/agent/DummyHeartbeatConstants.java
@@ -36,6 +36,7 @@ public interface DummyHeartbeatConstants {
String DummyHostStatus = "I am ok";
String DummyStackId = "HDP-0.1";
+ String DummyRepositoryVersion = "0.1-1234";
String HDFS = "HDFS";
String HBASE = "HBASE";
@@ -46,4 +47,4 @@ public interface DummyHeartbeatConstants {
String HBASE_MASTER = Role.HBASE_MASTER.name();
String HDFS_CLIENT = Role.HDFS_CLIENT.name();
-}
+}
\ No newline at end of file