You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by "caofangkun (JIRA)" <ji...@apache.org> on 2014/11/11 04:03:34 UTC

[jira] [Updated] (STORM-550) get an error when use "--config" option to override config file

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

caofangkun updated STORM-550:
-----------------------------
    Description: 
{code:title=Utils.java|borderStyle=solid}
Index: storm-core/src/jvm/backtype/storm/utils/Utils.java
===================================================================
--- storm-core/src/jvm/backtype/storm/utils/Utils.java	(revision 4021)
+++ storm-core/src/jvm/backtype/storm/utils/Utils.java	(working copy)
@@ -19,6 +19,7 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
+import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -44,6 +45,7 @@
 
 import backtype.storm.serialization.DefaultSerializationDelegate;
 import backtype.storm.serialization.SerializationDelegate;
+
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.framework.CuratorFrameworkFactory;
 import org.apache.commons.lang.StringUtils;
@@ -187,7 +189,7 @@
         if (confFile==null || confFile.equals("")) {
             storm = findAndReadConfigFile("storm.yaml", false);
         } else {
-            storm = findAndReadConfigFile(confFile, true);
+            storm = findAndReadConfigFile(new File(confFile).getName(), true);
         }
         ret.putAll(storm);
         ret.putAll(readCommandLineOpts());
{code}


bin/storm --config ~/deploy/storm-conf/storm.yaml  supervisor 

{code:title=Could not find config file on classpath|borderStyle=solid}
Exception in thread "main" java.lang.ExceptionInInitializerError
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:171)
	at backtype.storm.config$loading__4910__auto__.invoke(config.clj:17)
	at backtype.storm.config__init.load(Unknown Source)
	at backtype.storm.config__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.core$load_one.invoke(core.clj:5336)
	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
	at clojure.core$load_lib.doInvoke(core.clj:5374)
	at clojure.lang.RestFn.applyTo(RestFn.java:142)
	at clojure.core$apply.invoke(core.clj:619)
	at clojure.core$load_libs.doInvoke(core.clj:5417)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invoke(core.clj:621)
	at clojure.core$use.doInvoke(core.clj:5507)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at backtype.storm.daemon.common$loading__4910__auto__.invoke(common.clj:16)
	at backtype.storm.daemon.common__init.load(Unknown Source)
	at backtype.storm.daemon.common__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.core$load_one.invoke(core.clj:5336)
	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
	at clojure.core$load_lib.doInvoke(core.clj:5374)
	at clojure.lang.RestFn.applyTo(RestFn.java:142)
	at clojure.core$apply.invoke(core.clj:619)
	at clojure.core$load_libs.doInvoke(core.clj:5417)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invoke(core.clj:621)
	at clojure.core$use.doInvoke(core.clj:5507)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at backtype.storm.daemon.supervisor$loading__4910__auto__.invoke(supervisor.clj:16)
	at backtype.storm.daemon.supervisor__init.load(Unknown Source)
	at backtype.storm.daemon.supervisor__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.lang.Var.invoke(Var.java:415)
	at backtype.storm.daemon.supervisor.<clinit>(Unknown Source)
Caused by: java.lang.RuntimeException: Could not find config file on classpath /home/caokun/deploy/storm-conf/storm.yaml
	at backtype.storm.utils.Utils.findAndReadConfigFile(Utils.java:129)
	at backtype.storm.utils.Utils.readStormConfig(Utils.java:190)
	at backtype.storm.utils.Utils.<clinit>(Utils.java:71)
	... 57 more
Could not find the main class: backtype.storm.daemon.supervisor.  Program will exit.
{code}

  was:
{code:title=Utils.java|borderStyle=solid}
Index: storm-core/src/jvm/backtype/storm/utils/Utils.java
===================================================================
--- storm-core/src/jvm/backtype/storm/utils/Utils.java	(revision 4021)
+++ storm-core/src/jvm/backtype/storm/utils/Utils.java	(working copy)
@@ -19,6 +19,7 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
+import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -44,6 +45,7 @@
 
 import backtype.storm.serialization.DefaultSerializationDelegate;
 import backtype.storm.serialization.SerializationDelegate;
+
 import org.apache.curator.framework.CuratorFramework;
 import org.apache.curator.framework.CuratorFrameworkFactory;
 import org.apache.commons.lang.StringUtils;
