> On April 29, 2016, 12:11 a.m., Alexander Denissov wrote: > > ambari-server/src/main/java/org/apache/ambari/server/stack/CommonServiceDirectory.java, > > line 56 > > <https://reviews.apache.org/r/44210/diff/5/?file=1364835#file1364835line56> > > > > should we not have a convention at all and rely on property specified > > in metainfo.xml ? > > > > The service advisors can be called HAWQ200ServiceAdvisor for the > > service in common services and HDP23HAWQ200ServiceAdvisor for the version > > specific to HDP2.3 stack, if any. > > > > This is the argument about inheritance between advisors of different > > versions of service and stack. > > Tim Thorpe wrote: > I debated about this but I don't see what you really gain by allowing the > advisor name or file name to be specified in the metainfo.xml. Although the > code there should be changed to serviceName + serviceVersion + > "ServiceAdvisor". This would support the situation you mentioned in your > email about adding HAWQ 2.1.0 to common-services and it inheriting from > HAWQ200ServiceAdvisor. > > The file name should always be "service_advisor.py" much like we always > have "stack_advisor.py". The class name of the service advisor depends on > whether it is from common-services or from the stack. It should be > <service_name><service_version>ServiceAdvisor in common-services and > <stack_name><stack_version><service_name>ServiceAdvisor in the stack.
When I scanned over the stacks/service_advisor.py, I noticed that the naming convention was not documented. I added that in. HAWQ200ServiceAdvisor for the service in common services HDP23HAWQServiceAdvisor for the version specific to the HDP 2.3 stack - Tim ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/44210/#review131009 ----------------------------------------------------------- On April 28, 2016, 4:36 p.m., Tim Thorpe wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/44210/ > ----------------------------------------------------------- > > (Updated April 28, 2016, 4:36 p.m.) > > > Review request for Ambari, Alexander Denissov, bhuvnesh chaudhary, Jayush > Luniya, Oleksandr Diachenko, Sumit Mohanty, Srimanth Gunturi, and Yusaku Sako. > > > Bugs: AMBARI-15226 > https://issues.apache.org/jira/browse/AMBARI-15226 > > > Repository: ambari > > > Description > ------- > > Currently the stack advisor is defined under each stack version such as > HDP/2.3. The problem with this is that it restricts the services that can be > added to the stack. If a custom service is to be added, they would need to > modify the stack advisor. If the configuration recommendation and validation > can be done at the service level then the custom service could just include > their own recommendations and validations separately. > > > Diffs > ----- > > ambari-server/src/main/assemblies/server.xml e1a4919 > > ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java > df65010 > > ambari-server/src/main/java/org/apache/ambari/server/api/services/stackadvisor/commands/StackAdvisorCommand.java > 00c8696 > > ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java > ca1968e > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java > 6c6fa91 > > ambari-server/src/main/java/org/apache/ambari/server/stack/CommonServiceDirectory.java > 636de37 > > ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceDirectory.java > 356adb1 > > ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java > b7e09a9 > > ambari-server/src/main/java/org/apache/ambari/server/stack/StackServiceDirectory.java > d27e52a > ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java > 5a2bf84 > > ambari-server/src/main/resources/common-services/HAWQ/2.0.0/service_advisor.py > PRE-CREATION > > ambari-server/src/main/resources/common-services/PXF/3.0.0/service_advisor.py > PRE-CREATION > ambari-server/src/main/resources/properties.json eac0dbd > ambari-server/src/main/resources/stacks/HDP/2.0.6/services/stack_advisor.py > 1680f21 > ambari-server/src/main/resources/stacks/HDP/2.3/services/stack_advisor.py > d0ce196 > ambari-server/src/main/resources/stacks/service_advisor.py PRE-CREATION > ambari-server/src/main/resources/stacks/stack_advisor.py 9979e7e > ambari-server/src/test/python/stacks/2.3/common/test_stack_advisor.py > 2080c52 > > Diff: https://reviews.apache.org/r/44210/diff/ > > > Testing > ------- > > Ran all the non java unit tests. > > Total run:945 > Total errors:0 > Total failures:0 > > Manually configured HAWQ and PXF as part of the HDP 2.3 stack and made sure > their service advisors were called. > > > Thanks, > > Tim Thorpe > >