git commit: AMBARI-6702. Ambari detects RPM DB corruption (aonishuk)

2014-08-12 Thread 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)

2014-08-12 Thread 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)

2014-08-12 Thread 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)

2014-08-12 Thread 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)

2014-08-12 Thread dmitriusan
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)

2014-08-12 Thread 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.

2014-08-12 Thread swagle
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.

2014-08-12 Thread mahadev
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.

2014-08-12 Thread mahadev
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.

2014-08-12 Thread swagle
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)

2014-08-12 Thread 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