@@ -187,7 +189,7 @@
         if (confFile==null || confFile.equals("")) {
             storm = findAndReadConfigFile("storm.yaml", false);
         } else {
-            storm = findAndReadConfigFile(confFile, true);
+            storm = findAndReadConfigFile(new File(confFile).getName(), true);
         }
         ret.putAll(storm);
         ret.putAll(readCommandLineOpts());
{code}

{code:title=Could not find config file on classpath|borderStyle=solid}
Exception in thread "main" java.lang.ExceptionInInitializerError
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:171)
	at backtype.storm.config$loading__4910__auto__.invoke(config.clj:17)
	at backtype.storm.config__init.load(Unknown Source)
	at backtype.storm.config__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.core$load_one.invoke(core.clj:5336)
	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
	at clojure.core$load_lib.doInvoke(core.clj:5374)
	at clojure.lang.RestFn.applyTo(RestFn.java:142)
	at clojure.core$apply.invoke(core.clj:619)
	at clojure.core$load_libs.doInvoke(core.clj:5417)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invoke(core.clj:621)
	at clojure.core$use.doInvoke(core.clj:5507)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at backtype.storm.daemon.common$loading__4910__auto__.invoke(common.clj:16)
	at backtype.storm.daemon.common__init.load(Unknown Source)
	at backtype.storm.daemon.common__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.core$load_one.invoke(core.clj:5336)
	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
	at clojure.core$load_lib.doInvoke(core.clj:5374)
	at clojure.lang.RestFn.applyTo(RestFn.java:142)
	at clojure.core$apply.invoke(core.clj:619)
	at clojure.core$load_libs.doInvoke(core.clj:5417)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at clojure.core$apply.invoke(core.clj:621)
	at clojure.core$use.doInvoke(core.clj:5507)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at backtype.storm.daemon.supervisor$loading__4910__auto__.invoke(supervisor.clj:16)
	at backtype.storm.daemon.supervisor__init.load(Unknown Source)
	at backtype.storm.daemon.supervisor__init.<clinit>(Unknown Source)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:249)
	at clojure.lang.RT.loadClassForName(RT.java:2098)
	at clojure.lang.RT.load(RT.java:430)
	at clojure.lang.RT.load(RT.java:411)
	at clojure.core$load$fn__5018.invoke(core.clj:5530)
	at clojure.core$load.doInvoke(core.clj:5529)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.lang.Var.invoke(Var.java:415)
	at backtype.storm.daemon.supervisor.<clinit>(Unknown Source)
Caused by: java.lang.RuntimeException: Could not find config file on classpath /home/caokun/deploy/storm-conf/storm.yaml
	at backtype.storm.utils.Utils.findAndReadConfigFile(Utils.java:129)
	at backtype.storm.utils.Utils.readStormConfig(Utils.java:190)
	at backtype.storm.utils.Utils.<clinit>(Utils.java:71)
	... 57 more
Could not find the main class: backtype.storm.daemon.supervisor.  Program will exit.
{code}


