[ 
https://issues.apache.org/jira/browse/YARN-2944?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14243213#comment-14243213
 ] 

Sangjin Lee commented on YARN-2944:
-----------------------------------

Thanks for the patch [~ctrezzo]!

The patch looks good to me. One small nit: the InMemorySCMStore (and SCMStore) 
constructor that takes an AppChecker instance is needed only for unit testing 
purposes, right? If so, can we make it default scope instead of public and mark 
it as visible for testing?

> SCMStore/InMemorySCMStore is not currently compatible with 
> ReflectionUtils#newInstance
> --------------------------------------------------------------------------------------
>
>                 Key: YARN-2944
>                 URL: https://issues.apache.org/jira/browse/YARN-2944
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Chris Trezzo
>            Assignee: Chris Trezzo
>            Priority: Minor
>         Attachments: YARN-2944-trunk-v1.patch
>
>
> Currently the Shared Cache Manager uses ReflectionUtils#newInstance to create 
> the SCMStore service. Unfortunately the SCMStore class does not have a 
> 0-argument constructor.
> On startup, the SCM fails with the following:
> {noformat}
> 14/12/09 16:10:53 INFO service.AbstractService: Service SharedCacheManager 
> failed in state INITED; cause: java.lang.RuntimeException: 
> java.lang.NoSuchMethodException: 
> org.apache.hadoop.yarn.server.sharedcachemanager.store.InMemorySCMStore.<init>()
> java.lang.RuntimeException: java.lang.NoSuchMethodException: 
> org.apache.hadoop.yarn.server.sharedcachemanager.store.InMemorySCMStore.<init>()
>         at 
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:131)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.createSCMStoreService(SharedCacheManager.java:103)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.serviceInit(SharedCacheManager.java:65)
>         at 
> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.main(SharedCacheManager.java:156)
> Caused by: java.lang.NoSuchMethodException: 
> org.apache.hadoop.yarn.server.sharedcachemanager.store.InMemorySCMStore.<init>()
>         at java.lang.Class.getConstructor0(Class.java:2763)
>         at java.lang.Class.getDeclaredConstructor(Class.java:2021)
>         at 
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:125)
>         ... 4 more
> 14/12/09 16:10:53 FATAL sharedcachemanager.SharedCacheManager: Error starting 
> SharedCacheManager
> java.lang.RuntimeException: java.lang.NoSuchMethodException: 
> org.apache.hadoop.yarn.server.sharedcachemanager.store.InMemorySCMStore.<init>()
>         at 
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:131)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.createSCMStoreService(SharedCacheManager.java:103)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.serviceInit(SharedCacheManager.java:65)
>         at 
> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
>         at 
> org.apache.hadoop.yarn.server.sharedcachemanager.SharedCacheManager.main(SharedCacheManager.java:156)
> Caused by: java.lang.NoSuchMethodException: 
> org.apache.hadoop.yarn.server.sharedcachemanager.store.InMemorySCMStore.<init>()
>         at java.lang.Class.getConstructor0(Class.java:2763)
>         at java.lang.Class.getDeclaredConstructor(Class.java:2021)
>         at 
> org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:125)
>         ... 4 more
> {noformat}
> This JIRA is to add a 0-argument constructor to SCMStore.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to