You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Jonathan Hurley (JIRA)" <ji...@apache.org> on 2016/07/12 02:36:11 UTC

[jira] [Updated] (AMBARI-17667) Storm 1.0 Does Not Support Rolling Upgrades

     [ https://issues.apache.org/jira/browse/AMBARI-17667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hurley updated AMBARI-17667:
-------------------------------------
    Description: 
HDP 2.5 includes a new version of Storm where packages named {{backtype.storm}} were changed to {{org.apache.storm}}. As a result, Storm local data is not compatible between versions earlier versions of HDP and HDP 2.5. Consider the following situatio where Nimbus and a Supervisor are co-located on the same host:

- Nimbus deletes local data and restarts on the new version
- A running 2.4 Supervisor on the same host then re-creates that directory and puts 2.4 data back in
- When the 2.4 Supervisor goes to upgrade and restart, it can't delete that data again since Nimbus is already running and would stop.

When starting the Supevisor, the following error is seen:
{code}
2016-06-21 23:10:48.000 o.a.s.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED
2016-06-21 23:10:48.058 b.s.d.supervisor [INFO] Starting supervisor with id 03d8bceb-0271-4076-810d-04aeaa91533c at host nat-os-r6-omns-dgm10toeriedwngdha-r6-2.openstacklocal
2016-06-21 23:10:48.785 b.s.event [ERROR] Error when processing event
java.lang.RuntimeException: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
        at backtype.storm.utils.LocalState.deserialize(LocalState.java:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.utils.LocalState.get(LocalState.java:130) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.local_state$ls_local_assignments.invoke(local_state.clj:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.daemon.supervisor$sync_processes.invoke(supervisor.clj:323) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at clojure.lang.AFn.applyToHelper(AFn.java:154) ~[clojure-1.6.0.jar:?]
        at clojure.lang.AFn.applyTo(AFn.java:144) ~[clojure-1.6.0.jar:?]
        at clojure.core$apply.invoke(core.clj:626) ~[clojure-1.6.0.jar:?]
        at clojure.core$partial$fn__4228.doInvoke(core.clj:2468) ~[clojure-1.6.0.jar:?]
        at clojure.lang.RestFn.invoke(RestFn.java:397) ~[clojure-1.6.0.jar:?]
        at backtype.storm.event$event_manager$fn__6135.invoke(event.clj:40) [storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
        at java.lang.Thread.run(Thread.java:745) [?:1.7.0_67]
Caused by: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366) ~[?:1.7.0_67]
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[?:1.7.0_67]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_67]
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354) ~[?:1.7.0_67]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[?:1.7.0_67]
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) ~[?:1.7.0_67]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[?:1.7.0_67]
        at java.lang.Class.forName0(Native Method) ~[?:1.7.0_67]
        at java.lang.Class.forName(Class.java:190) ~[?:1.7.0_67]
        at backtype.storm.utils.LocalState.deserialize(LocalState.java:78) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
{code}

  was:
HDP 2.5 includes a new version of Storm where packages named {{backtype.storm}} were changed to {{org.apache.storm}}. As a result, Storm local data is not compatible between versions earlier versions of HDP and HDP 2.5. Consider the following situatio where Nimbus and a Supervisor are co-located on the same host:

- Nimbus deletes local data and restarts on the downgrade version
- A running 2.5 Supervisor on the same host then re-creates that directory and puts 2.5 data back in
- When the 2.5 Supervisor goes to downgrade and restart, it can't delete that data again since Nimbus is already running and would stop.