> get an error when use "--config" option to override config file
> ---------------------------------------------------------------
>
>                 Key: STORM-550
>                 URL: https://issues.apache.org/jira/browse/STORM-550
>             Project: Apache Storm
>          Issue Type: Bug
>    Affects Versions: 0.9.3-rc2
>            Reporter: caofangkun
>            Assignee: caofangkun
>            Priority: Minor
>
> {code:title=Utils.java|borderStyle=solid}
> Index: storm-core/src/jvm/backtype/storm/utils/Utils.java
> ===================================================================
> --- storm-core/src/jvm/backtype/storm/utils/Utils.java	(revision 4021)
> +++ storm-core/src/jvm/backtype/storm/utils/Utils.java	(working copy)
> @@ -19,6 +19,7 @@
>  
>  import java.io.ByteArrayInputStream;
>  import java.io.ByteArrayOutputStream;
> +import java.io.File;
>  import java.io.FileOutputStream;
>  import java.io.IOException;
>  import java.io.InputStream;
> @@ -44,6 +45,7 @@
>  
>  import backtype.storm.serialization.DefaultSerializationDelegate;
>  import backtype.storm.serialization.SerializationDelegate;
> +
>  import org.apache.curator.framework.CuratorFramework;
>  import org.apache.curator.framework.CuratorFrameworkFactory;
>  import org.apache.commons.lang.StringUtils;
> @@ -187,7 +189,7 @@
>          if (confFile==null || confFile.equals("")) {
>              storm = findAndReadConfigFile("storm.yaml", false);
>          } else {
> -            storm = findAndReadConfigFile(confFile, true);
> +            storm = findAndReadConfigFile(new File(confFile).getName(), true);
>          }
>          ret.putAll(storm);
>          ret.putAll(readCommandLineOpts());
> {code}
> bin/storm --config ~/deploy/storm-conf/storm.yaml  supervisor 
> {code:title=Could not find config file on classpath|borderStyle=solid}
> Exception in thread "main" java.lang.ExceptionInInitializerError
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:171)
> 	at backtype.storm.config$loading__4910__auto__.invoke(config.clj:17)
> 	at backtype.storm.config__init.load(Unknown Source)
> 	at backtype.storm.config__init.<clinit>(Unknown Source)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:249)
> 	at clojure.lang.RT.loadClassForName(RT.java:2098)
> 	at clojure.lang.RT.load(RT.java:430)
> 	at clojure.lang.RT.load(RT.java:411)
> 	at clojure.core$load$fn__5018.invoke(core.clj:5530)
> 	at clojure.core$load.doInvoke(core.clj:5529)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at clojure.core$load_one.invoke(core.clj:5336)
> 	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
> 	at clojure.core$load_lib.doInvoke(core.clj:5374)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:142)
> 	at clojure.core$apply.invoke(core.clj:619)
> 	at clojure.core$load_libs.doInvoke(core.clj:5417)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.core$apply.invoke(core.clj:621)
> 	at clojure.core$use.doInvoke(core.clj:5507)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at backtype.storm.daemon.common$loading__4910__auto__.invoke(common.clj:16)
> 	at backtype.storm.daemon.common__init.load(Unknown Source)
> 	at backtype.storm.daemon.common__init.<clinit>(Unknown Source)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:249)
> 	at clojure.lang.RT.loadClassForName(RT.java:2098)
> 	at clojure.lang.RT.load(RT.java:430)
> 	at clojure.lang.RT.load(RT.java:411)
> 	at clojure.core$load$fn__5018.invoke(core.clj:5530)
> 	at clojure.core$load.doInvoke(core.clj:5529)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at clojure.core$load_one.invoke(core.clj:5336)
> 	at clojure.core$load_lib$fn__4967.invoke(core.clj:5375)
> 	at clojure.core$load_lib.doInvoke(core.clj:5374)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:142)
> 	at clojure.core$apply.invoke(core.clj:619)
> 	at clojure.core$load_libs.doInvoke(core.clj:5417)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.core$apply.invoke(core.clj:621)
> 	at clojure.core$use.doInvoke(core.clj:5507)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at backtype.storm.daemon.supervisor$loading__4910__auto__.invoke(supervisor.clj:16)
> 	at backtype.storm.daemon.supervisor__init.load(Unknown Source)
> 	at backtype.storm.daemon.supervisor__init.<clinit>(Unknown Source)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Class.java:249)
> 	at clojure.lang.RT.loadClassForName(RT.java:2098)
> 	at clojure.lang.RT.load(RT.java:430)
> 	at clojure.lang.RT.load(RT.java:411)
> 	at clojure.core$load$fn__5018.invoke(core.clj:5530)
> 	at clojure.core$load.doInvoke(core.clj:5529)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at clojure.lang.Var.invoke(Var.java:415)
> 	at backtype.storm.daemon.supervisor.<clinit>(Unknown Source)
> Caused by: java.lang.RuntimeException: Could not find config file on classpath /home/caokun/deploy/storm-conf/storm.yaml
> 	at backtype.storm.utils.Utils.findAndReadConfigFile(Utils.java:129)
> 	at backtype.storm.utils.Utils.readStormConfig(Utils.java:190)
> 	at backtype.storm.utils.Utils.<clinit>(Utils.java:71)
> 	... 57 more
> Could not find the main class: backtype.storm.daemon.supervisor.  Program will exit.
> {code}



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