【问题标题】:Getting exception - co.paralleluniverse.fibers.SuspendExecution while executing flow in CordaM13在 CordaM13 中执行流程时出现异常 - co.paralleluniverse.fibers.SuspendExecution
【发布时间】:2017-08-30 00:17:24
【问题描述】:

你好 Corda 团队,

我在 Corda M13 中创建了阶乘预言机服务并创建了两个方流。

从控制台执行流程时出现以下错误。

co.paralleluniverse.fibers.SuspendExecution:糟糕。忘记检测方法 使用 -Dco.paralleluniverse.fibers.verifyInstrumentation=true 运行您的程序 抓住罪魁祸首!

From logs, i found following warning message:
[WARN ] 2017-08-28T14:23:39,227 [Node thread] flow.[4845e28d-60dc-4899-bc9e-6bdfbe43d724].uncaughtException - Caught exception from flow
java.lang.AssertionError: Unexpected task state (fiber parking or parked has no chance to to call `park`): -2
    at co.paralleluniverse.fibers.RunnableFiberTask.park(RunnableFiberTask.java:213) ~[quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.Fiber.park1(Fiber.java:707) ~[quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.Fiber.park(Fiber.java:620) ~[quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.Fiber.park(Fiber.java:624) ~[quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.Fiber.parkAndSerialize(Fiber.java:1944) ~[quasar-core-0.7.6-jdk8.jar:0.7.6]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.suspend(FlowStateMachineImpl.kt:396) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.suspendAndExpectReceive(FlowStateMachineImpl.kt:349) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.waitForMessage(FlowStateMachineImpl.kt:333) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.access$waitForMessage(FlowStateMachineImpl.kt:39) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.waitForConfirmation(FlowStateMachineImpl.kt:497) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.run(FlowStateMachineImpl.kt:126) ~[corda-node-0.13.0.jar:?]
    at net.corda.node.services.statemachine.FlowStateMachineImpl.run(FlowStateMachineImpl.kt:39) ~[corda-node-0.13.0.jar:?]
    at co.paralleluniverse.fibers.Fiber.run1(Fiber.java:1067) [quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.Fiber.exec(Fiber.java:767) [quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.RunnableFiberTask.doExec(RunnableFiberTask.java:100) [quasar-core-0.7.6-jdk8.jar:0.7.6]
    at co.paralleluniverse.fibers.RunnableFiberTask.run(RunnableFiberTask.java:91) [quasar-core-0.7.6-jdk8.jar:0.7.6]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_131]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_131]
    at net.corda.node.utilities.AffinityExecutor$ServiceAffinityExecutor$1$thread$1.run(AffinityExecutor.kt:69) [corda-node-0.13.0.jar:?]

【问题讨论】:

    标签: corda


    【解决方案1】:

    您的某个流程或您从流程中调用的方法之一似乎缺少@Suspendable 注释。

    最好随意添加注解,看看是否能消除错误,然后逐渐削减,看看哪个是有问题的方法。

    【讨论】:

      猜你喜欢
      • 2016-03-31
      • 1970-01-01
      • 2010-11-27
      • 1970-01-01
      • 1970-01-01
      • 2012-05-21
      • 2023-04-01
      • 2012-05-22
      • 1970-01-01
      相关资源
      最近更新 更多