git commit: AMBARI-6702. Ambari detects RPM DB corruption (aonishuk)
Repository: ambari Updated Branches: refs/heads/trunk 53e827c2c - 6079ad7e3 AMBARI-6702. Ambari detects RPM DB corruption (aonishuk) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/6079ad7e Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/6079ad7e Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/6079ad7e Branch: refs/heads/trunk Commit: 6079ad7e3c22b53b5c71c61ae2bc822d2486adf9 Parents: 53e827c Author: Andrew Onishuk aonis...@hortonworks.com Authored: Tue Aug 12 12:46:16 2014 +0300 Committer: Andrew Onishuk aonis...@hortonworks.com Committed: Tue Aug 12 12:46:16 2014 +0300 -- ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/6079ad7e/ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py -- diff --git a/ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py b/ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py index 94d8744..bbd2877 100644 --- a/ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py +++ b/ambari-agent/src/main/python/ambari_agent/PackagesAnalyzer.py @@ -31,7 +31,7 @@ logger = logging.getLogger() class PackagesAnalyzer: # default timeout for async invoked processes - TIMEOUT_SECONDS = 10 + TIMEOUT_SECONDS = 20 event = threading.Event() def launch_subprocess(self, command):
git commit: AMBARI-6825. Balancer threshold has invalid range. (Max Shepel via akovalenko)
Repository: ambari Updated Branches: refs/heads/trunk 6079ad7e3 - 78605d25d AMBARI-6825. Balancer threshold has invalid range. (Max Shepel via akovalenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/78605d25 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/78605d25 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/78605d25 Branch: refs/heads/trunk Commit: 78605d25dbf45777e7b2fab8d510d97a998b3162 Parents: 6079ad7 Author: Aleksandr Kovalenko akovale...@hortonworks.com Authored: Tue Aug 12 14:37:38 2014 +0300 Committer: Aleksandr Kovalenko akovale...@hortonworks.com Committed: Tue Aug 12 14:37:38 2014 +0300 -- ambari-web/app/controllers/main/service/item.js | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/78605d25/ambari-web/app/controllers/main/service/item.js -- diff --git a/ambari-web/app/controllers/main/service/item.js b/ambari-web/app/controllers/main/service/item.js index 9511b96..f05940e 100644 --- a/ambari-web/app/controllers/main/service/item.js +++ b/ambari-web/app/controllers/main/service/item.js @@ -280,10 +280,7 @@ App.MainServiceItemController = Em.Controller.extend({ errorMessage: Em.I18n.t('services.service.actions.run.rebalanceHdfsNodes.promptError'), isInvalid: function () { var intValue = Number(this.get('inputValue')); -if (this.get('inputValue')!=='DEBUG' (isNaN(intValue) || intValue 0 || intValue 100)) { - return true; -} -return false; +return isNaN(intValue) || intValue 1 || intValue 100; }.property('inputValue'), disablePrimary : function() { return this.get('isInvalid');
git commit: AMBARI-6825. Balancer threshold has invalid range. Additional patch. (Max Shepel via akovalenko)
Repository: ambari Updated Branches: refs/heads/trunk 78605d25d - d7a4c60d5 AMBARI-6825. Balancer threshold has invalid range. Additional patch. (Max Shepel via akovalenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/d7a4c60d Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/d7a4c60d Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/d7a4c60d Branch: refs/heads/trunk Commit: d7a4c60d59f52630cfdbf5bd2ad7e0981a9a96d8 Parents: 78605d2 Author: Aleksandr Kovalenko akovale...@hortonworks.com Authored: Tue Aug 12 15:06:26 2014 +0300 Committer: Aleksandr Kovalenko akovale...@hortonworks.com Committed: Tue Aug 12 15:06:26 2014 +0300 -- ambari-web/app/messages.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/d7a4c60d/ambari-web/app/messages.js -- diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js index 8f642a0..a4052ca 100644 --- a/ambari-web/app/messages.js +++ b/ambari-web/app/messages.js @@ -1185,7 +1185,7 @@ Em.I18n.translations = { 'services.service.actions.run.rebalanceHdfsNodes.title':'HDFS Rebalance', 'services.service.actions.run.rebalanceHdfsNodes.prompt':'Balancer threshold (percentage of disk capacity):', 'services.service.actions.run.rebalanceHdfsNodes.promptTooltip':'Percentage of disk capacity. This overwrites the default threshold', - 'services.service.actions.run.rebalanceHdfsNodes.promptError':'Value should be number between 0 and 100', + 'services.service.actions.run.rebalanceHdfsNodes.promptError':'Value should be number between 1 and 100', 'services.service.actions.run.rebalanceHdfsNodes.context':'Rebalance HDFS', 'services.service.actions.run.rebalanceHdfsNodes.error':'Error during remote command: ', 'services.service.actions.run.yarnRefreshQueues.menu':'Refresh YARN Capacity Scheduler',
git commit: AMBARI-6826 FE: Ambari installer should populate default configs via /recommendations. (ababiichuk)
Repository: ambari Updated Branches: refs/heads/trunk d7a4c60d5 - 382e7f3df AMBARI-6826 FE: Ambari installer should populate default configs via /recommendations. (ababiichuk) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/382e7f3d Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/382e7f3d Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/382e7f3d Branch: refs/heads/trunk Commit: 382e7f3dfd547e4945caecf03164d939fb19b32c Parents: d7a4c60 Author: aBabiichuk ababiic...@cybervisiontech.com Authored: Tue Aug 12 15:04:30 2014 +0300 Committer: aBabiichuk ababiic...@cybervisiontech.com Committed: Tue Aug 12 15:07:37 2014 +0300 -- .../stacks/HDP-2.1/recommendations_configs.json | 175 +++ .../controllers/main/service/info/configs.js| 18 +- .../app/controllers/wizard/step7_controller.js | 80 +++-- ambari-web/app/data/service_configs.js | 2 + ambari-web/app/models/stack_service.js | 6 +- ambari-web/app/utils/ajax/ajax.js | 19 +- ambari-web/app/utils/config.js | 46 +++-- 7 files changed, 316 insertions(+), 30 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/382e7f3d/ambari-web/app/assets/data/stacks/HDP-2.1/recommendations_configs.json -- diff --git a/ambari-web/app/assets/data/stacks/HDP-2.1/recommendations_configs.json b/ambari-web/app/assets/data/stacks/HDP-2.1/recommendations_configs.json new file mode 100644 index 000..4efe599 --- /dev/null +++ b/ambari-web/app/assets/data/stacks/HDP-2.1/recommendations_configs.json @@ -0,0 +1,175 @@ +{ + hosts: [ab2test-5.c.pramod-thangali.internal, ab2test-6.c.pramod-thangali.internal, ab2test-7.c.pramod-thangali.internal], + services: [HDFS, MAPREDUCE2, YARN, TEZ, NAGIOS, GANGLIA, HIVE, HCATALOG, WEBHCAT, SQOOP, OOZIE, ZOOKEEPER, FALCON, STORM, FLUME, PIG], + recommendations: { + blueprint: { +host_groups: [ + { +name: host-group-3, +components: [ + { +name: NAMENODE + }, + { +name: STORM_UI_SERVER + }, + { +name: GANGLIA_SERVER + }, + { +name: ZOOKEEPER_SERVER + }, + { +name: STORM_REST_API + }, + { +name: NIMBUS + }, + { +name: DRPC_SERVER + }, + { +name: MYSQL_SERVER + }, + { +name: NAGIOS_SERVER + } +] + }, + { +name: host-group-1, +components: [ + { +name: YARN_CLIENT + }, + { +name: NODEMANAGER + }, + { +name: HDFS_CLIENT + }, + { +name: HIVE_CLIENT + }, + { +name: SQOOP + }, + { +name: GANGLIA_MONITOR + }, + { +name: DATANODE + }, + { +name: FLUME_HANDLER + }, + { +name: MAPREDUCE2_CLIENT + }, + { +name: SUPERVISOR + }, + { +name: OOZIE_CLIENT + }, + { +name: ZOOKEEPER_CLIENT + }, + { +name: PIG + }, + { +name: ZOOKEEPER_SERVER + }, + { +name: JOURNALNODE + }, + { +name: ZKFC + }, + { +name: TEZ_CLIENT + }, + { +name: FALCON_CLIENT + }, + { +name: HCAT + } +] + }, + { +name: host-group-2, +components: [ + { +name: FALCON_SERVER + }, + { +name: OOZIE_SERVER + }, + { +name: HIVE_SERVER + }, + { +name: APP_TIMELINE_SERVER + }, + { +name: HISTORYSERVER + }, + { +name: HIVE_METASTORE + }, + { +name: ZOOKEEPER_SERVER + }, + { +name: RESOURCEMANAGER + }, + { +name: WEBHCAT_SERVER + }, + { +name: SECONDARY_NAMENODE + } +] + } +], +configurations: { + core-site: {}, + global: { +properties: {} + }, + hbase-site: {}, + hdfs-site: {}, + yarn-site: {} +} + }, + blueprint_cluster_binding: { +host_groups: [ + { +name: host-group-3, +hosts: [ + { +
git commit: AMBARI-6828. Postfixes for server-side implementation of Cancel requests (dlysnichenko)
Repository: ambari Updated Branches: refs/heads/trunk 382e7f3df - 9bbb43e57 AMBARI-6828. Postfixes for server-side implementation of Cancel requests (dlysnichenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/9bbb43e5 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/9bbb43e5 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/9bbb43e5 Branch: refs/heads/trunk Commit: 9bbb43e57bb6071fabcb23c12ffb222fb33cccdb Parents: 382e7f3 Author: Lisnichenko Dmitro dlysniche...@hortonworks.com Authored: Fri Aug 8 15:13:24 2014 +0300 Committer: Lisnichenko Dmitro dlysniche...@hortonworks.com Committed: Tue Aug 12 19:13:38 2014 +0300 -- .../actionmanager/ActionDBAccessorImpl.java | 5 + .../server/actionmanager/ActionScheduler.java | 2 +- .../actionmanager/TestActionDBAccessorImpl.java | 33 +- .../actionmanager/TestActionScheduler.java | 193 +-- .../server/agent/TestHeartbeatHandler.java | 323 +++ 5 files changed, 464 insertions(+), 92 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/9bbb43e5/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionDBAccessorImpl.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionDBAccessorImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionDBAccessorImpl.java index dae9048..5e879cc 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionDBAccessorImpl.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionDBAccessorImpl.java @@ -346,6 +346,7 @@ public class ActionDBAccessorImpl implements ActionDBAccessor { long now = System.currentTimeMillis(); ListLong requestsToCheck = new ArrayListLong(); +ListLong abortedCommandUpdates = new ArrayListLong(); ListHostRoleCommandEntity commandEntities = hostRoleCommandDAO.findByPKs(taskReports.keySet()); for (HostRoleCommandEntity commandEntity : commandEntities) { @@ -354,6 +355,8 @@ public class ActionDBAccessorImpl implements ActionDBAccessor { // We don't want to overwrite statuses for ABORTED tasks with // statuses that have been received from the agent after aborting task commandEntity.setStatus(HostRoleStatus.valueOf(report.getStatus())); + } else { +abortedCommandUpdates.add(commandEntity.getTaskId()); } commandEntity.setStdOut(report.getStdOut().getBytes()); commandEntity.setStdError(report.getStdErr().getBytes()); @@ -375,6 +378,8 @@ public class ActionDBAccessorImpl implements ActionDBAccessor { } hostRoleCommandDAO.mergeAll(commandEntities); +// Invalidate cache because of updates to ABORTED commands +hostRoleCommandCache.invalidateAll(abortedCommandUpdates); for (Long requestId : requestsToCheck) { endRequestIfCompleted(requestId); http://git-wip-us.apache.org/repos/asf/ambari/blob/9bbb43e5/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java index cab891f..b9a67b7 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java @@ -794,7 +794,7 @@ class ActionScheduler implements Runnable { * @param hostRoleCommands a list of hostRoleCommands * @param reason why the request is being cancelled */ - private void cancelHostRoleCommands(CollectionHostRoleCommand hostRoleCommands, String reason) { + void cancelHostRoleCommands(CollectionHostRoleCommand hostRoleCommands, String reason) { for (HostRoleCommand hostRoleCommand : hostRoleCommands) { if (hostRoleCommand.getStatus() == HostRoleStatus.QUEUED) { // Dequeue all tasks that have been already scheduled for sending to agent http://git-wip-us.apache.org/repos/asf/ambari/blob/9bbb43e5/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java -- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java b/ambari-server/src/test/java/org/apache/ambari/server/actionmanager/TestActionDBAccessorImpl.java index a94f421..2850897 100644 ---
git commit: AMBARI-6792. FE work for download client configurations. additional (alexantonenko)
Repository: ambari Updated Branches: refs/heads/trunk 9bbb43e57 - 23c73e67a AMBARI-6792. FE work for download client configurations. additional (alexantonenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/23c73e67 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/23c73e67 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/23c73e67 Branch: refs/heads/trunk Commit: 23c73e67a986cb97658ae56e502368529f6e1712 Parents: 9bbb43e Author: Alex Antonenko hiv...@gmail.com Authored: Tue Aug 12 19:32:33 2014 +0300 Committer: Alex Antonenko hiv...@gmail.com Committed: Tue Aug 12 19:36:50 2014 +0300 -- .../internal/ClientConfigResourceProvider.java | 2 +- ambari-web/app/messages.js | 4 ++- ambari-web/app/utils/components.js | 27 +++- 3 files changed, 24 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/23c73e67/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java index a948012..a4817a8 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java @@ -143,7 +143,7 @@ public class ClientConfigResourceProvider extends AbstractControllerResourceProv ListClientConfigFileDefinition clientConfigFiles = componentInfo.getClientConfigFiles(); if (clientConfigFiles == null) { -throw new SystemException(No cofiguration files defined for the component); +throw new SystemException(No configuration files defined for the component + componentInfo.getName()); } String stackRoot = managementController.getAmbariMetaInfo().getStackRoot().getAbsolutePath(); http://git-wip-us.apache.org/repos/asf/ambari/blob/23c73e67/ambari-web/app/messages.js -- diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js index a4052ca..eb2d0d2 100644 --- a/ambari-web/app/messages.js +++ b/ambari-web/app/messages.js @@ -1179,7 +1179,9 @@ Em.I18n.translations = { 'services.service.summary.clientCount': '{0} Client Hosts', 'services.service.summary.historyServer': 'History Server Web UI', 'services.service.actions.downloadClientConfigs':'Download Client Configs', - 'services.service.actions.downloadClientConfigs.fail.popup.body':'Generation of {0} configurations file has failed. Do you want to try again?', + 'services.service.actions.downloadClientConfigs.fail.noConfigFile':'No configuration files defined for the component', + 'services.service.actions.downloadClientConfigs.fail.popup.header':'{0} Configs', + 'services.service.actions.downloadClientConfigs.fail.popup.body':'Generation of {0} configurations file has failed with {1} error: br /prespan class=text-error{2}/span/preDo you want to try again?', 'services.service.actions.run.rebalancer':'Run Rebalancer', 'services.service.actions.run.rebalanceHdfsNodes':'Rebalance HDFS', 'services.service.actions.run.rebalanceHdfsNodes.title':'HDFS Rebalance', http://git-wip-us.apache.org/repos/asf/ambari/blob/23c73e67/ambari-web/app/utils/components.js -- diff --git a/ambari-web/app/utils/components.js b/ambari-web/app/utils/components.js index 11c2eec..3fb8d87 100644 --- a/ambari-web/app/utils/components.js +++ b/ambari-web/app/utils/components.js @@ -96,13 +96,26 @@ module.exports = { (isForHost ? 'hosts/' + data.hostName + '/host_components/' : 'services/' + data.serviceName + '/components/') + data.componentName + '?format=client_config_tar'; var self = this; -$.fileDownload(url).fail(function () { - var popup = App.showConfirmationPopup(function () { -popup.hide(); -self.downloadClientConfigs({ - context: Em.Object.create(data) -}); - }, Em.I18n.t('services.service.actions.downloadClientConfigs.fail.popup.body').format(data.displayName)) +$.fileDownload(url).fail(function (error) { + var errorObj = JSON.parse($(error).text()); + var isNoConfigs = errorObj.message.contains(Em.I18n.t('services.service.actions.downloadClientConfigs.fail.noConfigFile')); + var errorMessage = isNoConfigs ? Em.I18n.t('services.service.actions.downloadClientConfigs.fail.noConfigFile')
[1/2] git commit: AMBARI-6829. Errors in Oracle DDL related to admin table structure.
Repository: ambari Updated Branches: refs/heads/trunk 23c73e67a - 0715d9bf3 AMBARI-6829. Errors in Oracle DDL related to admin table structure. Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/bc541bd4 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/bc541bd4 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/bc541bd4 Branch: refs/heads/trunk Commit: bc541bd41b04ce7fa04bfe8d027a54992583b864 Parents: 23c73e6 Author: Siddharth Wagle swa...@hortonworks.com Authored: Tue Aug 12 10:28:08 2014 -0700 Committer: Siddharth Wagle swa...@hortonworks.com Committed: Tue Aug 12 10:28:08 2014 -0700 -- .../server/upgrade/UpgradeCatalog170.java | 48 .../main/resources/Ambari-DDL-MySQL-CREATE.sql | 12 +++-- .../main/resources/Ambari-DDL-Oracle-CREATE.sql | 40 +--- .../resources/Ambari-DDL-Postgres-CREATE.sql| 14 +++--- .../Ambari-DDL-Postgres-EMBEDDED-CREATE.sql | 20 5 files changed, 71 insertions(+), 63 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/bc541bd4/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java index 758efe9..ab9d18b 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java @@ -28,7 +28,6 @@ import java.util.Map.Entry; import java.util.Set; import org.apache.ambari.server.AmbariException; -import org.apache.ambari.server.actionmanager.HostRoleCommand; import org.apache.ambari.server.configuration.Configuration; import org.apache.ambari.server.controller.AmbariManagementController; import org.apache.ambari.server.orm.DBAccessor.DBColumnInfo; @@ -110,10 +109,8 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog { dbAccessor.createTable(adminprincipaltype, columns, principal_type_id); -dbAccessor.executeQuery(insert into adminprincipaltype (principal_type_id, principal_type_name)\n + - select 1, 'USER'\n + - union all\n + - select 2, 'GROUP', true); +dbAccessor.insertRow(adminprincipaltype, new String[]{principal_type_id, principal_type_name}, new String[]{1, 'USER'}, true); +dbAccessor.insertRow(adminprincipaltype, new String[]{principal_type_id, principal_type_name}, new String[]{2, 'GROUP'}, true); columns = new ArrayListDBColumnInfo(); columns.add(new DBColumnInfo(principal_id, Long.class, null, null, false)); @@ -122,8 +119,7 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog { dbAccessor.createTable(adminprincipal, columns, principal_id); -dbAccessor.executeQuery(insert into adminprincipal (principal_id, principal_type_id)\n + - select 1, 1, true); +dbAccessor.insertRow(adminprincipal, new String[]{principal_id, principal_type_id}, new String[]{1, 1}, true); columns = new ArrayListDBColumnInfo(); columns.add(new DBColumnInfo(resource_type_id, Integer.class, 1, null, @@ -133,12 +129,9 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog { dbAccessor.createTable(adminresourcetype, columns, resource_type_id); -dbAccessor.executeQuery(insert into adminresourcetype (resource_type_id, resource_type_name)\n + - select 1, 'AMBARI'\n + - union all\n + - select 2, 'CLUSTER'\n + - union all\n + - select 3, 'VIEW', true); +dbAccessor.insertRow(adminresourcetype, new String[]{resource_type_id, resource_type_name}, new String[]{1, 'AMBARI'}, true); +dbAccessor.insertRow(adminresourcetype, new String[]{resource_type_id, resource_type_name}, new String[]{2, 'CLUSTER'}, true); +dbAccessor.insertRow(adminresourcetype, new String[]{resource_type_id, resource_type_name}, new String[]{3, 'VIEW'}, true); columns = new ArrayListDBColumnInfo(); columns.add(new DBColumnInfo(resource_id, Long.class, null, null, false)); @@ -147,8 +140,7 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog { dbAccessor.createTable(adminresource, columns, resource_id); -dbAccessor.executeQuery(insert into adminresource (resource_id, resource_type_id)\n + - select 1, 1, true); +dbAccessor.insertRow(adminresource, new String[]{resource_id, resource_type_id}, new String[]{1, 1}, true); columns = new ArrayListDBColumnInfo(); columns.add(new DBColumnInfo(permission_id, Long.class, null, null, false)); @@ -159,14 +151,10 @@ public class
git commit: AMBARI-6834. Provide undefined prarameters for view instance.
Repository: ambari Updated Branches: refs/heads/trunk 389b2505d - 62e2f9f8e AMBARI-6834. Provide undefined prarameters for view instance. Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/62e2f9f8 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/62e2f9f8 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/62e2f9f8 Branch: refs/heads/trunk Commit: 62e2f9f8efd2d5d934e9c87f0d36568124660248 Parents: 389b250 Author: Mahadev Konar maha...@apache.org Authored: Tue Aug 12 12:09:09 2014 -0700 Committer: Mahadev Konar maha...@apache.org Committed: Tue Aug 12 12:09:13 2014 -0700 -- .../internal/ViewInstanceResourceProvider.java | 8 +- .../ViewInstanceResourceProviderTest.java | 82 2 files changed, 89 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/62e2f9f8/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProvider.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProvider.java index 2ebd9f4..c1a3d79 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProvider.java @@ -33,6 +33,7 @@ import org.apache.ambari.server.orm.entities.ViewEntity; import org.apache.ambari.server.orm.entities.ViewInstanceDataEntity; import org.apache.ambari.server.orm.entities.ViewInstanceEntity; import org.apache.ambari.server.orm.entities.ViewInstancePropertyEntity; +import org.apache.ambari.server.orm.entities.ViewParameterEntity; import org.apache.ambari.server.view.ViewRegistry; import java.util.Collection; @@ -199,7 +200,7 @@ public class ViewInstanceResourceProvider extends AbstractResourceProvider { // - helper methods // Convert an instance entity to a resource - private Resource toResource(ViewInstanceEntity viewInstanceEntity, SetString requestedIds) { + protected Resource toResource(ViewInstanceEntity viewInstanceEntity, SetString requestedIds) { Resource resource = new ResourceImpl(Resource.Type.ViewInstance); ViewEntity viewEntity = viewInstanceEntity.getViewEntity(); @@ -218,6 +219,11 @@ public class ViewInstanceResourceProvider extends AbstractResourceProvider { for (ViewInstancePropertyEntity viewInstancePropertyEntity : viewInstanceEntity.getProperties()) { properties.put(viewInstancePropertyEntity.getName(), viewInstancePropertyEntity.getValue()); } +for (ViewParameterEntity viewParameterEntity : viewEntity.getParameters()) { + if (!properties.containsKey(viewParameterEntity.getName())) { +properties.put(viewParameterEntity.getName(), null); + } +} setResourceProperty(resource, PROPERTIES_PROPERTY_ID, properties, requestedIds); MapString, String applicationData = new HashMapString, String(); http://git-wip-us.apache.org/repos/asf/ambari/blob/62e2f9f8/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProviderTest.java -- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProviderTest.java new file mode 100644 index 000..52f0231 --- /dev/null +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ViewInstanceResourceProviderTest.java @@ -0,0 +1,82 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * License); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ambari.server.controller.internal; + +import
git commit: AMBARI-6836. View: Files property checking should log more explicit failure.
Repository: ambari Updated Branches: refs/heads/trunk 62e2f9f8e - 221f0e511 AMBARI-6836. View: Files property checking should log more explicit failure. Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/221f0e51 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/221f0e51 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/221f0e51 Branch: refs/heads/trunk Commit: 221f0e511c4232af2b4ad49b99965a34e4f59df6 Parents: 62e2f9f Author: Mahadev Konar maha...@apache.org Authored: Tue Aug 12 13:44:41 2014 -0700 Committer: Mahadev Konar maha...@apache.org Committed: Tue Aug 12 13:44:41 2014 -0700 -- .../view/filebrowser/DownloadService.java | 201 +++ .../view/filebrowser/FileOperationService.java | 169 +--- .../ambari/view/filebrowser/HdfsService.java| 18 +- .../ambari/view/filebrowser/HelpService.java| 54 ++--- .../ambari/view/filebrowser/UploadService.java | 65 +++--- .../MisconfigurationFormattedException.java | 43 .../utils/NotFoundFormattedException.java | 27 +++ .../utils/ServiceFormattedException.java| 57 ++ .../main/resources/ui/app/controllers/error.js | 50 + .../resources/ui/app/controllers/filesAlert.js | 20 ++ .../src/main/resources/ui/app/initialize.js | 2 + .../main/resources/ui/app/templates/error.hbs | 25 ++- .../ui/app/templates/util/errorRow.hbs | 19 +- .../files/src/main/resources/ui/config.coffee | 2 +- 14 files changed, 527 insertions(+), 225 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/221f0e51/contrib/views/files/src/main/java/org/apache/ambari/view/filebrowser/DownloadService.java -- diff --git a/contrib/views/files/src/main/java/org/apache/ambari/view/filebrowser/DownloadService.java b/contrib/views/files/src/main/java/org/apache/ambari/view/filebrowser/DownloadService.java index 2f4d1b9..72ba726 100644 --- a/contrib/views/files/src/main/java/org/apache/ambari/view/filebrowser/DownloadService.java +++ b/contrib/views/files/src/main/java/org/apache/ambari/view/filebrowser/DownloadService.java @@ -46,6 +46,8 @@ import javax.ws.rs.core.UriInfo; import javax.xml.bind.annotation.XmlElement; import com.google.gson.Gson; +import org.apache.ambari.view.filebrowser.utils.NotFoundFormattedException; +import org.apache.ambari.view.filebrowser.utils.ServiceFormattedException; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FileStatus; import org.apache.ambari.view.ViewContext; @@ -89,17 +91,16 @@ public class DownloadService extends HdfsService { filename=\ + status.getPath().getName() + \).type(mimeType); } return result.build(); +} catch (WebApplicationException ex) { + throw ex; } catch (FileNotFoundException ex) { - return Response.ok(Response.Status.NOT_FOUND.getStatusCode()) - .entity(ex.getMessage()).build(); + throw new NotFoundFormattedException(ex.getMessage(), ex); } catch (Exception ex) { - return Response.ok(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode()) - .entity(ex.getMessage()).build(); + throw new ServiceFormattedException(ex.getMessage(), ex); } } - private void zipFile(ZipOutputStream zip, String path) - throws InterruptedException, Exception { + private void zipFile(ZipOutputStream zip, String path) throws InterruptedException, IOException { try { zip.putNextEntry(new ZipEntry(path.substring(1))); FSDataInputStream in = getApi(context).open(path); @@ -108,22 +109,25 @@ public class DownloadService extends HdfsService { zip.write(chunk); } } catch (IOException ex) { - logger.error(Error zipping file + path.substring(1) + : - + ex.getMessage()); + String msg = Error zipping file + path.substring(1) + : + + ex.getMessage(); + logger.error(msg); zip.write(ex.getMessage().getBytes()); + throw new ServiceFormattedException(ex.getMessage(), ex); } finally { zip.closeEntry(); } - } private void zipDirectory(ZipOutputStream zip, String path) { try { zip.putNextEntry(new ZipEntry(path.substring(1) + /)); zip.closeEntry(); -} catch (IOException e) { - logger.error(Error zipping directory + path.substring(1) + / + : - + e.getMessage()); +} catch (IOException ex) { + String msg = Error zipping directory + path.substring(1) + / + : + + ex.getMessage(); + logger.error(msg); + throw new ServiceFormattedException(msg, ex); } } @@ -137,40 +141,47 @@ public class DownloadService extends HdfsService {
git commit: AMBARI-6838. Admin view: LDAP sync doesn't work when group contains users in upper case.
Repository: ambari Updated Branches: refs/heads/trunk 2aee43d38 - f2114d8c9 AMBARI-6838. Admin view: LDAP sync doesn't work when group contains users in upper case. Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/f2114d8c Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/f2114d8c Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/f2114d8c Branch: refs/heads/trunk Commit: f2114d8c9e7905cc6b4d87c2007e1253d6d9e01d Parents: 2aee43d Author: Siddharth Wagle swa...@hortonworks.com Authored: Tue Aug 12 16:04:45 2014 -0700 Committer: Siddharth Wagle swa...@hortonworks.com Committed: Tue Aug 12 16:04:45 2014 -0700 -- .../security/authorization/AmbariLdapDataPopulator.java | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/f2114d8c/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariLdapDataPopulator.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariLdapDataPopulator.java b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariLdapDataPopulator.java index 3e0d49f..29b69a6 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariLdapDataPopulator.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/security/authorization/AmbariLdapDataPopulator.java @@ -227,13 +227,15 @@ public class AmbariLdapDataPopulator { if (!user.isLdapUser()) { users.setUserLdap(externalMember); } -internalUsers.remove(externalMember); +if (!internalMembers.containsKey(externalMember)) { + users.addMemberToGroup(groupName, externalMember); +} internalMembers.remove(externalMember); +internalUsers.remove(externalMember); } else { users.createUser(externalMember, , true, false); users.setUserLdap(externalMember); } - users.addMemberToGroup(groupName, externalMember); } for (EntryString, User userToBeUnsynced: internalMembers.entrySet()) { final User user = userToBeUnsynced.getValue(); @@ -331,7 +333,7 @@ public class AmbariLdapDataPopulator { final DirContextAdapter adapter = (DirContextAdapter) ctx; for (String uniqueMember: adapter.getStringAttributes(ldapServerProperties.getGroupMembershipAttr())) { final DirContextAdapter userAdapter = (DirContextAdapter) ldapTemplate.lookup(uniqueMember); - members.add(userAdapter.getStringAttribute(ldapServerProperties.getUsernameAttribute().toLowerCase())); + members.add(userAdapter.getStringAttribute(ldapServerProperties.getUsernameAttribute()).toLowerCase()); } return null; }
git commit: AMBARI-6839 - Alerts: Update Oracle Alert DDL for CLOB (jonathanhurley)
Repository: ambari Updated Branches: refs/heads/trunk f2114d8c9 - e8c80e221 AMBARI-6839 - Alerts: Update Oracle Alert DDL for CLOB (jonathanhurley) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/e8c80e22 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/e8c80e22 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/e8c80e22 Branch: refs/heads/trunk Commit: e8c80e2213c40e42d89f4db870ab0a8bf0b9e15c Parents: f2114d8 Author: Jonathan Hurley jhur...@hortonworks.com Authored: Tue Aug 12 20:23:26 2014 -0400 Committer: Jonathan Hurley jhur...@hortonworks.com Committed: Tue Aug 12 23:21:52 2014 -0400 -- .../orm/entities/AlertDefinitionEntity.java | 67 +++- .../server/orm/entities/AlertTargetEntity.java | 34 ++ .../server/upgrade/UpgradeCatalog170.java | 17 +++-- .../main/resources/Ambari-DDL-Oracle-CREATE.sql | 4 +- 4 files changed, 72 insertions(+), 50 deletions(-) -- http://git-wip-us.apache.org/repos/asf/ambari/blob/e8c80e22/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java -- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java index 3aa0e62..de30921 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/AlertDefinitionEntity.java @@ -19,6 +19,7 @@ package org.apache.ambari.server.orm.entities; import java.util.Set; +import javax.persistence.Basic; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; @@ -28,6 +29,7 @@ import javax.persistence.Enumerated; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; +import javax.persistence.Lob; import javax.persistence.ManyToMany; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; @@ -58,6 +60,8 @@ public class AlertDefinitionEntity { @Column(name = definition_id, nullable = false, updatable = false) private Long definitionId; + @Lob + @Basic @Column(name = alert_source, nullable = false, length = 32672) private String source; @@ -69,7 +73,7 @@ public class AlertDefinitionEntity { @Column(name = definition_name, nullable = false, length = 255) private String definitionName; - + @Column(name = scope, length = 255) @Enumerated(value = EnumType.STRING) private Scope scope; @@ -104,7 +108,7 @@ public class AlertDefinitionEntity { /** * Gets the unique identifier for this alert definition. - * + * * @return the ID. */ public Long getDefinitionId() { @@ -113,7 +117,7 @@ public class AlertDefinitionEntity { /** * Sets the unique identifier for this alert definition. - * + * * @param definitionId * the ID (not {@code null}). */ @@ -125,7 +129,7 @@ public class AlertDefinitionEntity { * Gets the source that defines the type of alert and the alert properties. * This is typically a JSON structure that can be mapped to a first-class * object. - * + * * @return the alert source (never {@code null}). */ public String getSource() { @@ -135,19 +139,19 @@ public class AlertDefinitionEntity { /** * Sets the source of the alert, typically in JSON, that defines the type of * the alert and its properties. - * + * * @param alertSource * the alert source (not {@code null}). */ public void setSource(String alertSource) { -this.source = alertSource; +source = alertSource; } /** * Gets the ID of the cluster that this alert definition is created for. Each * cluster has their own set of alert definitions that are not shared with any * other cluster. - * + * * @return the ID of the cluster (never {@code null}). */ public Long getClusterId() { @@ -158,7 +162,7 @@ public class AlertDefinitionEntity { * Sets the ID of the cluster that this alert definition is created for. Each * cluster has their own set of alert definitions that are not shared with any * other cluster. - * + * * @param clusterId * the ID of the cluster (not {@code null}). */ @@ -169,7 +173,7 @@ public class AlertDefinitionEntity { /** * Gets the component name that this alert is associated with, if any. Some * alerts are scoped at the service level and will not have a component name. - * + * * @return the component name or {@code null} if none. */ public String