When starting the Supevisor, the following error is seen:
{code}
2016-06-21 23:10:48.000 o.a.s.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED
2016-06-21 23:10:48.058 b.s.d.supervisor [INFO] Starting supervisor with id 03d8bceb-0271-4076-810d-04aeaa91533c at host nat-os-r6-omns-dgm10toeriedwngdha-r6-2.openstacklocal
2016-06-21 23:10:48.785 b.s.event [ERROR] Error when processing event
java.lang.RuntimeException: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
        at backtype.storm.utils.LocalState.deserialize(LocalState.java:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.utils.LocalState.get(LocalState.java:130) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.local_state$ls_local_assignments.invoke(local_state.clj:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at backtype.storm.daemon.supervisor$sync_processes.invoke(supervisor.clj:323) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at clojure.lang.AFn.applyToHelper(AFn.java:154) ~[clojure-1.6.0.jar:?]
        at clojure.lang.AFn.applyTo(AFn.java:144) ~[clojure-1.6.0.jar:?]
        at clojure.core$apply.invoke(core.clj:626) ~[clojure-1.6.0.jar:?]
        at clojure.core$partial$fn__4228.doInvoke(core.clj:2468) ~[clojure-1.6.0.jar:?]
        at clojure.lang.RestFn.invoke(RestFn.java:397) ~[clojure-1.6.0.jar:?]
        at backtype.storm.event$event_manager$fn__6135.invoke(event.clj:40) [storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
        at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
        at java.lang.Thread.run(Thread.java:745) [?:1.7.0_67]
Caused by: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366) ~[?:1.7.0_67]
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[?:1.7.0_67]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_67]
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354) ~[?:1.7.0_67]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[?:1.7.0_67]
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) ~[?:1.7.0_67]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[?:1.7.0_67]
        at java.lang.Class.forName0(Native Method) ~[?:1.7.0_67]
        at java.lang.Class.forName(Class.java:190) ~[?:1.7.0_67]
        at backtype.storm.utils.LocalState.deserialize(LocalState.java:78) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
{code}


> Storm 1.0 Does Not Support Rolling Upgrades
> -------------------------------------------
>
>                 Key: AMBARI-17667
>                 URL: https://issues.apache.org/jira/browse/AMBARI-17667
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.4.0
>            Reporter: Jonathan Hurley
>            Assignee: Jonathan Hurley
>            Priority: Blocker
>             Fix For: 2.4.0
>
>
> HDP 2.5 includes a new version of Storm where packages named {{backtype.storm}} were changed to {{org.apache.storm}}. As a result, Storm local data is not compatible between versions earlier versions of HDP and HDP 2.5. Consider the following situatio where Nimbus and a Supervisor are co-located on the same host:
> - Nimbus deletes local data and restarts on the new version
> - A running 2.4 Supervisor on the same host then re-creates that directory and puts 2.4 data back in
> - When the 2.4 Supervisor goes to upgrade and restart, it can't delete that data again since Nimbus is already running and would stop.
> When starting the Supevisor, the following error is seen:
> {code}
> 2016-06-21 23:10:48.000 o.a.s.c.f.s.ConnectionStateManager [INFO] State change: CONNECTED
> 2016-06-21 23:10:48.058 b.s.d.supervisor [INFO] Starting supervisor with id 03d8bceb-0271-4076-810d-04aeaa91533c at host nat-os-r6-omns-dgm10toeriedwngdha-r6-2.openstacklocal
> 2016-06-21 23:10:48.785 b.s.event [ERROR] Error when processing event
> java.lang.RuntimeException: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
>         at backtype.storm.utils.LocalState.deserialize(LocalState.java:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
>         at backtype.storm.utils.LocalState.get(LocalState.java:130) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
>         at backtype.storm.local_state$ls_local_assignments.invoke(local_state.clj:83) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
>         at backtype.storm.daemon.supervisor$sync_processes.invoke(supervisor.clj:323) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
>         at clojure.lang.AFn.applyToHelper(AFn.java:154) ~[clojure-1.6.0.jar:?]
>         at clojure.lang.AFn.applyTo(AFn.java:144) ~[clojure-1.6.0.jar:?]
>         at clojure.core$apply.invoke(core.clj:626) ~[clojure-1.6.0.jar:?]
>         at clojure.core$partial$fn__4228.doInvoke(core.clj:2468) ~[clojure-1.6.0.jar:?]
>         at clojure.lang.RestFn.invoke(RestFn.java:397) ~[clojure-1.6.0.jar:?]
>         at backtype.storm.event$event_manager$fn__6135.invoke(event.clj:40) [storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
>         at clojure.lang.AFn.run(AFn.java:22) [clojure-1.6.0.jar:?]
>         at java.lang.Thread.run(Thread.java:745) [?:1.7.0_67]
> Caused by: java.lang.ClassNotFoundException: org.apache.storm.generated.LSSupervisorAssignments
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:366) ~[?:1.7.0_67]
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[?:1.7.0_67]
>         at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_67]
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:354) ~[?:1.7.0_67]
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[?:1.7.0_67]
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) ~[?:1.7.0_67]
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[?:1.7.0_67]
>         at java.lang.Class.forName0(Native Method) ~[?:1.7.0_67]
>         at java.lang.Class.forName(Class.java:190) ~[?:1.7.0_67]
>         at backtype.storm.utils.LocalState.deserialize(LocalState.java:78) ~[storm-core-0.10.0.2.4.2.0-258.jar:0.10.0.2.4.2.0-258]
> {code}



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