Susan L. Cline created QUARKS-210:
-------------------------------------

             Summary: Submit an app, closing an app and then attempting to 
resubmit an app "kills" the parent app
                 Key: QUARKS-210
                 URL: https://issues.apache.org/jira/browse/QUARKS-210
             Project: Quarks
          Issue Type: Bug
          Components: Runtime
            Reporter: Susan L. Cline
            Priority: Critical


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



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

Reply via email to