You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Rob Lambert (JIRA)" <ji...@apache.org> on 2015/12/04 19:39:10 UTC

[jira] [Commented] (AMBARI-12597) Ambari should support custom stack names

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

Rob Lambert commented on AMBARI-12597:
--------------------------------------

Hi All,

I can't be sure, but I think I'm seeing a resurfacing of this bug, or perhaps there is some other way I need to add my custom stack to Ambari after this bug fix.

We're working on developing KAVE, which is described here: https://github.com/KaveIO/AmbariKave , but boils down to adding a stack with a custom name (2.2.KAVE or 2.3.KAVE) to the ambari resources directory.

What used to work great here in 1.7.X no longer works in 2.1.X, including the newly released 2.1.2.

I have recorded a full demonstration of the problem and uploaded it to youtube here: https://youtu.be/-zL5xNYwnoI

I have two machines running in the cloud which demonstrate this problem, and can provide login details to these machines or access to any of the developers who may wish to try this out for themselves (pm or email me for details). Also happy to discuss or help in any other way I can to get this fixed, because at the moment it is holding up our development cycle.

Thanks,

Rob

> Ambari should support custom stack names
> ----------------------------------------
>
>                 Key: AMBARI-12597
>                 URL: https://issues.apache.org/jira/browse/AMBARI-12597
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.1.0
>            Reporter: Alejandro Fernandez
>            Assignee: Sumit Mohanty
>            Priority: Blocker
>             Fix For: 2.1.2
>
>         Attachments: AMBARI-12597.patch
>
>
> When upgrading to Ambari 2.1.0, with a custom stack name and version that contains letters, the Ambari Upgrade will fail, and most likely so will starting services.
> E.g.,
> /var/lib/ambari-server/stacks/HDP/
> 2.2
> 2.2.MYNAME
> If "2.2.MYNAME" is a stack, then the upgrade to Ambari 2.1 will attempt to insert a record in the stack table. The upgrade will then try to insert appropriate repo_version items, and then fail when trying to compare versions.
> First error,
> {code}
> 1) Error injecting method, java.lang.NullPointerException
>   at org.apache.ambari.server.api.services.AmbariMetaInfo.init(AmbariMetaInfo.java:242)
>   at org.apache.ambari.server.api.services.AmbariMetaInfo.class(AmbariMetaInfo.java:124)
>   while locating org.apache.ambari.server.api.services.AmbariMetaInfo
> 1 error
> 	at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987)
> 	at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
> 	at org.apache.ambari.server.upgrade.UpgradeCatalog210.executeStackPreDMLUpdates(UpgradeCatalog210.java:670)
> 	at org.apache.ambari.server.upgrade.UpgradeCatalog210.executePreDMLUpdates(UpgradeCatalog210.java:985)
> 	at org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.preUpgradeData(AbstractUpgradeCatalog.java:531)
> 	at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executePreDMLUpdates(SchemaUpgradeHelper.java:205)
> 	at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:295)
> Caused by: java.lang.NullPointerException
> 	at org.apache.ambari.server.stack.StackModule.processRepositories(StackModule.java:650)
> 	at org.apache.ambari.server.stack.StackModule.resolve(StackModule.java:159)
> 	at org.apache.ambari.server.stack.StackManager.fullyResolveStacks(StackManager.java:201)
> 	at org.apache.ambari.server.stack.StackManager.<init>(StackManager.java:119)
> 	at org.apache.ambari.server.stack.StackManager$$FastClassByGuice$$33e4ffe0.newInstance(<generated>)
> 	at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
> 	at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
> 	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85)
> 	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
> 	at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
> 	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
> 	at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
> 	at com.google.inject.assistedinject.FactoryProvider2.invoke(FactoryProvider2.java:632)
> 	at com.sun.proxy.$Proxy26.create(Unknown Source)
> 	at org.apache.ambari.server.api.services.AmbariMetaInfo.init(AmbariMetaInfo.java:246)
> 	at org.apache.ambari.server.api.services.AmbariMetaInfo$$FastClassByGuice$$202844bc.invoke(<generated>)
> 	at com.google.inject.internal.cglib.reflect.$FastMethod.invoke(FastMethod.java:53)
> 	at com.google.inject.internal.SingleMethodInjector$1.invoke(SingleMethodInjector.java:56)
> 	at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:90)
> 	at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
> 	at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:94)
> 	at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
> 	at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
> 	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031)
> 	at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
> 	at com.google.inject.Scopes$1$1.get(Scopes.java:65)
> 	at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
> 	at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
> 	at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
> 	at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
> 	... 6 more
> {code}
> Next error,
> {code}
> java.lang.NumberFormatException: For input string: "NEA"
>         at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
>         at java.lang.Integer.parseInt(Integer.java:580)
>         at java.lang.Integer.parseInt(Integer.java:615)
>         at org.apache.ambari.server.utils.VersionUtils.compareVersions(VersionUtils.java:76)
>         at org.apache.ambari.server.utils.VersionUtils.compareVersions(VersionUtils.java:136)
>         at org.apache.ambari.server.upgrade.UpgradeCatalog210.removeStormRestApiServiceComponent(UpgradeCatalog210.java:1141)
>         at org.apache.ambari.server.upgrade.UpgradeCatalog210.executeDMLUpdates(UpgradeCatalog210.java:1001)
>         at org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.upgradeData(AbstractUpgradeCatalog.java:536)
>         at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeDMLUpdates(SchemaUpgradeHelper.java:220)
>         at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:297)
> 30 Jul 2015 22:28:59,105 ERROR [main] SchemaUpgradeHelper:308 - Exception occurred during upgrade, failed
> org.apache.ambari.server.AmbariException: For input string: "NEA"
>         at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeDMLUpdates(SchemaUpgradeHelper.java:223)
>         at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:297)
> Caused by: java.lang.NumberFormatException: For input string: "NEA"
>         at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
>         at java.lang.Integer.parseInt(Integer.java:580)
>         at java.lang.Integer.parseInt(Integer.java:615)
>         at org.apache.ambari.server.utils.VersionUtils.compareVersions(VersionUtils.java:76)
>         at org.apache.ambari.server.utils.VersionUtils.compareVersions(VersionUtils.java:136)
>         at org.apache.ambari.server.upgrade.UpgradeCatalog210.removeStormRestApiServiceComponent(UpgradeCatalog210.java:1141)
>         at org.apache.ambari.server.upgrade.UpgradeCatalog210.executeDMLUpdates(UpgradeCatalog210.java:1001)
>         at org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.upgradeData(AbstractUpgradeCatalog.java:536)
>         at org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeDMLUpdates(SchemaUpgradeHelper.java:220)
>         ... 1 more
> {code}



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