You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@storm.apache.org by "Ethan Li (Jira)" <ji...@apache.org> on 2020/08/06 14:56:00 UTC

[jira] [Updated] (STORM-3688) Copy storm.daemon.metrics.reporter.plugin.* configs from Config class to DaemonConfig class and deprecate them in Config class

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

Ethan Li updated STORM-3688:
----------------------------
    Summary: Copy storm.daemon.metrics.reporter.plugin.* configs from Config class to DaemonConfig class and deprecate them in Config class  (was: Copy storm.daemon.metrics.reporter.plugin.* configs from Config class to DaemonConfig class and deprecate the copy in Config class)

> Copy storm.daemon.metrics.reporter.plugin.* configs from Config class to DaemonConfig class and deprecate them in Config class
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: STORM-3688
>                 URL: https://issues.apache.org/jira/browse/STORM-3688
>             Project: Apache Storm
>          Issue Type: Task
>            Reporter: Ethan Li
>            Priority: Major
>
> After the change in STORM-3670, the following configs 
> {code:java}
>  public static final String STORM_DAEMON_METRICS_REPORTER_PLUGIN_LOCALE = "storm.daemon.metrics.reporter.plugin.locale";
> public static final String STORM_DAEMON_METRICS_REPORTER_PLUGIN_RATE_UNIT = "storm.daemon.metrics.reporter.plugin.rate.unit";
> public static final String STORM_DAEMON_METRICS_REPORTER_PLUGIN_DURATION_UNIT = "storm.daemon.metrics.reporter.plugin.duration.unit";
> {code}
> are only used in daemon side. We can't move it to DaemonConfig from Config class because if a topology code refers to them directly, it will break (ClassNotFoundException) if the variables are moved out of Config class in a newer version of storm cluster.
> A better way is to duplicate them in DaemonConfig and "@deprecate" them in Config class.
> While doing so, I saw errors unit test (nimbus_test.clj)
> {code:java}
> [INFO] --- clojure-maven-plugin:1.7.1:test (test-clojure) @ storm-core ---
> Exception in thread "main" Syntax error compiling at (org/apache/storm/nimbus_test.clj:1:1).
> 	at clojure.lang.Compiler.load(Compiler.java:7647)
> 	at clojure.lang.RT.loadResourceScript(RT.java:381)
> 	at clojure.lang.RT.loadResourceScript(RT.java:372)
> 	at clojure.lang.RT.load(RT.java:463)
> 	at clojure.lang.RT.load(RT.java:428)
> 	at clojure.core$load$fn__6824.invoke(core.clj:6126)
> 	at clojure.core$load.invokeStatic(core.clj:6125)
> 	at clojure.core$load.doInvoke(core.clj:6109)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at clojure.core$load_one.invokeStatic(core.clj:5908)
> 	at clojure.core$load_one.invoke(core.clj:5903)
> 	at clojure.core$load_lib$fn__6765.invoke(core.clj:5948)
> 	at clojure.core$load_lib.invokeStatic(core.clj:5947)
> 	at clojure.core$load_lib.doInvoke(core.clj:5928)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:142)
> 	at clojure.core$apply.invokeStatic(core.clj:667)
> 	at clojure.core$load_libs.invokeStatic(core.clj:5985)
> 	at clojure.core$load_libs.doInvoke(core.clj:5969)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.core$apply.invokeStatic(core.clj:667)
> 	at clojure.core$require.invokeStatic(core.clj:6007)
> 	at clojure.core$require.doInvoke(core.clj:6007)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at org.apache.storm.testrunner$eval194$iter__195__199$fn__200$fn__201.invoke(test_runner.clj:43)
> 	at org.apache.storm.testrunner$eval194$iter__195__199$fn__200.invoke(test_runner.clj:42)
> 	at clojure.lang.LazySeq.sval(LazySeq.java:42)
> 	at clojure.lang.LazySeq.seq(LazySeq.java:51)
> 	at clojure.lang.RT.seq(RT.java:531)
> 	at clojure.core$seq__5387.invokeStatic(core.clj:137)
> 	at clojure.core$dorun.invokeStatic(core.clj:3133)
> 	at clojure.core$dorun.invoke(core.clj:3133)
> 	at org.apache.storm.testrunner$eval194.invokeStatic(test_runner.clj:42)
> 	at org.apache.storm.testrunner$eval194.invoke(test_runner.clj:42)
> 	at clojure.lang.Compiler.eval(Compiler.java:7176)
> 	at clojure.lang.Compiler.load(Compiler.java:7635)
> 	at clojure.lang.Compiler.loadFile(Compiler.java:7573)
> 	at clojure.main$load_script.invokeStatic(main.clj:452)
> 	at clojure.main$script_opt.invokeStatic(main.clj:512)
> 	at clojure.main$script_opt.invoke(main.clj:507)
> 	at clojure.main$main.invokeStatic(main.clj:598)
> 	at clojure.main$main.doInvoke(main.clj:561)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.lang.Var.applyTo(Var.java:705)
> 	at clojure.main.main(main.java:37)
> Caused by: java.lang.IllegalStateException: STORM-DAEMON-METRICS-REPORTER-PLUGIN-DURATION-UNIT already refers to: #'org.apache.storm.daemon-config/STORM-DAEMON-METRICS-REPORTER-PLUGIN-DURATION-UNIT in namespace: org.apache.storm.nimbus-test
> 	at clojure.lang.Namespace.warnOrFailOnReplace(Namespace.java:88)
> 	at clojure.lang.Namespace.reference(Namespace.java:110)
> 	at clojure.lang.Namespace.refer(Namespace.java:168)
> 	at clojure.core$refer.invokeStatic(core.clj:4252)
> 	at clojure.core$refer.doInvoke(core.clj:4217)
> 	at clojure.lang.RestFn.invoke(RestFn.java:410)
> 	at clojure.lang.AFn.applyToHelper(AFn.java:154)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:132)
> 	at clojure.core$apply.invokeStatic(core.clj:667)
> 	at clojure.core$load_lib.invokeStatic(core.clj:5966)
> 	at clojure.core$load_lib.doInvoke(core.clj:5928)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:142)
> 	at clojure.core$apply.invokeStatic(core.clj:667)
> 	at clojure.core$load_libs.invokeStatic(core.clj:5989)
> 	at clojure.core$load_libs.doInvoke(core.clj:5969)
> 	at clojure.lang.RestFn.applyTo(RestFn.java:137)
> 	at clojure.core$apply.invokeStatic(core.clj:669)
> 	at clojure.core$use.invokeStatic(core.clj:6093)
> 	at clojure.core$use.doInvoke(core.clj:6093)
> 	at clojure.lang.RestFn.invoke(RestFn.java:408)
> 	at org.apache.storm.nimbus_test$eval212$loading__6706__auto____213.invoke(nimbus_test.clj:16)
> 	at org.apache.storm.nimbus_test$eval212.invokeStatic(nimbus_test.clj:16)
> 	at org.apache.storm.nimbus_test$eval212.invoke(nimbus_test.clj:16)
> 	at clojure.lang.Compiler.eval(Compiler.java:7176)
> 	at clojure.lang.Compiler.eval(Compiler.java:7165)
> 	at clojure.lang.Compiler.load(Compiler.java:7635)
> 	... 43 more
> {code}
> So I filed this as a separate task. And anyone can work on it later.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)