Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
None
-
None
-
None
Description
I have a quarks application that creates an IotProvider and registers two applications. One is called piCpuSensor.
Once the main program (the one with IotProvider) is started and registers the two applications I send a device command to the piCpuSensor.
At that point the piCpuSensor starts spitting out temperature readings every second.
Now I send a "CLOSE" command to piCpuSensor. At this point the temperature readings stop.
Now, I want to restart my piCpuSensor application. I send a submit command again. At that point an error is thrown and my main program is no longer functional. (i.e ,it can not receive or send any info)
Here is the stack trace:
Jun 22, 2016 1:12:17 PM quarks.runtime.etiao.ThreadFactoryTracker trackedThreadUncaughtException
SEVERE: Uncaught exception in thread pool-2-thread-4-quarksIotCommandsToControl
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at quarks.providers.iot.IotProvider.lambda$null$6cfee445$1(IotProvider.java:239)
at quarks.providers.iot.IotProvider$$Lambda$27/12209492.accept(Unknown Source)
at quarks.function.Functions$ThreadSafeConsumer.accept(Functions.java:204)
at quarks.runtime.etiao.SettableForwarder.accept(SettableForwarder.java:54)
at quarks.oplet.core.Pipe.submit(Pipe.java:65)
at quarks.oplet.functional.Filter.accept(Filter.java:37)
at quarks.runtime.etiao.SettableForwarder.accept(SettableForwarder.java:54)
at quarks.oplet.core.Pipe.submit(Pipe.java:65)
at quarks.oplet.plumbing.Isolate.run(Isolate.java:86)
at quarks.oplet.plumbing.Isolate.lambda$initialize$3(Isolate.java:64)
at quarks.oplet.plumbing.Isolate$$Lambda$20/10725227.run(Unknown Source)
at quarks.runtime.etiao.ThreadFactoryTracker$2.run(ThreadFactoryTracker.java:88)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at quarks.runtime.jsoncontrol.JsonControlService.executeMethod(JsonControlService.java:241)
at quarks.runtime.jsoncontrol.JsonControlService.controlOperation(JsonControlService.java:180)
at quarks.runtime.jsoncontrol.JsonControlService.controlRequest(JsonControlService.java:101)
at quarks.providers.iot.IotProvider.lambda$null$6cfee445$1(IotProvider.java:237)
... 12 more
Caused by: java.lang.IllegalStateException
at quarks.runtime.jsoncontrol.JsonControlService.registerControl(JsonControlService.java:123)
at quarks.runtime.etiao.EtiaoJob.<init>(EtiaoJob.java:71)
at quarks.runtime.etiao.Executable.createJob(Executable.java:271)
at quarks.providers.direct.DirectTopology.executeCallable(DirectTopology.java:104)
at quarks.providers.direct.DirectProvider.submit(DirectProvider.java:87)
at quarks.providers.direct.DirectProvider.submit(DirectProvider.java:52)
at quarks.providers.iot.IotProvider.submit(IotProvider.java:188)
at quarks.providers.iot.IotProvider.submit(IotProvider.java:81)
at quarks.runtime.appservice.AppServiceControl.submit(AppServiceControl.java:66)
... 20 more
Attachments
Issue Links
- links to