-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/28785/#review64216
-----------------------------------------------------------


When I was playing around with injecting an AmbariSessionManager into the 
ServerActionExectutor 
(`org.apache.ambari.server.serveraction.ServerActionExecutor`), I ran into 
thread local storage issues when trying to obtain the session ID.  The 
ServerActionExecutor ran in its own thread spawned from the ActionScheduler 
(`org.apache.ambari.server.actionmanager.ActionScheduler`) thread.  Did you 
test this in a live cluster to make sure you did run into the same issue?

- Robert Levas


On Dec. 6, 2014, 12:54 p.m., Tom Beerbower wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/28785/
> -----------------------------------------------------------
> 
> (Updated Dec. 6, 2014, 12:54 p.m.)
> 
> 
> Review request for Ambari, John Speidel and Robert Levas.
> 
> 
> Bugs: Ambari-8447
>     https://issues.apache.org/jira/browse/Ambari-8447
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Add API support to allow for session attributes to be set for a cluster.
> Expose the session_attributes property on a cluster resource. To add session 
> attributes for a cluster the session_attributes property can be set on a 
> cluster resource. The value of the session_attributes should be a collection 
> of name value pairs, as follows ...
> PUT api/v1/clusters/c1
> 
> {
>   "session_attributes" : {
>     "attr1" : "v1",
>     "attr2" : "v2",
>     "attr3" : {"sub1" : "v31", "sub2" : "v32"}
>   }
> }
> 
> 
> The above example would add the following attributes to the session for 
> cluster c1:
> attribute     value
> -----------------
> attr1     v1
> attr2     v2
> attr3/sub1    v31
> attr3/sub2    v32
> 
> 
> The cluster session attribute property is not available to read through the 
> REST API. The map of cluster session attribute properties is available to 
> resource providers on the Ambari server through the following method on the 
> org.apache.ambari.server.state.Clusters singleton...
> 
>     /**
>      * Get the map of session attributes for the cluster identified by the 
> given name.
>      * 
>      * @param name  the cluster name
>      *              
>      * @return the map of session attributes for the cluster
>      */
>     public Map<String, Object> getSessionAttributes(String name);
> 
> 
> All session attributes set through the above API are scoped by cluster name 
> and session. When the session dies, so do the attribute values for that 
> session.
> 
> 
> Diffs
> -----
> 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
>  abd83fc 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariSessionManager.java
>  e6dd07f 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/ClusterRequest.java
>  8bbbd68 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
>  6cb8fa4 
>   
> ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java
>  7423c25 
>   ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java 
> 125b71b 
>   ambari-server/src/main/java/org/apache/ambari/server/state/Clusters.java 
> 18f3a94 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
>  5a9731a 
>   
> ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClustersImpl.java
>  d2c7428 
>   
> ambari-server/src/test/java/org/apache/ambari/server/agent/AgentResourceTest.java
>  bce66ee 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
>  4b19443 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariSessionManagerTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
>  f382588 
>   
> ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java
>  a11dc43 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterImplTest.java
>  PRE-CREATION 
>   
> ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClustersImplTest.java
>  PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/28785/diff/
> 
> 
> Testing
> -------
> 
> Added new unit tests.  Manual testing for session attributes.
> 
> All tests pass ...
> 
> Results :
> 
> Tests run: 2335, Failures: 0, Errors: 0, Skipped: 22
> 
> 
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Total time: 25:09 min
> [INFO] Finished at: 2014-12-06T11:54:15-05:00
> [INFO] Final Memory: 30M/265M
> [INFO] 
> ------------------------------------------------------------------------
> 
> 
> Thanks,
> 
> Tom Beerbower
> 
>

Reply via email to