You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iota.apache.org by Gunnar Tapper <ta...@gmail.com> on 2017/02/19 07:39:53 UTC

fey-core assembly fails

Hi,

I verified the required versions and then I ran assembly of the fey-core
project. 5 failures.

[info] - should result in creating a global Performer child actor with the
name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/GLOBAL-TEST'
[info] - should result in creating a Performer child actor with the name
'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER'
[info] - should result in one global actor created for orchestration
[info] - should result in right number of running actors
[info] Stopping performer inside ensemble
[ERROR] [02/19/2017 00:35:47.820]
[FEY-TEST-akka.actor.default-dispatcher-8]
[akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
PERFORMER-SCHEDULER
org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
        at
org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(Ensemble.scala:60)
        at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
        at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
        at
akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
        at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
        at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
        at akka.actor.ActorCell.invoke(ActorCell.scala:494)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

[info] - should Send stop message to monitor
[info] Stopping ensemble
[info] - should Send stop message to monitor
[info] - should result in no orchestration running
[info] - should not affect global performer
[info] Stopping global performer
[ERROR] [02/19/2017 00:35:49.023]
[FEY-TEST-akka.actor.default-dispatcher-7]
[akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
GLOBAL-TEST
org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
GLOBAL-TEST
        at
org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
        at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
        at
org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
        at
akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
        at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
        at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
        at
akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestActorRef.scala:60)
        at akka.actor.ActorCell.invoke(ActorCell.scala:494)
        at
akka.testkit.CallingThreadDispatcher.process$1(CallingThreadDispatcher.scala:250)
        at
akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadDispatcher.scala:283)
        at
akka.testkit.CallingThreadDispatcher.systemDispatch(CallingThreadDispatcher.scala:191)
        at
akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch.scala:147)
        at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
        at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
        at
akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:213)
        at
akka.actor.dungeon.FaultHandling$class.terminate(FaultHandling.scala:172)
        at akka.actor.ActorCell.terminate(ActorCell.scala:374)
        at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
        at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
        at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

[info] - should result in restart the orchestration
[info] - should all previous actors restarted
[info] Stopping orchestration
[info] - should result in empty global
[info] EnsembleSpec:
[info] Creating a simple Ensemble MY-ENSEMBLE-0005
[info] - should result in creation of Ensemble actor
'akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
[info] - should result in sending START to monitor actor
[info] - should result in creation of Performer 'TEST-0004'
[info] - should result in Empty state variable Ensemble.connectors
[info] - should result in one entry added to state variable
Ensemble.performer
[info] - should result in one right entry to state variable
Ensemble.performers_metadata
[info] - should result in two paths added to IdentifyFeyActors.actorsPath
[info] Sending Ensemble.STOP_PERFORMERS to Ensemble
[info] - should result in Terminate message of actor 'TEST-0004' and throw
RestartEnsemble Exception
[info] - should result in Performer 'TEST-0004' restarted
[info] - should result in two paths added to IdentifyFeyActors.actorsPath
[info] Sending PoisonPill to Ensemble
[info] - should result in termination of actor 'MY-ENSEMBLE-0005'
[info] - should result in sending TERMINATE to monitor actor
[info] - should result in termination of ensemble and performer
[info] - should result in empty IdentifyFeyActors.actorsPath
[info] creating more detailed Ensemble
[info] - should result in creation of Ensemble actor
[info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
[info] - should result in creation of Performer 'PERFORMER-PARAMS'
[info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
[info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to
200ms
[info] - should create 'PERFORMER-SCHEDULER' with connection to
'PERFORMER-PARAMS'
[info] - should create 'PERFORMER-PARAMS' with no connections
[info] - should create 'PERFORMER-PARAMS' with specified params
[info] 'PERFORMER-SCHEDULER'
[info] - should produce 5 messages in 1 seconds
[info] - should produce 10 messages in 2 seconds
[info] 'PERFORMER-PARAMS'
[info] - should process 5 messages in 1 seconds
[info] - should produce 10 messages in 2 seconds
[info] Stopping any Performer that belongs to the Ensemble
[info] - should force restart of entire Ensemble
[info] - should result in sending STOP - RESTART to monitor actor
[info] - should keep ensemble actorRef when restarted
[info] - should stop and start the performer with a new reference
[info] Restarting an Ensemble
[info] - should Consuming left messages on Process
[info] - should Cleanup TestProbs
[info] Redefining TestProbe for performers
[info] - should start receiving messages
[info] Sending PoisonPill to detailed Ensemble
[info] - should result in termination of Ensemble
[info] - should result in empty IdentifyFeyActors.actorsPath
[info] creating Ensemble with Backoff performer
[info] - should result in creation of Ensemble actor
[info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
[info] - should result in creation of Performer 'PERFORMER-PARAMS'
[info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
second
[info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
[info] Performer with backoff enabled
[info] - should not process messages during the backoff period
[info] Performer with autoScale
[info] - should result in router and routees created
[info] IdentifyFeyActorsSpec:
[info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
[info] - should result in one path added to IdentifyFeyActors.actorsPath
[info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
[info] Creating a new actor in the system and sending
IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
[info] - should result in two paths added to IdentifyFeyActors.actorsPath
[info] - should result in matching paths
[info] Stopping previous added actor and sending
IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
[info] - should result in going back to have just one path added to
IdentifyFeyActors.actorsPath
[info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
[info] WatchServiceReceiverSpec:
[info] Creating WatchServiceReceiver
[info] - should process initial files in the JSON repository
[info] Start a Thread with WatchServiceReceiver
[info] - should Start Thread
[info] Start watching directory
[info] - should Starting receiving CREATED event
[info] - should Starting receiving UPDATE event
[info] processJson
[info] - should log to warn level when json has invalid schema
[info] interrupt watchservice
[info] - should interrupt thread
[info] FeyCoreSpec:
[info] Creating FeyCore
[info] - should result in creating a child actor with the name
'FEY_IDENTIFIER'
[info] - should result in sending START message to Monitor actor
[info] Sending FeyCore.START to FeyCore
[info] - should result in creating a child actor with the name
'JSON_RECEIVER'
[info] - should result in starting FeyWatchService Thread
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to FeyCore
[info] - should result in creating an Orchestration child actor with the
name 'TEST-ACTOR'
[info] - should result in creating an Ensemble child actor with the name
'TEST-ACTOR/MY-ENSEMBLE-0001'
[info] - should result in creating an Ensemble child actor with the name
'TEST-ACTOR/MY-ENSEMBLE-0002'
[info] - should result in creating a Performer child actor with the name
'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
[info] - should result in creating a Performer child actor with the name
'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
[info] - should result in new entry to FEY_CACHE.activeOrchestrations with
key 'TEST-ACTOR'
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to FeyCore
[info] - should result in creating a new Performer child actor with the
name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
DELETE ensemble to FeyCore
[info] - should result in termination of Ensemble with the name
'TEST-ACTOR/MY-ENSEMBLE-0001'
[info] - should result in termination of Performer with the name
'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
[info] - should result in termination of Performer with the name
'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
same Timestamp to FeyCore
[info] - should result in logging a 'not recreated' message at Warn
[info] Sending FeyCore.JSON_TREE to FeyCore
[info] - should result in logging a 6 path messages at Info
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to FeyCore
[info] - should result in termination of Orchestration with the name
'TEST-ACTOR'
[info] - should result in sending TERMINATE message to Monitor actor
[info] - should result in termination of Ensemble with the name
'TEST-ACTOR/MY-ENSEMBLE-0002'
[info] - should result in termination of Performer with the name
'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
[info] - should result in removing key 'TEST-ACTOR' at
FEY_CACHE.activeOrchestrations
[info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
[info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
[info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
(213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
[info] - should result in sending Terminate message to Monitor actor ***
FAILED ***
[info]   java.lang.AssertionError: assertion failed: timeout (1 second)
during expectMsgClass waiting for class
org.apache.iota.fey.Monitor$TERMINATE
[info]   at scala.Predef$.assert(Predef.scala:170)
[info]   at
akka.testkit.TestKitBase$class.expectMsgClass_internal(TestKit.scala:435)
[info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:431)
[info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
[info]   at
org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
[info]   at
org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
[info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
[info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
[info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
[info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
[info]   ...
[info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED
***
[info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
(213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
was not empty (FeyCoreSpec.scala:153)
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
FeyCore of a GenericReceiverActor
[info] - should result in creating an Orchestration child actor with the
name 'RECEIVER_ORCHESTRATION'
[info] - should result in creating an Ensemble child actor with the name
'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
[info] - should result in creating a Performer child actor with the name
'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
[info] - should result in new entry to FEY_CACHE.activeOrchestrations with
key 'RECEIVER_ORCHESTRATION'
[info] Sending PROCESS message to the Receiver Performer
[info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
[info] - should result in creating an Orchestration child actor with the
name 'RECEIVED-BY-ACTOR-RECEIVER'
[info] - should result in creating an Ensemble child actor with the name
'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
[info] - should result in creating an Ensemble child actor with the name
'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
[info] - should result in creating a Performer child actor with the name
'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
[info] - should result in creating a Performer child actor with the name
'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
[info] - should result in one new entry to FEY_CACHE.activeOrchestrations
with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
[info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
"RECEIVED-BY-ACTOR-RECEIVER" ->
(213263914979,Actor[akka://FEY-MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
"TEST-ORCH-2" ->
(213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
"RECEIVER_ORCHESTRATION" ->
(591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299]))
had size 4 instead of expected size 2 (FeyCoreSpec.scala:200)
[info] Sending PROCESS message to the Receiver Performer with command DELETE
[info] - should STOP running orchestration
[info] - should result in one entry in FEY_CACHE.activeOrchestrations ***
FAILED ***
[info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
(213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
"RECEIVER_ORCHESTRATION" ->
(591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299]))
had size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
[info] Sending PROCESS message to Receiver with checkpoint enabled
[info] - should Save received JSON to checkpoint dir
[info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
performer command to FeyCore
[info] - should result in creating an Orchestration child actor with the
name 'GLOBAL-PERFORMER'
[info] - should result in creating an Ensemble child actor with the name
'GLOBAL-PERFORMER/ENS-GLOBAL'
[info] - should result in creating a global Performer child actor with the
name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
[info] - should result in creating a Performer child actor with the name
'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
[info] - should result in new entry to FEY_CACHE.activeOrchestrations with
key 'GLOBAL-PERFORMER'
[info] - should result in one global actor created for orchestration
[info] - should result in globa metadata add to table
[info] - should result in right running actors
[info] Stopping Global actor
[ERROR] [02/19/2017 00:36:09.279]
[FEY-TEST-akka.actor.default-dispatcher-3]
[akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
GLOBAL-TEST
org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
GLOBAL-TEST
        at
org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
        at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
        at
org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
        at
akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
        at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
        at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
        at akka.actor.ActorCell.invoke(ActorCell.scala:494)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at
scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at
scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at
scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at
scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

[info] - should result in sending logging error
[info] - should result in orchestration restarted
[info] - should all previous actors restarted
[info] Stopping orchestration with global performer
[info] - should result in sending TERMINATE message to Monitor actor
[info] - should result in no global actors for orchestration
[info] Stopping FeyCore
[info] - should result in sending STOP message to Monitor actor
[info] BaseAkkaSpec:
[info] JsonReceiverSpec:
[info] Executing validJson in JsonReceiver
[info] - should return false when json schema is not right
[info] - should log message to Error
[info] - should return true when Json schema is valid
[info] Executing checkForLocation in JsonReceiver
[info] - should log message at Debug level
[info] - should download jar dynamically from URL
[info] Start a Thread with the JSON receiver
[info] - should Start Thread
[info] - should execute execute() method inside run
[info] Interrupting the receiver Thread
[info] - should Throw Interrupted exception
[info] - should execute exceptionOnRun method
[info] FeyGenericActorSpec:
[info] Creating a GenericActor with Schedule time defined
[info] - should result in scheduler started
[info] - should result in onStart method called
[info] - should result in START message sent to Monitor
[info] - should result in one active actor
[info] Backoff of GenericActor
[info] - should be zero until the first PROCESS message
[info] - should change when first PROCESS message was received
[info] Sending PROCESS message to GenericActor
[info] - should call processMessage method
[info] customReceive method
[info] - should process any non treated message
[info] Sending PROCESS message to GenericActor
[info] - should be discarded when backoff is enabled
[info] - should be processed when backoff has finished
[info] Calling startBackoff
[info] - should set endBackoff with time now
[info] Calling propagateMessage
[info] - should send message to connectTo actors
[info] Scheduler component
[info] - should call execute() method
[info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
[info] - should Throw IllegalArgumentException
[info] - should Result in restart of the actor with sequence of Monitoring:
STOP -> RESTART -> START
[info] - should call onStart method
[info] - should call onRestart method
[info] - should restart scheduler
[info] Sending STOP to GenericActor
[info] - should terminate GenericActor
[info] - should call onStop method
[info] - should cancel scheduler
[info] - should send STOP - TERMINATE message to Monitor
[info] - should result in no active actors
[info] Creating GenericActor with schedule anc backoff equal to zero
[info] - should not start a scheduler
[info] - should result in one active actor
[info] - should result in no discarded PROCESS messages
[info] FeyGenericActorReceiverSpec:
[info] Creating a GenericActor with Schedule time defined
[info] - should result in scheduler started
[info] - should result in onStart method called
[info] - should result in START message sent to Monitor
[info] - should result in one active actor
[info] - should result in normal functioning of GenericActor
[info] Sending PROCESS message to GenericReceiver
[info] - should log message to Warn saying that the JSON could not be
forwarded to FeyCore when JSON is invalid
[info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
processed has a valid schema
[info] - should Download jar from location and send ORCHESTRATION_RECEIVED
to FeyCore when JSON has a location defined
[info] Scheduler component
[info] - should call execute() method
[info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
[info] - should Throw IllegalArgumentException
[info] - should Result in restart of the actor with sequence of Monitoring:
STOP -> RESTART -> START
[info] - should call onStart method
[info] - should call onRestart method
[info] - should restart scheduler
[info] Sending STOP to GenericActor
[info] - should terminate GenericActor
[info] - should call onStop method
[info] - should cancel scheduler
[info] - should send STOP - TERMINATE message to Monitor
[info] - should result in no active actors

CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
[info] Total number of tests run: 243
[info] Suites: completed 12, aborted 0
[info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
[info] *** 5 TESTS FAILED ***
[error] Failed tests:
[error]         org.apache.iota.fey.FeyCoreSpec
[error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
[error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM


-- 
Thanks,

Gunnar
*If you think you can you can, if you think you can't you're right.*

Re: fey-core assembly fails

Posted by Barbara Malta Gomes <ba...@gmail.com>.
Hi Gunnar,

Thank you for letting us know.

I will take some time to make the tests more robust.

Glad to hear that everything worked fine for you.

I tested the test on the latest version of Ubuntu and on the RaspberryPi
and both of them worked fine.

Regards,

On Mon, Feb 20, 2017 at 7:48 AM, Gunnar Tapper <ta...@gmail.com>
wrote:

> Hi,
>
> I spun up an AWS EC2 micro instance and tested building. Beyond a bunch of
> warning, the build worked fine. So, it must be related to using an old PC
> as a at-home Linux server.
>
> Thanks,
>
> Gunnar
>
> On Sun, Feb 19, 2017 at 2:18 PM, Barbara <ba...@gmail.com>
> wrote:
>
>> Hi Gunnar,
>>
>> No, the tests simulates a version of fey. It starts its own actor system.
>>
>> The fey-test-actor.jar is included in fey-core. It is only a performer
>> test used to make sure fey handles its performers in the right way.
>>
>> For now I would proceed removing the tests from assembly so you can
>> generate the executable and proceed with the steps.
>>
>> I will have to do some investigation and see if I figure out why the
>> tests breaks for you.
>>
>> Regards
>>
>> Barbara Gomes
>> +1 (650) 713-6092 <(650)%20713-6092>
>>
>> On Feb 19, 2017, at 11:41 AM, Gunnar Tapper <ta...@gmail.com>
>> wrote:
>>
>> Hi Barbara,
>>
>> The same five tests fail with this change.
>>
>> Doesn't the iota-fey-core.jar file have to be created before running
>> tests?
>>
>> [gunnar@localhost incubator-iota]$ find fey-core/target/scala-2.11 |
>> grep jar
>> fey-core/target/scala-2.11/test-classes/fey-test-actor.jar
>>
>> Thanks,
>>
>> Gunnar
>>
>>
>> On Sun, Feb 19, 2017 at 11:21 AM, Barbara Malta Gomes <
>> barbaramaltagomes@gmail.com> wrote:
>>
>>> Hi Gunnar,
>>>
>>> I have noticed that when *assembly *runs the test, in some cases, some
>>> of the tests fails.
>>>
>>> I will need sometime to investigate why it does not work 100% when
>>> assembly calls it.
>>>
>>> For now, you can run the tests separately:
>>>
>>> >> sbt
>>> >> projetc fey-core
>>> >> test
>>>
>>> and for now add the following line to the fey project in
>>>  project/Build.scala
>>>
>>> test in assembly := {}
>>>
>>>
>>> it should look like:
>>> <Screen Shot 2017-02-19 at 10.18.47 AM.png>
>>>
>>> Please, let me know if that works for you
>>>
>>> Regards
>>>
>>> On Sun, Feb 19, 2017 at 9:17 AM, Barbara Malta Gomes <
>>> barbaramaltagomes@gmail.com> wrote:
>>>
>>>> HI Gunnar,
>>>>
>>>> Thanks for the info.
>>>>
>>>> I will try to reproduce the issue on CentOS.
>>>>
>>>> If you re-run the tests, do you still get the SAME failed tests or it
>>>> fails but in different tests?
>>>>
>>>> Regards
>>>>
>>>> On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <tapper.gunnar@gmail.com
>>>> > wrote:
>>>>
>>>>> Hi Barbara:
>>>>>
>>>>> I'm on an x86 box with:
>>>>>
>>>>> [gunnar@localhost ~]$ lsb_release -a
>>>>> LSB Version:    :base-4.0-ia32:base-4.0-noarc
>>>>> h:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4
>>>>> .0-noarch:printing-4.0-ia32:printing-4.0-noarch
>>>>> Distributor ID: CentOS
>>>>> Description:    CentOS release 6.8 (Final)
>>>>> Release:        6.8
>>>>> Codename:       Final
>>>>>
>>>>> It may be too weak for what's needed here. I can spin up a AWS micro
>>>>> instance once I know what OS to install.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Gunnar
>>>>>
>>>>> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
>>>>> barbaramaltagomes@gmail.com> wrote:
>>>>>
>>>>>> Hi Gunnar,
>>>>>>
>>>>>> Which Operational System are you using?
>>>>>> *sbt *picks the order of the tests execution and it might be the
>>>>>> problem on your machine.
>>>>>>
>>>>>> As you can see in the picture bellow, I pulled the repo from github
>>>>>> and run the tests and all of them succeeded
>>>>>>
>>>>>> [image: Inline image 1]
>>>>>>
>>>>>> I'm using Mac OS
>>>>>>
>>>>>> About the *ERROR *messages during the tests, those are fey logs
>>>>>> caused intentionally by the tests.
>>>>>>
>>>>>> Also, try to run the tests separated:
>>>>>>
>>>>>> >> sbt
>>>>>> >> project fey-core
>>>>>> >> test
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Thanks for pointing this out will take a look.
>>>>>>> -Tony
>>>>>>>
>>>>>>>
>>>>>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I verified the required versions and then I ran assembly of the
>>>>>>> fey-core project. 5 failures.
>>>>>>>
>>>>>>> [info] - should result in creating a global Performer child actor
>>>>>>> with the name 'akka://FEY-TEST/system/CORE-2
>>>>>>> 7/GLOBAL-ORCH/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFO
>>>>>>> RMER-SCHEDULER'
>>>>>>> [info] - should result in one global actor created for orchestration
>>>>>>> [info] - should result in right number of running actors
>>>>>>> [info] Stopping performer inside ensemble
>>>>>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>>>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD
>>>>>>> Performer PERFORMER-SCHEDULER
>>>>>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer
>>>>>>> PERFORMER-SCHEDULER
>>>>>>>         at org.apache.iota.fey.Ensemble$$
>>>>>>> anonfun$receive$1.applyOrElse(Ensemble.scala:60)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.Ensemble.a
>>>>>>> roundReceive(Ensemble.scala:29)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>>> erminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>>> veMessage(ActorCell.scala:511)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>>
>>>>>>> [info] - should Send stop message to monitor
>>>>>>> [info] Stopping ensemble
>>>>>>> [info] - should Send stop message to monitor
>>>>>>> [info] - should result in no orchestration running
>>>>>>> [info] - should not affect global performer
>>>>>>> [info] Stopping global performer
>>>>>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>>>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>>>>>>> GLOBAL-TEST
>>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>>>> GLOBAL-TEST
>>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>>> erminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>>> veMessage(ActorCell.scala:511)
>>>>>>>         at akka.testkit.TestActorRef$$ano
>>>>>>> n$1.autoReceiveMessage(TestActorRef.scala:60)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>>> atcher.process$1(CallingThreadDispatcher.scala:250)
>>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>>> atcher.runQueue(CallingThreadDispatcher.scala:283)
>>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>>> atcher.systemDispatch(CallingThreadDispatcher.scala:191)
>>>>>>>         at akka.actor.dungeon.Dispatch$cl
>>>>>>> ass.sendSystemMessage(Dispatch.scala:147)
>>>>>>>         at akka.actor.ActorCell.sendSyste
>>>>>>> mMessage(ActorCell.scala:374)
>>>>>>>         at akka.actor.LocalActorRef.sendS
>>>>>>> ystemMessage(ActorRef.scala:402)
>>>>>>>         at akka.actor.dungeon.FaultHandli
>>>>>>> ng$class.akka$actor$dungeon$FaultHandling$$finishTerminate(F
>>>>>>> aultHandling.scala:213)
>>>>>>>         at akka.actor.dungeon.FaultHandli
>>>>>>> ng$class.terminate(FaultHandling.scala:172)
>>>>>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>>>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>>>>>         at akka.dispatch.Mailbox.processA
>>>>>>> llSystemMessages(Mailbox.scala:282)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>>
>>>>>>> [info] - should result in restart the orchestration
>>>>>>> [info] - should all previous actors restarted
>>>>>>> [info] Stopping orchestration
>>>>>>> [info] - should result in empty global
>>>>>>> [info] EnsembleSpec:
>>>>>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>>>>>> [info] - should result in creation of Ensemble actor '
>>>>>>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>>>>>> [info] - should result in sending START to monitor actor
>>>>>>> [info] - should result in creation of Performer 'TEST-0004'
>>>>>>> [info] - should result in Empty state variable Ensemble.connectors
>>>>>>> [info] - should result in one entry added to state variable
>>>>>>> Ensemble.performer
>>>>>>> [info] - should result in one right entry to state variable
>>>>>>> Ensemble.performers_metadata
>>>>>>> [info] - should result in two paths added to
>>>>>>> IdentifyFeyActors.actorsPath
>>>>>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>>>>>> [info] - should result in Terminate message of actor 'TEST-0004' and
>>>>>>> throw RestartEnsemble Exception
>>>>>>> [info] - should result in Performer 'TEST-0004' restarted
>>>>>>> [info] - should result in two paths added to
>>>>>>> IdentifyFeyActors.actorsPath
>>>>>>> [info] Sending PoisonPill to Ensemble
>>>>>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>>>>>> [info] - should result in sending TERMINATE to monitor actor
>>>>>>> [info] - should result in termination of ensemble and performer
>>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>>> [info] creating more detailed Ensemble
>>>>>>> [info] - should result in creation of Ensemble actor
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>>> [info] - should create connection PERFORMER-SCHEDULER ->
>>>>>>> PERFORMER-PARAMS
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time
>>>>>>> equal to 200ms
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>>>>>>> 'PERFORMER-PARAMS'
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>>>>>> [info] 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should produce 5 messages in 1 seconds
>>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>>> [info] 'PERFORMER-PARAMS'
>>>>>>> [info] - should process 5 messages in 1 seconds
>>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>>> [info] Stopping any Performer that belongs to the Ensemble
>>>>>>> [info] - should force restart of entire Ensemble
>>>>>>> [info] - should result in sending STOP - RESTART to monitor actor
>>>>>>> [info] - should keep ensemble actorRef when restarted
>>>>>>> [info] - should stop and start the performer with a new reference
>>>>>>> [info] Restarting an Ensemble
>>>>>>> [info] - should Consuming left messages on Process
>>>>>>> [info] - should Cleanup TestProbs
>>>>>>> [info] Redefining TestProbe for performers
>>>>>>> [info] - should start receiving messages
>>>>>>> [info] Sending PoisonPill to detailed Ensemble
>>>>>>> [info] - should result in termination of Ensemble
>>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>>> [info] creating Ensemble with Backoff performer
>>>>>>> [info] - should result in creation of Ensemble actor
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to
>>>>>>> 1 second
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to
>>>>>>> true
>>>>>>> [info] Performer with backoff enabled
>>>>>>> [info] - should not process messages during the backoff period
>>>>>>> [info] Performer with autoScale
>>>>>>> [info] - should result in router and routees created
>>>>>>> [info] IdentifyFeyActorsSpec:
>>>>>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in one path added to
>>>>>>> IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-I
>>>>>>> DENTIFIER'
>>>>>>> [info] Creating a new actor in the system and sending
>>>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in two paths added to
>>>>>>> IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in matching paths
>>>>>>> [info] Stopping previous added actor and sending
>>>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in going back to have just one path added to
>>>>>>> IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-I
>>>>>>> DENTIFIER'
>>>>>>> [info] WatchServiceReceiverSpec:
>>>>>>> [info] Creating WatchServiceReceiver
>>>>>>> [info] - should process initial files in the JSON repository
>>>>>>> [info] Start a Thread with WatchServiceReceiver
>>>>>>> [info] - should Start Thread
>>>>>>> [info] Start watching directory
>>>>>>> [info] - should Starting receiving CREATED event
>>>>>>> [info] - should Starting receiving UPDATE event
>>>>>>> [info] processJson
>>>>>>> [info] - should log to warn level when json has invalid schema
>>>>>>> [info] interrupt watchservice
>>>>>>> [info] - should interrupt thread
>>>>>>> [info] FeyCoreSpec:
>>>>>>> [info] Creating FeyCore
>>>>>>> [info] - should result in creating a child actor with the name
>>>>>>> 'FEY_IDENTIFIER'
>>>>>>> [info] - should result in sending START message to Monitor actor
>>>>>>> [info] Sending FeyCore.START to FeyCore
>>>>>>> [info] - should result in creating a child actor with the name
>>>>>>> 'JSON_RECEIVER'
>>>>>>> [info] - should result in starting FeyWatchService Thread
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>>>> FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>>> the name 'TEST-ACTOR'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>>> [info] - should result in new entry to
>>>>>>> FEY_CACHE.activeOrchestrations with key 'TEST-ACTOR'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>>>>>>> FeyCore
>>>>>>> [info] - should result in creating a new Performer child actor with
>>>>>>> the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command
>>>>>>> and DELETE ensemble to FeyCore
>>>>>>> [info] - should result in termination of Ensemble with the name
>>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>>> [info] - should result in termination of Performer with the name
>>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>>> [info] - should result in termination of Performer with the name
>>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command
>>>>>>> and same Timestamp to FeyCore
>>>>>>> [info] - should result in logging a 'not recreated' message at Warn
>>>>>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>>>>>> [info] - should result in logging a 6 path messages at Info
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>>>>>>> FeyCore
>>>>>>> [info] - should result in termination of Orchestration with the name
>>>>>>> 'TEST-ACTOR'
>>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>>> [info] - should result in termination of Ensemble with the name
>>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>>> [info] - should result in termination of Performer with the name
>>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>>> [info] - should result in removing key 'TEST-ACTOR' at
>>>>>>> FEY_CACHE.activeOrchestrations
>>>>>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>>>>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) had size 2 instead
>>>>>>> of expected size 1 (FeyCoreSpec.scala:144)
>>>>>>> [info] - should result in sending Terminate message to Monitor actor
>>>>>>> *** FAILED ***
>>>>>>> [info]   java.lang.AssertionError: assertion failed: timeout (1
>>>>>>> second) during expectMsgClass waiting for class
>>>>>>> org.apache.iota.fey.Monitor$TERMINATE
>>>>>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>>>> .expectMsgClass_internal(TestKit.scala:435)
>>>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>>>> .expectMsgClass(TestKit.scala:431)
>>>>>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>>> [info]   at org.scalatest.OutcomeOf$class.
>>>>>>> outcomeOf(OutcomeOf.scala:85)
>>>>>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>>>>>> [info]   ...
>>>>>>> [info] - should result in empty FEY_CACHE.activeOrchestrations ***
>>>>>>> FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) was not empty
>>>>>>> (FeyCoreSpec.scala:153)
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>>>> FeyCore of a GenericReceiverActor
>>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>>> the name 'RECEIVER_ORCHESTRATION'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFOR
>>>>>>> MER'
>>>>>>> [info] - should result in new entry to
>>>>>>> FEY_CACHE.activeOrchestrations with key 'RECEIVER_ORCHESTRATION'
>>>>>>> [info] Sending PROCESS message to the Receiver Performer
>>>>>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>>> the name 'RECEIVED-BY-ACTOR-RECEIVER'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>>>>>> [info] - should result in one new entry to
>>>>>>> FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' ***
>>>>>>> FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>>>>>>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#
>>>>>>> 1213682574]), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4
>>>>>>> instead of expected size 2 (FeyCoreSpec.scala:200)
>>>>>>> [info] Sending PROCESS message to the Receiver Performer with
>>>>>>> command DELETE
>>>>>>> [info] - should STOP running orchestration
>>>>>>> [info] - should result in one entry in
>>>>>>> FEY_CACHE.activeOrchestrations *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3
>>>>>>> instead of expected size 1 (FeyCoreSpec.scala:213)
>>>>>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>>>>>> [info] - should Save received JSON to checkpoint dir
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>>>>>>> performer command to FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>>> the name 'GLOBAL-PERFORMER'
>>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>>>>>> [info] - should result in creating a global Performer child actor
>>>>>>> with the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in new entry to
>>>>>>> FEY_CACHE.activeOrchestrations with key 'GLOBAL-PERFORMER'
>>>>>>> [info] - should result in one global actor created for orchestration
>>>>>>> [info] - should result in globa metadata add to table
>>>>>>> [info] - should result in right running actors
>>>>>>> [info] Stopping Global actor
>>>>>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>>>>>>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global
>>>>>>> Performer GLOBAL-TEST
>>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>>>> GLOBAL-TEST
>>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>>> erminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>>> veMessage(ActorCell.scala:511)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>>
>>>>>>> [info] - should result in sending logging error
>>>>>>> [info] - should result in orchestration restarted
>>>>>>> [info] - should all previous actors restarted
>>>>>>> [info] Stopping orchestration with global performer
>>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>>> [info] - should result in no global actors for orchestration
>>>>>>> [info] Stopping FeyCore
>>>>>>> [info] - should result in sending STOP message to Monitor actor
>>>>>>> [info] BaseAkkaSpec:
>>>>>>> [info] JsonReceiverSpec:
>>>>>>> [info] Executing validJson in JsonReceiver
>>>>>>> [info] - should return false when json schema is not right
>>>>>>> [info] - should log message to Error
>>>>>>> [info] - should return true when Json schema is valid
>>>>>>> [info] Executing checkForLocation in JsonReceiver
>>>>>>> [info] - should log message at Debug level
>>>>>>> [info] - should download jar dynamically from URL
>>>>>>> [info] Start a Thread with the JSON receiver
>>>>>>> [info] - should Start Thread
>>>>>>> [info] - should execute execute() method inside run
>>>>>>> [info] Interrupting the receiver Thread
>>>>>>> [info] - should Throw Interrupted exception
>>>>>>> [info] - should execute exceptionOnRun method
>>>>>>> [info] FeyGenericActorSpec:
>>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>>> [info] - should result in scheduler started
>>>>>>> [info] - should result in onStart method called
>>>>>>> [info] - should result in START message sent to Monitor
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] Backoff of GenericActor
>>>>>>> [info] - should be zero until the first PROCESS message
>>>>>>> [info] - should change when first PROCESS message was received
>>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>>> [info] - should call processMessage method
>>>>>>> [info] customReceive method
>>>>>>> [info] - should process any non treated message
>>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>>> [info] - should be discarded when backoff is enabled
>>>>>>> [info] - should be processed when backoff has finished
>>>>>>> [info] Calling startBackoff
>>>>>>> [info] - should set endBackoff with time now
>>>>>>> [info] Calling propagateMessage
>>>>>>> [info] - should send message to connectTo actors
>>>>>>> [info] Scheduler component
>>>>>>> [info] - should call execute() method
>>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>>>> GenericActor
>>>>>>> [info] - should Throw IllegalArgumentException
>>>>>>> [info] - should Result in restart of the actor with sequence of
>>>>>>> Monitoring: STOP -> RESTART -> START
>>>>>>> [info] - should call onStart method
>>>>>>> [info] - should call onRestart method
>>>>>>> [info] - should restart scheduler
>>>>>>> [info] Sending STOP to GenericActor
>>>>>>> [info] - should terminate GenericActor
>>>>>>> [info] - should call onStop method
>>>>>>> [info] - should cancel scheduler
>>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>>> [info] - should result in no active actors
>>>>>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>>>>>> [info] - should not start a scheduler
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] - should result in no discarded PROCESS messages
>>>>>>> [info] FeyGenericActorReceiverSpec:
>>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>>> [info] - should result in scheduler started
>>>>>>> [info] - should result in onStart method called
>>>>>>> [info] - should result in START message sent to Monitor
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] - should result in normal functioning of GenericActor
>>>>>>> [info] Sending PROCESS message to GenericReceiver
>>>>>>> [info] - should log message to Warn saying that the JSON could not
>>>>>>> be forwarded to FeyCore when JSON is invalid
>>>>>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to
>>>>>>> be processed has a valid schema
>>>>>>> [info] - should Download jar from location and send
>>>>>>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>>>>>> [info] Scheduler component
>>>>>>> [info] - should call execute() method
>>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>>>> GenericActor
>>>>>>> [info] - should Throw IllegalArgumentException
>>>>>>> [info] - should Result in restart of the actor with sequence of
>>>>>>> Monitoring: STOP -> RESTART -> START
>>>>>>> [info] - should call onStart method
>>>>>>> [info] - should call onRestart method
>>>>>>> [info] - should restart scheduler
>>>>>>> [info] Sending STOP to GenericActor
>>>>>>> [info] - should terminate GenericActor
>>>>>>> [info] - should call onStop method
>>>>>>> [info] - should cancel scheduler
>>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>>> [info] - should result in no active actors
>>>>>>>
>>>>>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>>>>>> [info] Total number of tests run: 243
>>>>>>> [info] Suites: completed 12, aborted 0
>>>>>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0,
>>>>>>> pending 0
>>>>>>> [info] *** 5 TESTS FAILED ***
>>>>>>> [error] Failed tests:
>>>>>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>>>>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests
>>>>>>> unsuccessful
>>>>>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Thanks,
>>>>>>>
>>>>>>> Gunnar
>>>>>>> *If you think you can you can, if you think you can't you're right.*
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Barbara Gomes
>>>>>> Computer Engineer
>>>>>> San Jose, CA
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thanks,
>>>>>
>>>>> Gunnar
>>>>> *If you think you can you can, if you think you can't you're right.*
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Barbara Gomes
>>>> Computer Engineer
>>>> San Jose, CA
>>>>
>>>
>>>
>>>
>>> --
>>> Barbara Gomes
>>> Computer Engineer
>>> San Jose, CA
>>>
>>
>>
>>
>> --
>> Thanks,
>>
>> Gunnar
>> *If you think you can you can, if you think you can't you're right.*
>>
>>
>
>
> --
> Thanks,
>
> Gunnar
> *If you think you can you can, if you think you can't you're right.*
>



-- 
Barbara Gomes
Computer Engineer
San Jose, CA

Re: fey-core assembly fails

Posted by Gunnar Tapper <ta...@gmail.com>.
Hi,

I spun up an AWS EC2 micro instance and tested building. Beyond a bunch of
warning, the build worked fine. So, it must be related to using an old PC
as a at-home Linux server.

Thanks,

Gunnar

On Sun, Feb 19, 2017 at 2:18 PM, Barbara <ba...@gmail.com>
wrote:

> Hi Gunnar,
>
> No, the tests simulates a version of fey. It starts its own actor system.
>
> The fey-test-actor.jar is included in fey-core. It is only a performer
> test used to make sure fey handles its performers in the right way.
>
> For now I would proceed removing the tests from assembly so you can
> generate the executable and proceed with the steps.
>
> I will have to do some investigation and see if I figure out why the tests
> breaks for you.
>
> Regards
>
> Barbara Gomes
> +1 (650) 713-6092 <(650)%20713-6092>
>
> On Feb 19, 2017, at 11:41 AM, Gunnar Tapper <ta...@gmail.com>
> wrote:
>
> Hi Barbara,
>
> The same five tests fail with this change.
>
> Doesn't the iota-fey-core.jar file have to be created before running
> tests?
>
> [gunnar@localhost incubator-iota]$ find fey-core/target/scala-2.11 | grep
> jar
> fey-core/target/scala-2.11/test-classes/fey-test-actor.jar
>
> Thanks,
>
> Gunnar
>
>
> On Sun, Feb 19, 2017 at 11:21 AM, Barbara Malta Gomes <
> barbaramaltagomes@gmail.com> wrote:
>
>> Hi Gunnar,
>>
>> I have noticed that when *assembly *runs the test, in some cases, some
>> of the tests fails.
>>
>> I will need sometime to investigate why it does not work 100% when
>> assembly calls it.
>>
>> For now, you can run the tests separately:
>>
>> >> sbt
>> >> projetc fey-core
>> >> test
>>
>> and for now add the following line to the fey project in
>>  project/Build.scala
>>
>> test in assembly := {}
>>
>>
>> it should look like:
>> <Screen Shot 2017-02-19 at 10.18.47 AM.png>
>>
>> Please, let me know if that works for you
>>
>> Regards
>>
>> On Sun, Feb 19, 2017 at 9:17 AM, Barbara Malta Gomes <
>> barbaramaltagomes@gmail.com> wrote:
>>
>>> HI Gunnar,
>>>
>>> Thanks for the info.
>>>
>>> I will try to reproduce the issue on CentOS.
>>>
>>> If you re-run the tests, do you still get the SAME failed tests or it
>>> fails but in different tests?
>>>
>>> Regards
>>>
>>> On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <ta...@gmail.com>
>>> wrote:
>>>
>>>> Hi Barbara:
>>>>
>>>> I'm on an x86 box with:
>>>>
>>>> [gunnar@localhost ~]$ lsb_release -a
>>>> LSB Version:    :base-4.0-ia32:base-4.0-noarc
>>>> h:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4
>>>> .0-noarch:printing-4.0-ia32:printing-4.0-noarch
>>>> Distributor ID: CentOS
>>>> Description:    CentOS release 6.8 (Final)
>>>> Release:        6.8
>>>> Codename:       Final
>>>>
>>>> It may be too weak for what's needed here. I can spin up a AWS micro
>>>> instance once I know what OS to install.
>>>>
>>>> Thanks,
>>>>
>>>> Gunnar
>>>>
>>>> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
>>>> barbaramaltagomes@gmail.com> wrote:
>>>>
>>>>> Hi Gunnar,
>>>>>
>>>>> Which Operational System are you using?
>>>>> *sbt *picks the order of the tests execution and it might be the
>>>>> problem on your machine.
>>>>>
>>>>> As you can see in the picture bellow, I pulled the repo from github
>>>>> and run the tests and all of them succeeded
>>>>>
>>>>> [image: Inline image 1]
>>>>>
>>>>> I'm using Mac OS
>>>>>
>>>>> About the *ERROR *messages during the tests, those are fey logs
>>>>> caused intentionally by the tests.
>>>>>
>>>>> Also, try to run the tests separated:
>>>>>
>>>>> >> sbt
>>>>> >> project fey-core
>>>>> >> test
>>>>>
>>>>> Regards,
>>>>>
>>>>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com>
>>>>> wrote:
>>>>>
>>>>>> Thanks for pointing this out will take a look.
>>>>>> -Tony
>>>>>>
>>>>>>
>>>>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I verified the required versions and then I ran assembly of the
>>>>>> fey-core project. 5 failures.
>>>>>>
>>>>>> [info] - should result in creating a global Performer child actor
>>>>>> with the name 'akka://FEY-TEST/system/CORE-2
>>>>>> 7/GLOBAL-ORCH/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFO
>>>>>> RMER-SCHEDULER'
>>>>>> [info] - should result in one global actor created for orchestration
>>>>>> [info] - should result in right number of running actors
>>>>>> [info] Stopping performer inside ensemble
>>>>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD
>>>>>> Performer PERFORMER-SCHEDULER
>>>>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer
>>>>>> PERFORMER-SCHEDULER
>>>>>>         at org.apache.iota.fey.Ensemble$$
>>>>>> anonfun$receive$1.applyOrElse(Ensemble.scala:60)
>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>         at org.apache.iota.fey.Ensemble.a
>>>>>> roundReceive(Ensemble.scala:29)
>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>> erminated(ActorCell.scala:374)
>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>> veMessage(ActorCell.scala:511)
>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>
>>>>>> [info] - should Send stop message to monitor
>>>>>> [info] Stopping ensemble
>>>>>> [info] - should Send stop message to monitor
>>>>>> [info] - should result in no orchestration running
>>>>>> [info] - should not affect global performer
>>>>>> [info] Stopping global performer
>>>>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>>>>>> GLOBAL-TEST
>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>>> GLOBAL-TEST
>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>> erminated(ActorCell.scala:374)
>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>> veMessage(ActorCell.scala:511)
>>>>>>         at akka.testkit.TestActorRef$$ano
>>>>>> n$1.autoReceiveMessage(TestActorRef.scala:60)
>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>> atcher.process$1(CallingThreadDispatcher.scala:250)
>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>> atcher.runQueue(CallingThreadDispatcher.scala:283)
>>>>>>         at akka.testkit.CallingThreadDisp
>>>>>> atcher.systemDispatch(CallingThreadDispatcher.scala:191)
>>>>>>         at akka.actor.dungeon.Dispatch$cl
>>>>>> ass.sendSystemMessage(Dispatch.scala:147)
>>>>>>         at akka.actor.ActorCell.sendSyste
>>>>>> mMessage(ActorCell.scala:374)
>>>>>>         at akka.actor.LocalActorRef.sendS
>>>>>> ystemMessage(ActorRef.scala:402)
>>>>>>         at akka.actor.dungeon.FaultHandli
>>>>>> ng$class.akka$actor$dungeon$FaultHandling$$finishTerminate(F
>>>>>> aultHandling.scala:213)
>>>>>>         at akka.actor.dungeon.FaultHandli
>>>>>> ng$class.terminate(FaultHandling.scala:172)
>>>>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>>>>         at akka.dispatch.Mailbox.processA
>>>>>> llSystemMessages(Mailbox.scala:282)
>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>
>>>>>> [info] - should result in restart the orchestration
>>>>>> [info] - should all previous actors restarted
>>>>>> [info] Stopping orchestration
>>>>>> [info] - should result in empty global
>>>>>> [info] EnsembleSpec:
>>>>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>>>>> [info] - should result in creation of Ensemble actor '
>>>>>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>>>>> [info] - should result in sending START to monitor actor
>>>>>> [info] - should result in creation of Performer 'TEST-0004'
>>>>>> [info] - should result in Empty state variable Ensemble.connectors
>>>>>> [info] - should result in one entry added to state variable
>>>>>> Ensemble.performer
>>>>>> [info] - should result in one right entry to state variable
>>>>>> Ensemble.performers_metadata
>>>>>> [info] - should result in two paths added to
>>>>>> IdentifyFeyActors.actorsPath
>>>>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>>>>> [info] - should result in Terminate message of actor 'TEST-0004' and
>>>>>> throw RestartEnsemble Exception
>>>>>> [info] - should result in Performer 'TEST-0004' restarted
>>>>>> [info] - should result in two paths added to
>>>>>> IdentifyFeyActors.actorsPath
>>>>>> [info] Sending PoisonPill to Ensemble
>>>>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>>>>> [info] - should result in sending TERMINATE to monitor actor
>>>>>> [info] - should result in termination of ensemble and performer
>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>> [info] creating more detailed Ensemble
>>>>>> [info] - should result in creation of Ensemble actor
>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>> [info] - should create connection PERFORMER-SCHEDULER ->
>>>>>> PERFORMER-PARAMS
>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal
>>>>>> to 200ms
>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>>>>>> 'PERFORMER-PARAMS'
>>>>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>>>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>>>>> [info] 'PERFORMER-SCHEDULER'
>>>>>> [info] - should produce 5 messages in 1 seconds
>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>> [info] 'PERFORMER-PARAMS'
>>>>>> [info] - should process 5 messages in 1 seconds
>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>> [info] Stopping any Performer that belongs to the Ensemble
>>>>>> [info] - should force restart of entire Ensemble
>>>>>> [info] - should result in sending STOP - RESTART to monitor actor
>>>>>> [info] - should keep ensemble actorRef when restarted
>>>>>> [info] - should stop and start the performer with a new reference
>>>>>> [info] Restarting an Ensemble
>>>>>> [info] - should Consuming left messages on Process
>>>>>> [info] - should Cleanup TestProbs
>>>>>> [info] Redefining TestProbe for performers
>>>>>> [info] - should start receiving messages
>>>>>> [info] Sending PoisonPill to detailed Ensemble
>>>>>> [info] - should result in termination of Ensemble
>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>> [info] creating Ensemble with Backoff performer
>>>>>> [info] - should result in creation of Ensemble actor
>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to
>>>>>> 1 second
>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to
>>>>>> true
>>>>>> [info] Performer with backoff enabled
>>>>>> [info] - should not process messages during the backoff period
>>>>>> [info] Performer with autoScale
>>>>>> [info] - should result in router and routees created
>>>>>> [info] IdentifyFeyActorsSpec:
>>>>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>> [info] - should result in one path added to
>>>>>> IdentifyFeyActors.actorsPath
>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-I
>>>>>> DENTIFIER'
>>>>>> [info] Creating a new actor in the system and sending
>>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>> [info] - should result in two paths added to
>>>>>> IdentifyFeyActors.actorsPath
>>>>>> [info] - should result in matching paths
>>>>>> [info] Stopping previous added actor and sending
>>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>> [info] - should result in going back to have just one path added to
>>>>>> IdentifyFeyActors.actorsPath
>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-I
>>>>>> DENTIFIER'
>>>>>> [info] WatchServiceReceiverSpec:
>>>>>> [info] Creating WatchServiceReceiver
>>>>>> [info] - should process initial files in the JSON repository
>>>>>> [info] Start a Thread with WatchServiceReceiver
>>>>>> [info] - should Start Thread
>>>>>> [info] Start watching directory
>>>>>> [info] - should Starting receiving CREATED event
>>>>>> [info] - should Starting receiving UPDATE event
>>>>>> [info] processJson
>>>>>> [info] - should log to warn level when json has invalid schema
>>>>>> [info] interrupt watchservice
>>>>>> [info] - should interrupt thread
>>>>>> [info] FeyCoreSpec:
>>>>>> [info] Creating FeyCore
>>>>>> [info] - should result in creating a child actor with the name
>>>>>> 'FEY_IDENTIFIER'
>>>>>> [info] - should result in sending START message to Monitor actor
>>>>>> [info] Sending FeyCore.START to FeyCore
>>>>>> [info] - should result in creating a child actor with the name
>>>>>> 'JSON_RECEIVER'
>>>>>> [info] - should result in starting FeyWatchService Thread
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>>> FeyCore
>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>> the name 'TEST-ACTOR'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>>> with key 'TEST-ACTOR'
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>>>>>> FeyCore
>>>>>> [info] - should result in creating a new Performer child actor with
>>>>>> the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>>>>>> DELETE ensemble to FeyCore
>>>>>> [info] - should result in termination of Ensemble with the name
>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>> [info] - should result in termination of Performer with the name
>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>> [info] - should result in termination of Performer with the name
>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command
>>>>>> and same Timestamp to FeyCore
>>>>>> [info] - should result in logging a 'not recreated' message at Warn
>>>>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>>>>> [info] - should result in logging a 6 path messages at Info
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>>>>>> FeyCore
>>>>>> [info] - should result in termination of Orchestration with the name
>>>>>> 'TEST-ACTOR'
>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>> [info] - should result in termination of Ensemble with the name
>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>> [info] - should result in termination of Performer with the name
>>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>> [info] - should result in removing key 'TEST-ACTOR' at
>>>>>> FEY_CACHE.activeOrchestrations
>>>>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>>>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) had size 2 instead of
>>>>>> expected size 1 (FeyCoreSpec.scala:144)
>>>>>> [info] - should result in sending Terminate message to Monitor actor
>>>>>> *** FAILED ***
>>>>>> [info]   java.lang.AssertionError: assertion failed: timeout (1
>>>>>> second) during expectMsgClass waiting for class
>>>>>> org.apache.iota.fey.Monitor$TERMINATE
>>>>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>>> .expectMsgClass_internal(TestKit.scala:435)
>>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>>> .expectMsgClass(TestKit.scala:431)
>>>>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>> [info]   at org.scalatest.OutcomeOf$class.
>>>>>> outcomeOf(OutcomeOf.scala:85)
>>>>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>>>>> [info]   ...
>>>>>> [info] - should result in empty FEY_CACHE.activeOrchestrations ***
>>>>>> FAILED ***
>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) was not empty
>>>>>> (FeyCoreSpec.scala:153)
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>>> FeyCore of a GenericReceiverActor
>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>> the name 'RECEIVER_ORCHESTRATION'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>>> with key 'RECEIVER_ORCHESTRATION'
>>>>>> [info] Sending PROCESS message to the Receiver Performer
>>>>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>> the name 'RECEIVED-BY-ACTOR-RECEIVER'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>>>>> [info] - should result in one new entry to
>>>>>> FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' ***
>>>>>> FAILED ***
>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>>>>>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#
>>>>>> 1213682574]), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4
>>>>>> instead of expected size 2 (FeyCoreSpec.scala:200)
>>>>>> [info] Sending PROCESS message to the Receiver Performer with command
>>>>>> DELETE
>>>>>> [info] - should STOP running orchestration
>>>>>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations
>>>>>> *** FAILED ***
>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3
>>>>>> instead of expected size 1 (FeyCoreSpec.scala:213)
>>>>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>>>>> [info] - should Save received JSON to checkpoint dir
>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>>>>>> performer command to FeyCore
>>>>>> [info] - should result in creating an Orchestration child actor with
>>>>>> the name 'GLOBAL-PERFORMER'
>>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>>>>> [info] - should result in creating a global Performer child actor
>>>>>> with the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>> [info] - should result in creating a Performer child actor with the
>>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>>> with key 'GLOBAL-PERFORMER'
>>>>>> [info] - should result in one global actor created for orchestration
>>>>>> [info] - should result in globa metadata add to table
>>>>>> [info] - should result in right running actors
>>>>>> [info] Stopping Global actor
>>>>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>>>>>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global
>>>>>> Performer GLOBAL-TEST
>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>>> GLOBAL-TEST
>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>>         at akka.actor.ActorCell.receivedT
>>>>>> erminated(ActorCell.scala:374)
>>>>>>         at akka.actor.ActorCell.autoRecei
>>>>>> veMessage(ActorCell.scala:511)
>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>         at scala.concurrent.forkjoin.Fork
>>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>
>>>>>> [info] - should result in sending logging error
>>>>>> [info] - should result in orchestration restarted
>>>>>> [info] - should all previous actors restarted
>>>>>> [info] Stopping orchestration with global performer
>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>> [info] - should result in no global actors for orchestration
>>>>>> [info] Stopping FeyCore
>>>>>> [info] - should result in sending STOP message to Monitor actor
>>>>>> [info] BaseAkkaSpec:
>>>>>> [info] JsonReceiverSpec:
>>>>>> [info] Executing validJson in JsonReceiver
>>>>>> [info] - should return false when json schema is not right
>>>>>> [info] - should log message to Error
>>>>>> [info] - should return true when Json schema is valid
>>>>>> [info] Executing checkForLocation in JsonReceiver
>>>>>> [info] - should log message at Debug level
>>>>>> [info] - should download jar dynamically from URL
>>>>>> [info] Start a Thread with the JSON receiver
>>>>>> [info] - should Start Thread
>>>>>> [info] - should execute execute() method inside run
>>>>>> [info] Interrupting the receiver Thread
>>>>>> [info] - should Throw Interrupted exception
>>>>>> [info] - should execute exceptionOnRun method
>>>>>> [info] FeyGenericActorSpec:
>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>> [info] - should result in scheduler started
>>>>>> [info] - should result in onStart method called
>>>>>> [info] - should result in START message sent to Monitor
>>>>>> [info] - should result in one active actor
>>>>>> [info] Backoff of GenericActor
>>>>>> [info] - should be zero until the first PROCESS message
>>>>>> [info] - should change when first PROCESS message was received
>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>> [info] - should call processMessage method
>>>>>> [info] customReceive method
>>>>>> [info] - should process any non treated message
>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>> [info] - should be discarded when backoff is enabled
>>>>>> [info] - should be processed when backoff has finished
>>>>>> [info] Calling startBackoff
>>>>>> [info] - should set endBackoff with time now
>>>>>> [info] Calling propagateMessage
>>>>>> [info] - should send message to connectTo actors
>>>>>> [info] Scheduler component
>>>>>> [info] - should call execute() method
>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>>> GenericActor
>>>>>> [info] - should Throw IllegalArgumentException
>>>>>> [info] - should Result in restart of the actor with sequence of
>>>>>> Monitoring: STOP -> RESTART -> START
>>>>>> [info] - should call onStart method
>>>>>> [info] - should call onRestart method
>>>>>> [info] - should restart scheduler
>>>>>> [info] Sending STOP to GenericActor
>>>>>> [info] - should terminate GenericActor
>>>>>> [info] - should call onStop method
>>>>>> [info] - should cancel scheduler
>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>> [info] - should result in no active actors
>>>>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>>>>> [info] - should not start a scheduler
>>>>>> [info] - should result in one active actor
>>>>>> [info] - should result in no discarded PROCESS messages
>>>>>> [info] FeyGenericActorReceiverSpec:
>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>> [info] - should result in scheduler started
>>>>>> [info] - should result in onStart method called
>>>>>> [info] - should result in START message sent to Monitor
>>>>>> [info] - should result in one active actor
>>>>>> [info] - should result in normal functioning of GenericActor
>>>>>> [info] Sending PROCESS message to GenericReceiver
>>>>>> [info] - should log message to Warn saying that the JSON could not be
>>>>>> forwarded to FeyCore when JSON is invalid
>>>>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to
>>>>>> be processed has a valid schema
>>>>>> [info] - should Download jar from location and send
>>>>>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>>>>> [info] Scheduler component
>>>>>> [info] - should call execute() method
>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>>> GenericActor
>>>>>> [info] - should Throw IllegalArgumentException
>>>>>> [info] - should Result in restart of the actor with sequence of
>>>>>> Monitoring: STOP -> RESTART -> START
>>>>>> [info] - should call onStart method
>>>>>> [info] - should call onRestart method
>>>>>> [info] - should restart scheduler
>>>>>> [info] Sending STOP to GenericActor
>>>>>> [info] - should terminate GenericActor
>>>>>> [info] - should call onStop method
>>>>>> [info] - should cancel scheduler
>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>> [info] - should result in no active actors
>>>>>>
>>>>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>>>>> [info] Total number of tests run: 243
>>>>>> [info] Suites: completed 12, aborted 0
>>>>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending
>>>>>> 0
>>>>>> [info] *** 5 TESTS FAILED ***
>>>>>> [error] Failed tests:
>>>>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>>>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests
>>>>>> unsuccessful
>>>>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Thanks,
>>>>>>
>>>>>> Gunnar
>>>>>> *If you think you can you can, if you think you can't you're right.*
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Barbara Gomes
>>>>> Computer Engineer
>>>>> San Jose, CA
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Thanks,
>>>>
>>>> Gunnar
>>>> *If you think you can you can, if you think you can't you're right.*
>>>>
>>>
>>>
>>>
>>> --
>>> Barbara Gomes
>>> Computer Engineer
>>> San Jose, CA
>>>
>>
>>
>>
>> --
>> Barbara Gomes
>> Computer Engineer
>> San Jose, CA
>>
>
>
>
> --
> Thanks,
>
> Gunnar
> *If you think you can you can, if you think you can't you're right.*
>
>


-- 
Thanks,

Gunnar
*If you think you can you can, if you think you can't you're right.*

Re: fey-core assembly fails

Posted by Barbara <ba...@gmail.com>.
Hi Gunnar,

No, the tests simulates a version of fey. It starts its own actor system.

The fey-test-actor.jar is included in fey-core. It is only a performer test used to make sure fey handles its performers in the right way.

For now I would proceed removing the tests from assembly so you can generate the executable and proceed with the steps.

I will have to do some investigation and see if I figure out why the tests breaks for you.

Regards

Barbara Gomes
+1 (650) 713-6092

> On Feb 19, 2017, at 11:41 AM, Gunnar Tapper <ta...@gmail.com> wrote:
> 
> Hi Barbara,
> 
> The same five tests fail with this change.
> 
> Doesn't the iota-fey-core.jar file have to be created before running tests?
> 
> [gunnar@localhost incubator-iota]$ find fey-core/target/scala-2.11 | grep jar
> fey-core/target/scala-2.11/test-classes/fey-test-actor.jar
> 
> Thanks,
> 
> Gunnar
> 
> 
>> On Sun, Feb 19, 2017 at 11:21 AM, Barbara Malta Gomes <ba...@gmail.com> wrote:
>> Hi Gunnar,
>> 
>> I have noticed that when assembly runs the test, in some cases, some of the tests fails.
>> 
>> I will need sometime to investigate why it does not work 100% when assembly calls it.
>> 
>> For now, you can run the tests separately:
>> 
>> >> sbt
>> >> projetc fey-core
>> >> test
>> 
>> and for now add the following line to the fey project in  project/Build.scala
>> 
>> test in assembly := {}
>> 
>> it should look like:
>> <Screen Shot 2017-02-19 at 10.18.47 AM.png>
>> 
>> Please, let me know if that works for you
>> 
>> Regards
>> 
>>> On Sun, Feb 19, 2017 at 9:17 AM, Barbara Malta Gomes <ba...@gmail.com> wrote:
>>> HI Gunnar, 
>>> 
>>> Thanks for the info.
>>> 
>>> I will try to reproduce the issue on CentOS.
>>> 
>>> If you re-run the tests, do you still get the SAME failed tests or it fails but in different tests?
>>> 
>>> Regards
>>> 
>>>> On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <ta...@gmail.com> wrote:
>>>> Hi Barbara:
>>>> 
>>>> I'm on an x86 box with:
>>>> 
>>>> [gunnar@localhost ~]$ lsb_release -a
>>>> LSB Version:    :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
>>>> Distributor ID: CentOS
>>>> Description:    CentOS release 6.8 (Final)
>>>> Release:        6.8
>>>> Codename:       Final
>>>> 
>>>> It may be too weak for what's needed here. I can spin up a AWS micro instance once I know what OS to install.
>>>> 
>>>> Thanks,
>>>> 
>>>> Gunnar
>>>> 
>>>>> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <ba...@gmail.com> wrote:
>>>>> Hi Gunnar,
>>>>> 
>>>>> Which Operational System are you using?
>>>>> sbt picks the order of the tests execution and it might be the problem on your machine.
>>>>> 
>>>>> As you can see in the picture bellow, I pulled the repo from github and run the tests and all of them succeeded
>>>>> 
>>>>> 
>>>>> 
>>>>> I'm using Mac OS
>>>>> 
>>>>> About the ERROR messages during the tests, those are fey logs caused intentionally by the tests.
>>>>> 
>>>>> Also, try to run the tests separated:
>>>>> 
>>>>> >> sbt
>>>>> >> project fey-core
>>>>> >> test
>>>>> 
>>>>> Regards,
>>>>> 
>>>>>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:
>>>>>> Thanks for pointing this out will take a look.
>>>>>> -Tony
>>>>>> 
>>>>>> 
>>>>>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com> wrote:
>>>>>>> 
>>>>>>> Hi,
>>>>>>> 
>>>>>>> I verified the required versions and then I ran assembly of the fey-core project. 5 failures. 
>>>>>>> 
>>>>>>> [info] - should result in creating a global Performer child actor with the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in one global actor created for orchestration
>>>>>>> [info] - should result in right number of running actors
>>>>>>> [info] Stopping performer inside ensemble
>>>>>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8] [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer PERFORMER-SCHEDULER
>>>>>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>>>>>>>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(Ensemble.scala:60)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>> 
>>>>>>> [info] - should Send stop message to monitor
>>>>>>> [info] Stopping ensemble
>>>>>>> [info] - should Send stop message to monitor
>>>>>>> [info] - should result in no orchestration running
>>>>>>> [info] - should not affect global performer
>>>>>>> [info] Stopping global performer
>>>>>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7] [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer GLOBAL-TEST
>>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer GLOBAL-TEST
>>>>>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>>>>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestActorRef.scala:60)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThreadDispatcher.scala:250)
>>>>>>>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadDispatcher.scala:283)
>>>>>>>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingThreadDispatcher.scala:191)
>>>>>>>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch.scala:147)
>>>>>>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>>>>>>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
>>>>>>>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:213)
>>>>>>>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandling.scala:172)
>>>>>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>>>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>>>>>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>> 
>>>>>>> [info] - should result in restart the orchestration
>>>>>>> [info] - should all previous actors restarted
>>>>>>> [info] Stopping orchestration
>>>>>>> [info] - should result in empty global
>>>>>>> [info] EnsembleSpec:
>>>>>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>>>>>> [info] - should result in creation of Ensemble actor 'akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>>>>>> [info] - should result in sending START to monitor actor
>>>>>>> [info] - should result in creation of Performer 'TEST-0004'
>>>>>>> [info] - should result in Empty state variable Ensemble.connectors
>>>>>>> [info] - should result in one entry added to state variable Ensemble.performer
>>>>>>> [info] - should result in one right entry to state variable Ensemble.performers_metadata
>>>>>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>>>>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>>>>>> [info] - should result in Terminate message of actor 'TEST-0004' and throw RestartEnsemble Exception
>>>>>>> [info] - should result in Performer 'TEST-0004' restarted
>>>>>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>>>>>> [info] Sending PoisonPill to Ensemble
>>>>>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>>>>>> [info] - should result in sending TERMINATE to monitor actor
>>>>>>> [info] - should result in termination of ensemble and performer
>>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>>> [info] creating more detailed Ensemble
>>>>>>> [info] - should result in creation of Ensemble actor
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>>> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to 200ms
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to 'PERFORMER-PARAMS'
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>>>>>> [info] 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should produce 5 messages in 1 seconds
>>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>>> [info] 'PERFORMER-PARAMS'
>>>>>>> [info] - should process 5 messages in 1 seconds
>>>>>>> [info] - should produce 10 messages in 2 seconds
>>>>>>> [info] Stopping any Performer that belongs to the Ensemble
>>>>>>> [info] - should force restart of entire Ensemble
>>>>>>> [info] - should result in sending STOP - RESTART to monitor actor
>>>>>>> [info] - should keep ensemble actorRef when restarted
>>>>>>> [info] - should stop and start the performer with a new reference
>>>>>>> [info] Restarting an Ensemble
>>>>>>> [info] - should Consuming left messages on Process
>>>>>>> [info] - should Cleanup TestProbs
>>>>>>> [info] Redefining TestProbe for performers
>>>>>>> [info] - should start receiving messages
>>>>>>> [info] Sending PoisonPill to detailed Ensemble
>>>>>>> [info] - should result in termination of Ensemble
>>>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>>>> [info] creating Ensemble with Backoff performer
>>>>>>> [info] - should result in creation of Ensemble actor
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1 second
>>>>>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
>>>>>>> [info] Performer with backoff enabled
>>>>>>> [info] - should not process messages during the backoff period
>>>>>>> [info] Performer with autoScale
>>>>>>> [info] - should result in router and routees created
>>>>>>> [info] IdentifyFeyActorsSpec:
>>>>>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in one path added to IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>>>>>> [info] Creating a new actor in the system and sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in matching paths
>>>>>>> [info] Stopping previous added actor and sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>>>> [info] - should result in going back to have just one path added to IdentifyFeyActors.actorsPath
>>>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>>>>>> [info] WatchServiceReceiverSpec:
>>>>>>> [info] Creating WatchServiceReceiver
>>>>>>> [info] - should process initial files in the JSON repository
>>>>>>> [info] Start a Thread with WatchServiceReceiver
>>>>>>> [info] - should Start Thread
>>>>>>> [info] Start watching directory
>>>>>>> [info] - should Starting receiving CREATED event
>>>>>>> [info] - should Starting receiving UPDATE event
>>>>>>> [info] processJson
>>>>>>> [info] - should log to warn level when json has invalid schema
>>>>>>> [info] interrupt watchservice
>>>>>>> [info] - should interrupt thread
>>>>>>> [info] FeyCoreSpec:
>>>>>>> [info] Creating FeyCore
>>>>>>> [info] - should result in creating a child actor with the name 'FEY_IDENTIFIER'
>>>>>>> [info] - should result in sending START message to Monitor actor
>>>>>>> [info] Sending FeyCore.START to FeyCore
>>>>>>> [info] - should result in creating a child actor with the name 'JSON_RECEIVER'
>>>>>>> [info] - should result in starting FeyWatchService Thread
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with the name 'TEST-ACTOR'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'TEST-ACTOR'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to FeyCore
>>>>>>> [info] - should result in creating a new Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and DELETE ensemble to FeyCore
>>>>>>> [info] - should result in termination of Ensemble with the name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>>>> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>>>> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and same Timestamp to FeyCore
>>>>>>> [info] - should result in logging a 'not recreated' message at Warn
>>>>>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>>>>>> [info] - should result in logging a 6 path messages at Info
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to FeyCore
>>>>>>> [info] - should result in termination of Orchestration with the name 'TEST-ACTOR'
>>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>>> [info] - should result in termination of Ensemble with the name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>>>> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>>>> [info] - should result in removing key 'TEST-ACTOR' at FEY_CACHE.activeOrchestrations
>>>>>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>>>>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
>>>>>>> [info] - should result in sending Terminate message to Monitor actor *** FAILED ***
>>>>>>> [info]   java.lang.AssertionError: assertion failed: timeout (1 second) during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TERMINATE
>>>>>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>>>>>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(TestKit.scala:435)
>>>>>>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:431)
>>>>>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>>>> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>>>>>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>>>>>> [info]   ...
>>>>>>> [info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) was not empty (FeyCoreSpec.scala:153)
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to FeyCore of a GenericReceiverActor
>>>>>>> [info] - should result in creating an Orchestration child actor with the name 'RECEIVER_ORCHESTRATION'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'RECEIVER_ORCHESTRATION'
>>>>>>> [info] Sending PROCESS message to the Receiver Performer
>>>>>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>>>>>> [info] - should result in one new entry to FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY-MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4 instead of expected size 2 (FeyCoreSpec.scala:200)
>>>>>>> [info] Sending PROCESS message to the Receiver Performer with command DELETE
>>>>>>> [info] - should STOP running orchestration
>>>>>>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations *** FAILED ***
>>>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
>>>>>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>>>>>> [info] - should Save received JSON to checkpoint dir
>>>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL performer command to FeyCore
>>>>>>> [info] - should result in creating an Orchestration child actor with the name 'GLOBAL-PERFORMER'
>>>>>>> [info] - should result in creating an Ensemble child actor with the name 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>>>>>> [info] - should result in creating a global Performer child actor with the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>>>> [info] - should result in creating a Performer child actor with the name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'GLOBAL-PERFORMER'
>>>>>>> [info] - should result in one global actor created for orchestration
>>>>>>> [info] - should result in globa metadata add to table
>>>>>>> [info] - should result in right running actors
>>>>>>> [info] Stopping Global actor
>>>>>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3] [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer GLOBAL-TEST
>>>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer GLOBAL-TEST
>>>>>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
>>>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>>>>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>>> 
>>>>>>> [info] - should result in sending logging error
>>>>>>> [info] - should result in orchestration restarted
>>>>>>> [info] - should all previous actors restarted
>>>>>>> [info] Stopping orchestration with global performer
>>>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>>>> [info] - should result in no global actors for orchestration
>>>>>>> [info] Stopping FeyCore
>>>>>>> [info] - should result in sending STOP message to Monitor actor
>>>>>>> [info] BaseAkkaSpec:
>>>>>>> [info] JsonReceiverSpec:
>>>>>>> [info] Executing validJson in JsonReceiver
>>>>>>> [info] - should return false when json schema is not right
>>>>>>> [info] - should log message to Error
>>>>>>> [info] - should return true when Json schema is valid
>>>>>>> [info] Executing checkForLocation in JsonReceiver
>>>>>>> [info] - should log message at Debug level
>>>>>>> [info] - should download jar dynamically from URL
>>>>>>> [info] Start a Thread with the JSON receiver
>>>>>>> [info] - should Start Thread
>>>>>>> [info] - should execute execute() method inside run
>>>>>>> [info] Interrupting the receiver Thread
>>>>>>> [info] - should Throw Interrupted exception
>>>>>>> [info] - should execute exceptionOnRun method
>>>>>>> [info] FeyGenericActorSpec:
>>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>>> [info] - should result in scheduler started
>>>>>>> [info] - should result in onStart method called
>>>>>>> [info] - should result in START message sent to Monitor
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] Backoff of GenericActor
>>>>>>> [info] - should be zero until the first PROCESS message
>>>>>>> [info] - should change when first PROCESS message was received
>>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>>> [info] - should call processMessage method
>>>>>>> [info] customReceive method
>>>>>>> [info] - should process any non treated message
>>>>>>> [info] Sending PROCESS message to GenericActor
>>>>>>> [info] - should be discarded when backoff is enabled
>>>>>>> [info] - should be processed when backoff has finished
>>>>>>> [info] Calling startBackoff
>>>>>>> [info] - should set endBackoff with time now
>>>>>>> [info] Calling propagateMessage
>>>>>>> [info] - should send message to connectTo actors
>>>>>>> [info] Scheduler component
>>>>>>> [info] - should call execute() method
>>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
>>>>>>> [info] - should Throw IllegalArgumentException
>>>>>>> [info] - should Result in restart of the actor with sequence of Monitoring: STOP -> RESTART -> START
>>>>>>> [info] - should call onStart method
>>>>>>> [info] - should call onRestart method
>>>>>>> [info] - should restart scheduler
>>>>>>> [info] Sending STOP to GenericActor
>>>>>>> [info] - should terminate GenericActor
>>>>>>> [info] - should call onStop method
>>>>>>> [info] - should cancel scheduler
>>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>>> [info] - should result in no active actors
>>>>>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>>>>>> [info] - should not start a scheduler
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] - should result in no discarded PROCESS messages
>>>>>>> [info] FeyGenericActorReceiverSpec:
>>>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>>>> [info] - should result in scheduler started
>>>>>>> [info] - should result in onStart method called
>>>>>>> [info] - should result in START message sent to Monitor
>>>>>>> [info] - should result in one active actor
>>>>>>> [info] - should result in normal functioning of GenericActor
>>>>>>> [info] Sending PROCESS message to GenericReceiver
>>>>>>> [info] - should log message to Warn saying that the JSON could not be forwarded to FeyCore when JSON is invalid
>>>>>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be processed has a valid schema
>>>>>>> [info] - should Download jar from location and send ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>>>>>> [info] Scheduler component
>>>>>>> [info] - should call execute() method
>>>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
>>>>>>> [info] - should Throw IllegalArgumentException
>>>>>>> [info] - should Result in restart of the actor with sequence of Monitoring: STOP -> RESTART -> START
>>>>>>> [info] - should call onStart method
>>>>>>> [info] - should call onRestart method
>>>>>>> [info] - should restart scheduler
>>>>>>> [info] Sending STOP to GenericActor
>>>>>>> [info] - should terminate GenericActor
>>>>>>> [info] - should call onStop method
>>>>>>> [info] - should cancel scheduler
>>>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>>>> [info] - should result in no active actors
>>>>>>> 
>>>>>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>>>>>> [info] Total number of tests run: 243
>>>>>>> [info] Suites: completed 12, aborted 0
>>>>>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>>>>>>> [info] *** 5 TESTS FAILED ***
>>>>>>> [error] Failed tests:
>>>>>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>>>>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
>>>>>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>> Thanks,
>>>>>>> 
>>>>>>> Gunnar
>>>>>>> If you think you can you can, if you think you can't you're right.
>>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> Barbara Gomes
>>>>> Computer Engineer
>>>>> San Jose, CA
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Thanks,
>>>> 
>>>> Gunnar
>>>> If you think you can you can, if you think you can't you're right.
>>> 
>>> 
>>> 
>>> -- 
>>> Barbara Gomes
>>> Computer Engineer
>>> San Jose, CA
>> 
>> 
>> 
>> -- 
>> Barbara Gomes
>> Computer Engineer
>> San Jose, CA
> 
> 
> 
> -- 
> Thanks,
> 
> Gunnar
> If you think you can you can, if you think you can't you're right.

Re: fey-core assembly fails

Posted by Gunnar Tapper <ta...@gmail.com>.
Hi Barbara,

The same five tests fail with this change.

Doesn't the iota-fey-core.jar file have to be created before running tests?

[gunnar@localhost incubator-iota]$ find fey-core/target/scala-2.11 | grep
jar
fey-core/target/scala-2.11/test-classes/fey-test-actor.jar

Thanks,

Gunnar


On Sun, Feb 19, 2017 at 11:21 AM, Barbara Malta Gomes <
barbaramaltagomes@gmail.com> wrote:

> Hi Gunnar,
>
> I have noticed that when *assembly *runs the test, in some cases, some of
> the tests fails.
>
> I will need sometime to investigate why it does not work 100% when
> assembly calls it.
>
> For now, you can run the tests separately:
>
> >> sbt
> >> projetc fey-core
> >> test
>
> and for now add the following line to the fey project in
>  project/Build.scala
>
> test in assembly := {}
>
>
> it should look like:
> [image: Inline image 1]
>
> Please, let me know if that works for you
>
> Regards
>
> On Sun, Feb 19, 2017 at 9:17 AM, Barbara Malta Gomes <
> barbaramaltagomes@gmail.com> wrote:
>
>> HI Gunnar,
>>
>> Thanks for the info.
>>
>> I will try to reproduce the issue on CentOS.
>>
>> If you re-run the tests, do you still get the SAME failed tests or it
>> fails but in different tests?
>>
>> Regards
>>
>> On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <ta...@gmail.com>
>> wrote:
>>
>>> Hi Barbara:
>>>
>>> I'm on an x86 box with:
>>>
>>> [gunnar@localhost ~]$ lsb_release -a
>>> LSB Version:    :base-4.0-ia32:base-4.0-noarc
>>> h:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4
>>> .0-noarch:printing-4.0-ia32:printing-4.0-noarch
>>> Distributor ID: CentOS
>>> Description:    CentOS release 6.8 (Final)
>>> Release:        6.8
>>> Codename:       Final
>>>
>>> It may be too weak for what's needed here. I can spin up a AWS micro
>>> instance once I know what OS to install.
>>>
>>> Thanks,
>>>
>>> Gunnar
>>>
>>> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
>>> barbaramaltagomes@gmail.com> wrote:
>>>
>>>> Hi Gunnar,
>>>>
>>>> Which Operational System are you using?
>>>> *sbt *picks the order of the tests execution and it might be the
>>>> problem on your machine.
>>>>
>>>> As you can see in the picture bellow, I pulled the repo from github and
>>>> run the tests and all of them succeeded
>>>>
>>>> [image: Inline image 1]
>>>>
>>>> I'm using Mac OS
>>>>
>>>> About the *ERROR *messages during the tests, those are fey logs caused
>>>> intentionally by the tests.
>>>>
>>>> Also, try to run the tests separated:
>>>>
>>>> >> sbt
>>>> >> project fey-core
>>>> >> test
>>>>
>>>> Regards,
>>>>
>>>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com>
>>>> wrote:
>>>>
>>>>> Thanks for pointing this out will take a look.
>>>>> -Tony
>>>>>
>>>>>
>>>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>>>>> wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> I verified the required versions and then I ran assembly of the
>>>>> fey-core project. 5 failures.
>>>>>
>>>>> [info] - should result in creating a global Performer child actor with
>>>>> the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/G
>>>>> LOBAL-TEST'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFO
>>>>> RMER-SCHEDULER'
>>>>> [info] - should result in one global actor created for orchestration
>>>>> [info] - should result in right number of running actors
>>>>> [info] Stopping performer inside ensemble
>>>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD
>>>>> Performer PERFORMER-SCHEDULER
>>>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer
>>>>> PERFORMER-SCHEDULER
>>>>>         at org.apache.iota.fey.Ensemble$$
>>>>> anonfun$receive$1.applyOrElse(Ensemble.scala:60)
>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>         at org.apache.iota.fey.Ensemble.a
>>>>> roundReceive(Ensemble.scala:29)
>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>         at akka.actor.ActorCell.receivedT
>>>>> erminated(ActorCell.scala:374)
>>>>>         at akka.actor.ActorCell.autoRecei
>>>>> veMessage(ActorCell.scala:511)
>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>
>>>>> [info] - should Send stop message to monitor
>>>>> [info] Stopping ensemble
>>>>> [info] - should Send stop message to monitor
>>>>> [info] - should result in no orchestration running
>>>>> [info] - should not affect global performer
>>>>> [info] Stopping global performer
>>>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>>>>> GLOBAL-TEST
>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>> GLOBAL-TEST
>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>         at akka.actor.ActorCell.receivedT
>>>>> erminated(ActorCell.scala:374)
>>>>>         at akka.actor.ActorCell.autoRecei
>>>>> veMessage(ActorCell.scala:511)
>>>>>         at akka.testkit.TestActorRef$$ano
>>>>> n$1.autoReceiveMessage(TestActorRef.scala:60)
>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>         at akka.testkit.CallingThreadDisp
>>>>> atcher.process$1(CallingThreadDispatcher.scala:250)
>>>>>         at akka.testkit.CallingThreadDisp
>>>>> atcher.runQueue(CallingThreadDispatcher.scala:283)
>>>>>         at akka.testkit.CallingThreadDisp
>>>>> atcher.systemDispatch(CallingThreadDispatcher.scala:191)
>>>>>         at akka.actor.dungeon.Dispatch$cl
>>>>> ass.sendSystemMessage(Dispatch.scala:147)
>>>>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>>>>         at akka.actor.LocalActorRef.sendS
>>>>> ystemMessage(ActorRef.scala:402)
>>>>>         at akka.actor.dungeon.FaultHandli
>>>>> ng$class.akka$actor$dungeon$FaultHandling$$finishTerminate(F
>>>>> aultHandling.scala:213)
>>>>>         at akka.actor.dungeon.FaultHandli
>>>>> ng$class.terminate(FaultHandling.scala:172)
>>>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>>>         at akka.dispatch.Mailbox.processA
>>>>> llSystemMessages(Mailbox.scala:282)
>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>
>>>>> [info] - should result in restart the orchestration
>>>>> [info] - should all previous actors restarted
>>>>> [info] Stopping orchestration
>>>>> [info] - should result in empty global
>>>>> [info] EnsembleSpec:
>>>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>>>> [info] - should result in creation of Ensemble actor '
>>>>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>>>> [info] - should result in sending START to monitor actor
>>>>> [info] - should result in creation of Performer 'TEST-0004'
>>>>> [info] - should result in Empty state variable Ensemble.connectors
>>>>> [info] - should result in one entry added to state variable
>>>>> Ensemble.performer
>>>>> [info] - should result in one right entry to state variable
>>>>> Ensemble.performers_metadata
>>>>> [info] - should result in two paths added to
>>>>> IdentifyFeyActors.actorsPath
>>>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>>>> [info] - should result in Terminate message of actor 'TEST-0004' and
>>>>> throw RestartEnsemble Exception
>>>>> [info] - should result in Performer 'TEST-0004' restarted
>>>>> [info] - should result in two paths added to
>>>>> IdentifyFeyActors.actorsPath
>>>>> [info] Sending PoisonPill to Ensemble
>>>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>>>> [info] - should result in sending TERMINATE to monitor actor
>>>>> [info] - should result in termination of ensemble and performer
>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>> [info] creating more detailed Ensemble
>>>>> [info] - should result in creation of Ensemble actor
>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>> [info] - should create connection PERFORMER-SCHEDULER ->
>>>>> PERFORMER-PARAMS
>>>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal
>>>>> to 200ms
>>>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>>>>> 'PERFORMER-PARAMS'
>>>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>>>> [info] 'PERFORMER-SCHEDULER'
>>>>> [info] - should produce 5 messages in 1 seconds
>>>>> [info] - should produce 10 messages in 2 seconds
>>>>> [info] 'PERFORMER-PARAMS'
>>>>> [info] - should process 5 messages in 1 seconds
>>>>> [info] - should produce 10 messages in 2 seconds
>>>>> [info] Stopping any Performer that belongs to the Ensemble
>>>>> [info] - should force restart of entire Ensemble
>>>>> [info] - should result in sending STOP - RESTART to monitor actor
>>>>> [info] - should keep ensemble actorRef when restarted
>>>>> [info] - should stop and start the performer with a new reference
>>>>> [info] Restarting an Ensemble
>>>>> [info] - should Consuming left messages on Process
>>>>> [info] - should Cleanup TestProbs
>>>>> [info] Redefining TestProbe for performers
>>>>> [info] - should start receiving messages
>>>>> [info] Sending PoisonPill to detailed Ensemble
>>>>> [info] - should result in termination of Ensemble
>>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>>> [info] creating Ensemble with Backoff performer
>>>>> [info] - should result in creation of Ensemble actor
>>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
>>>>> second
>>>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to
>>>>> true
>>>>> [info] Performer with backoff enabled
>>>>> [info] - should not process messages during the backoff period
>>>>> [info] Performer with autoScale
>>>>> [info] - should result in router and routees created
>>>>> [info] IdentifyFeyActorsSpec:
>>>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>> [info] - should result in one path added to
>>>>> IdentifyFeyActors.actorsPath
>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER
>>>>> '
>>>>> [info] Creating a new actor in the system and sending
>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>> [info] - should result in two paths added to
>>>>> IdentifyFeyActors.actorsPath
>>>>> [info] - should result in matching paths
>>>>> [info] Stopping previous added actor and sending
>>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>>> [info] - should result in going back to have just one path added to
>>>>> IdentifyFeyActors.actorsPath
>>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER
>>>>> '
>>>>> [info] WatchServiceReceiverSpec:
>>>>> [info] Creating WatchServiceReceiver
>>>>> [info] - should process initial files in the JSON repository
>>>>> [info] Start a Thread with WatchServiceReceiver
>>>>> [info] - should Start Thread
>>>>> [info] Start watching directory
>>>>> [info] - should Starting receiving CREATED event
>>>>> [info] - should Starting receiving UPDATE event
>>>>> [info] processJson
>>>>> [info] - should log to warn level when json has invalid schema
>>>>> [info] interrupt watchservice
>>>>> [info] - should interrupt thread
>>>>> [info] FeyCoreSpec:
>>>>> [info] Creating FeyCore
>>>>> [info] - should result in creating a child actor with the name
>>>>> 'FEY_IDENTIFIER'
>>>>> [info] - should result in sending START message to Monitor actor
>>>>> [info] Sending FeyCore.START to FeyCore
>>>>> [info] - should result in creating a child actor with the name
>>>>> 'JSON_RECEIVER'
>>>>> [info] - should result in starting FeyWatchService Thread
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>> FeyCore
>>>>> [info] - should result in creating an Orchestration child actor with
>>>>> the name 'TEST-ACTOR'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>> with key 'TEST-ACTOR'
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>>>>> FeyCore
>>>>> [info] - should result in creating a new Performer child actor with
>>>>> the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>>>>> DELETE ensemble to FeyCore
>>>>> [info] - should result in termination of Ensemble with the name
>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>>> [info] - should result in termination of Performer with the name
>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>>> [info] - should result in termination of Performer with the name
>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command
>>>>> and same Timestamp to FeyCore
>>>>> [info] - should result in logging a 'not recreated' message at Warn
>>>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>>>> [info] - should result in logging a 6 path messages at Info
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>>>>> FeyCore
>>>>> [info] - should result in termination of Orchestration with the name
>>>>> 'TEST-ACTOR'
>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>> [info] - should result in termination of Ensemble with the name
>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>>> [info] - should result in termination of Performer with the name
>>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>>> [info] - should result in removing key 'TEST-ACTOR' at
>>>>> FEY_CACHE.activeOrchestrations
>>>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>>> 2#-2041630067])) had size 2 instead of expected size 1
>>>>> (FeyCoreSpec.scala:144)
>>>>> [info] - should result in sending Terminate message to Monitor actor
>>>>> *** FAILED ***
>>>>> [info]   java.lang.AssertionError: assertion failed: timeout (1
>>>>> second) during expectMsgClass waiting for class
>>>>> org.apache.iota.fey.Monitor$TERMINATE
>>>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>> .expectMsgClass_internal(TestKit.scala:435)
>>>>> [info]   at akka.testkit.TestKitBase$class
>>>>> .expectMsgClass(TestKit.scala:431)
>>>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>>> [info]   at org.scalatest.OutcomeOf$class.
>>>>> outcomeOf(OutcomeOf.scala:85)
>>>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>>>> [info]   ...
>>>>> [info] - should result in empty FEY_CACHE.activeOrchestrations ***
>>>>> FAILED ***
>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>>> 2#-2041630067])) was not empty (FeyCoreSpec.scala:153)
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>>> FeyCore of a GenericReceiverActor
>>>>> [info] - should result in creating an Orchestration child actor with
>>>>> the name 'RECEIVER_ORCHESTRATION'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>> with key 'RECEIVER_ORCHESTRATION'
>>>>> [info] Sending PROCESS message to the Receiver Performer
>>>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>>>> [info] - should result in creating an Orchestration child actor with
>>>>> the name 'RECEIVED-BY-ACTOR-RECEIVER'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>>>> [info] - should result in one new entry to
>>>>> FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' ***
>>>>> FAILED ***
>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>>>>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
>>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4
>>>>> instead of expected size 2 (FeyCoreSpec.scala:200)
>>>>> [info] Sending PROCESS message to the Receiver Performer with command
>>>>> DELETE
>>>>> [info] - should STOP running orchestration
>>>>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations
>>>>> *** FAILED ***
>>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>>> 2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[
>>>>> akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299]))
>>>>> had size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
>>>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>>>> [info] - should Save received JSON to checkpoint dir
>>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>>>>> performer command to FeyCore
>>>>> [info] - should result in creating an Orchestration child actor with
>>>>> the name 'GLOBAL-PERFORMER'
>>>>> [info] - should result in creating an Ensemble child actor with the
>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>>>> [info] - should result in creating a global Performer child actor with
>>>>> the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>>>> [info] - should result in creating a Performer child actor with the
>>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>>> with key 'GLOBAL-PERFORMER'
>>>>> [info] - should result in one global actor created for orchestration
>>>>> [info] - should result in globa metadata add to table
>>>>> [info] - should result in right running actors
>>>>> [info] Stopping Global actor
>>>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>>>>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global
>>>>> Performer GLOBAL-TEST
>>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>>> GLOBAL-TEST
>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>> ormer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>>         at org.apache.iota.fey.GlobalPerf
>>>>> ormer.aroundReceive(GlobalPerformer.scala:28)
>>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>>         at akka.actor.dungeon.DeathWatch$
>>>>> class.receivedTerminated(DeathWatch.scala:44)
>>>>>         at akka.actor.ActorCell.receivedT
>>>>> erminated(ActorCell.scala:374)
>>>>>         at akka.actor.ActorCell.autoRecei
>>>>> veMessage(ActorCell.scala:511)
>>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinTask.doExec(ForkJoinTask.java:260)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinPool.runWorker(ForkJoinPool.java:1979)
>>>>>         at scala.concurrent.forkjoin.Fork
>>>>> JoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>>>>>
>>>>> [info] - should result in sending logging error
>>>>> [info] - should result in orchestration restarted
>>>>> [info] - should all previous actors restarted
>>>>> [info] Stopping orchestration with global performer
>>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>>> [info] - should result in no global actors for orchestration
>>>>> [info] Stopping FeyCore
>>>>> [info] - should result in sending STOP message to Monitor actor
>>>>> [info] BaseAkkaSpec:
>>>>> [info] JsonReceiverSpec:
>>>>> [info] Executing validJson in JsonReceiver
>>>>> [info] - should return false when json schema is not right
>>>>> [info] - should log message to Error
>>>>> [info] - should return true when Json schema is valid
>>>>> [info] Executing checkForLocation in JsonReceiver
>>>>> [info] - should log message at Debug level
>>>>> [info] - should download jar dynamically from URL
>>>>> [info] Start a Thread with the JSON receiver
>>>>> [info] - should Start Thread
>>>>> [info] - should execute execute() method inside run
>>>>> [info] Interrupting the receiver Thread
>>>>> [info] - should Throw Interrupted exception
>>>>> [info] - should execute exceptionOnRun method
>>>>> [info] FeyGenericActorSpec:
>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>> [info] - should result in scheduler started
>>>>> [info] - should result in onStart method called
>>>>> [info] - should result in START message sent to Monitor
>>>>> [info] - should result in one active actor
>>>>> [info] Backoff of GenericActor
>>>>> [info] - should be zero until the first PROCESS message
>>>>> [info] - should change when first PROCESS message was received
>>>>> [info] Sending PROCESS message to GenericActor
>>>>> [info] - should call processMessage method
>>>>> [info] customReceive method
>>>>> [info] - should process any non treated message
>>>>> [info] Sending PROCESS message to GenericActor
>>>>> [info] - should be discarded when backoff is enabled
>>>>> [info] - should be processed when backoff has finished
>>>>> [info] Calling startBackoff
>>>>> [info] - should set endBackoff with time now
>>>>> [info] Calling propagateMessage
>>>>> [info] - should send message to connectTo actors
>>>>> [info] Scheduler component
>>>>> [info] - should call execute() method
>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>> GenericActor
>>>>> [info] - should Throw IllegalArgumentException
>>>>> [info] - should Result in restart of the actor with sequence of
>>>>> Monitoring: STOP -> RESTART -> START
>>>>> [info] - should call onStart method
>>>>> [info] - should call onRestart method
>>>>> [info] - should restart scheduler
>>>>> [info] Sending STOP to GenericActor
>>>>> [info] - should terminate GenericActor
>>>>> [info] - should call onStop method
>>>>> [info] - should cancel scheduler
>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>> [info] - should result in no active actors
>>>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>>>> [info] - should not start a scheduler
>>>>> [info] - should result in one active actor
>>>>> [info] - should result in no discarded PROCESS messages
>>>>> [info] FeyGenericActorReceiverSpec:
>>>>> [info] Creating a GenericActor with Schedule time defined
>>>>> [info] - should result in scheduler started
>>>>> [info] - should result in onStart method called
>>>>> [info] - should result in START message sent to Monitor
>>>>> [info] - should result in one active actor
>>>>> [info] - should result in normal functioning of GenericActor
>>>>> [info] Sending PROCESS message to GenericReceiver
>>>>> [info] - should log message to Warn saying that the JSON could not be
>>>>> forwarded to FeyCore when JSON is invalid
>>>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
>>>>> processed has a valid schema
>>>>> [info] - should Download jar from location and send
>>>>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>>>> [info] Scheduler component
>>>>> [info] - should call execute() method
>>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>>> GenericActor
>>>>> [info] - should Throw IllegalArgumentException
>>>>> [info] - should Result in restart of the actor with sequence of
>>>>> Monitoring: STOP -> RESTART -> START
>>>>> [info] - should call onStart method
>>>>> [info] - should call onRestart method
>>>>> [info] - should restart scheduler
>>>>> [info] Sending STOP to GenericActor
>>>>> [info] - should terminate GenericActor
>>>>> [info] - should call onStop method
>>>>> [info] - should cancel scheduler
>>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>>> [info] - should result in no active actors
>>>>>
>>>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>>>> [info] Total number of tests run: 243
>>>>> [info] Suites: completed 12, aborted 0
>>>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>>>>> [info] *** 5 TESTS FAILED ***
>>>>> [error] Failed tests:
>>>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests
>>>>> unsuccessful
>>>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>>>
>>>>>
>>>>> --
>>>>> Thanks,
>>>>>
>>>>> Gunnar
>>>>> *If you think you can you can, if you think you can't you're right.*
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Barbara Gomes
>>>> Computer Engineer
>>>> San Jose, CA
>>>>
>>>
>>>
>>>
>>> --
>>> Thanks,
>>>
>>> Gunnar
>>> *If you think you can you can, if you think you can't you're right.*
>>>
>>
>>
>>
>> --
>> Barbara Gomes
>> Computer Engineer
>> San Jose, CA
>>
>
>
>
> --
> Barbara Gomes
> Computer Engineer
> San Jose, CA
>



-- 
Thanks,

Gunnar
*If you think you can you can, if you think you can't you're right.*

Re: fey-core assembly fails

Posted by Barbara Malta Gomes <ba...@gmail.com>.
Hi Gunnar,

I have noticed that when *assembly *runs the test, in some cases, some of
the tests fails.

I will need sometime to investigate why it does not work 100% when assembly
calls it.

For now, you can run the tests separately:

>> sbt
>> projetc fey-core
>> test

and for now add the following line to the fey project in
 project/Build.scala

test in assembly := {}


it should look like:
[image: Inline image 1]

Please, let me know if that works for you

Regards

On Sun, Feb 19, 2017 at 9:17 AM, Barbara Malta Gomes <
barbaramaltagomes@gmail.com> wrote:

> HI Gunnar,
>
> Thanks for the info.
>
> I will try to reproduce the issue on CentOS.
>
> If you re-run the tests, do you still get the SAME failed tests or it
> fails but in different tests?
>
> Regards
>
> On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <ta...@gmail.com>
> wrote:
>
>> Hi Barbara:
>>
>> I'm on an x86 box with:
>>
>> [gunnar@localhost ~]$ lsb_release -a
>> LSB Version:    :base-4.0-ia32:base-4.0-noarc
>> h:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-
>> 4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
>> Distributor ID: CentOS
>> Description:    CentOS release 6.8 (Final)
>> Release:        6.8
>> Codename:       Final
>>
>> It may be too weak for what's needed here. I can spin up a AWS micro
>> instance once I know what OS to install.
>>
>> Thanks,
>>
>> Gunnar
>>
>> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
>> barbaramaltagomes@gmail.com> wrote:
>>
>>> Hi Gunnar,
>>>
>>> Which Operational System are you using?
>>> *sbt *picks the order of the tests execution and it might be the
>>> problem on your machine.
>>>
>>> As you can see in the picture bellow, I pulled the repo from github and
>>> run the tests and all of them succeeded
>>>
>>> [image: Inline image 1]
>>>
>>> I'm using Mac OS
>>>
>>> About the *ERROR *messages during the tests, those are fey logs caused
>>> intentionally by the tests.
>>>
>>> Also, try to run the tests separated:
>>>
>>> >> sbt
>>> >> project fey-core
>>> >> test
>>>
>>> Regards,
>>>
>>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:
>>>
>>>> Thanks for pointing this out will take a look.
>>>> -Tony
>>>>
>>>>
>>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>>>> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I verified the required versions and then I ran assembly of the
>>>> fey-core project. 5 failures.
>>>>
>>>> [info] - should result in creating a global Performer child actor with
>>>> the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/G
>>>> LOBAL-TEST'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFO
>>>> RMER-SCHEDULER'
>>>> [info] - should result in one global actor created for orchestration
>>>> [info] - should result in right number of running actors
>>>> [info] Stopping performer inside ensemble
>>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
>>>> PERFORMER-SCHEDULER
>>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>>>>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(
>>>> Ensemble.scala:60)
>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29
>>>> )
>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>>> Watch.scala:44)
>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>>> ava:260)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>>> kJoinPool.java:1339)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>>> l.java:1979)
>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>>> orkerThread.java:107)
>>>>
>>>> [info] - should Send stop message to monitor
>>>> [info] Stopping ensemble
>>>> [info] - should Send stop message to monitor
>>>> [info] - should result in no orchestration running
>>>> [info] - should not affect global performer
>>>> [info] Stopping global performer
>>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>>>> GLOBAL-TEST
>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>> GLOBAL-TEST
>>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.apply
>>>> OrElse(GlobalPerformer.scala:49)
>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>>>> ormer.scala:28)
>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>>> Watch.scala:44)
>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestAct
>>>> orRef.scala:60)
>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThread
>>>> Dispatcher.scala:250)
>>>>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadD
>>>> ispatcher.scala:283)
>>>>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingT
>>>> hreadDispatcher.scala:191)
>>>>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch
>>>> .scala:147)
>>>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>>>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:40
>>>> 2)
>>>>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$Fa
>>>> ultHandling$$finishTerminate(FaultHandling.scala:213)
>>>>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandli
>>>> ng.scala:172)
>>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala
>>>> :282)
>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>>> ava:260)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>>> kJoinPool.java:1339)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>>> l.java:1979)
>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>>> orkerThread.java:107)
>>>>
>>>> [info] - should result in restart the orchestration
>>>> [info] - should all previous actors restarted
>>>> [info] Stopping orchestration
>>>> [info] - should result in empty global
>>>> [info] EnsembleSpec:
>>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>>> [info] - should result in creation of Ensemble actor '
>>>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>>> [info] - should result in sending START to monitor actor
>>>> [info] - should result in creation of Performer 'TEST-0004'
>>>> [info] - should result in Empty state variable Ensemble.connectors
>>>> [info] - should result in one entry added to state variable
>>>> Ensemble.performer
>>>> [info] - should result in one right entry to state variable
>>>> Ensemble.performers_metadata
>>>> [info] - should result in two paths added to
>>>> IdentifyFeyActors.actorsPath
>>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>>> [info] - should result in Terminate message of actor 'TEST-0004' and
>>>> throw RestartEnsemble Exception
>>>> [info] - should result in Performer 'TEST-0004' restarted
>>>> [info] - should result in two paths added to
>>>> IdentifyFeyActors.actorsPath
>>>> [info] Sending PoisonPill to Ensemble
>>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>>> [info] - should result in sending TERMINATE to monitor actor
>>>> [info] - should result in termination of ensemble and performer
>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>> [info] creating more detailed Ensemble
>>>> [info] - should result in creation of Ensemble actor
>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>> [info] - should create connection PERFORMER-SCHEDULER ->
>>>> PERFORMER-PARAMS
>>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal
>>>> to 200ms
>>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>>>> 'PERFORMER-PARAMS'
>>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>>> [info] 'PERFORMER-SCHEDULER'
>>>> [info] - should produce 5 messages in 1 seconds
>>>> [info] - should produce 10 messages in 2 seconds
>>>> [info] 'PERFORMER-PARAMS'
>>>> [info] - should process 5 messages in 1 seconds
>>>> [info] - should produce 10 messages in 2 seconds
>>>> [info] Stopping any Performer that belongs to the Ensemble
>>>> [info] - should force restart of entire Ensemble
>>>> [info] - should result in sending STOP - RESTART to monitor actor
>>>> [info] - should keep ensemble actorRef when restarted
>>>> [info] - should stop and start the performer with a new reference
>>>> [info] Restarting an Ensemble
>>>> [info] - should Consuming left messages on Process
>>>> [info] - should Cleanup TestProbs
>>>> [info] Redefining TestProbe for performers
>>>> [info] - should start receiving messages
>>>> [info] Sending PoisonPill to detailed Ensemble
>>>> [info] - should result in termination of Ensemble
>>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>>> [info] creating Ensemble with Backoff performer
>>>> [info] - should result in creation of Ensemble actor
>>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
>>>> second
>>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to
>>>> true
>>>> [info] Performer with backoff enabled
>>>> [info] - should not process messages during the backoff period
>>>> [info] Performer with autoScale
>>>> [info] - should result in router and routees created
>>>> [info] IdentifyFeyActorsSpec:
>>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>> [info] - should result in one path added to IdentifyFeyActors.actorsPath
>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>>> [info] Creating a new actor in the system and sending
>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>> [info] - should result in two paths added to
>>>> IdentifyFeyActors.actorsPath
>>>> [info] - should result in matching paths
>>>> [info] Stopping previous added actor and sending
>>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>>> [info] - should result in going back to have just one path added to
>>>> IdentifyFeyActors.actorsPath
>>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>>> [info] WatchServiceReceiverSpec:
>>>> [info] Creating WatchServiceReceiver
>>>> [info] - should process initial files in the JSON repository
>>>> [info] Start a Thread with WatchServiceReceiver
>>>> [info] - should Start Thread
>>>> [info] Start watching directory
>>>> [info] - should Starting receiving CREATED event
>>>> [info] - should Starting receiving UPDATE event
>>>> [info] processJson
>>>> [info] - should log to warn level when json has invalid schema
>>>> [info] interrupt watchservice
>>>> [info] - should interrupt thread
>>>> [info] FeyCoreSpec:
>>>> [info] Creating FeyCore
>>>> [info] - should result in creating a child actor with the name
>>>> 'FEY_IDENTIFIER'
>>>> [info] - should result in sending START message to Monitor actor
>>>> [info] Sending FeyCore.START to FeyCore
>>>> [info] - should result in creating a child actor with the name
>>>> 'JSON_RECEIVER'
>>>> [info] - should result in starting FeyWatchService Thread
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>> FeyCore
>>>> [info] - should result in creating an Orchestration child actor with
>>>> the name 'TEST-ACTOR'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>> with key 'TEST-ACTOR'
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>>>> FeyCore
>>>> [info] - should result in creating a new Performer child actor with the
>>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>>>> DELETE ensemble to FeyCore
>>>> [info] - should result in termination of Ensemble with the name
>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>>> [info] - should result in termination of Performer with the name
>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>>> [info] - should result in termination of Performer with the name
>>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
>>>> same Timestamp to FeyCore
>>>> [info] - should result in logging a 'not recreated' message at Warn
>>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>>> [info] - should result in logging a 6 path messages at Info
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>>>> FeyCore
>>>> [info] - should result in termination of Orchestration with the name
>>>> 'TEST-ACTOR'
>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>> [info] - should result in termination of Ensemble with the name
>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>>> [info] - should result in termination of Performer with the name
>>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>>> [info] - should result in removing key 'TEST-ACTOR' at
>>>> FEY_CACHE.activeOrchestrations
>>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>> 2#-2041630067])) had size 2 instead of expected size 1
>>>> (FeyCoreSpec.scala:144)
>>>> [info] - should result in sending Terminate message to Monitor actor
>>>> *** FAILED ***
>>>> [info]   java.lang.AssertionError: assertion failed: timeout (1 second)
>>>> during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TE
>>>> RMINATE
>>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>>> [info]   at akka.testkit.TestKitBase$class
>>>> .expectMsgClass_internal(TestKit.scala:435)
>>>> [info]   at akka.testkit.TestKitBase$class
>>>> .expectMsgClass(TestKit.scala:431)
>>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>> [info]   at org.apache.iota.fey.FeyCoreSpe
>>>> c$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
>>>> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>>> [info]   ...
>>>> [info] - should result in empty FEY_CACHE.activeOrchestrations ***
>>>> FAILED ***
>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>> 2#-2041630067])) was not empty (FeyCoreSpec.scala:153)
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>>> FeyCore of a GenericReceiverActor
>>>> [info] - should result in creating an Orchestration child actor with
>>>> the name 'RECEIVER_ORCHESTRATION'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>> with key 'RECEIVER_ORCHESTRATION'
>>>> [info] Sending PROCESS message to the Receiver Performer
>>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>>> [info] - should result in creating an Orchestration child actor with
>>>> the name 'RECEIVED-BY-ACTOR-RECEIVER'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>>> [info] - should result in one new entry to
>>>> FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' ***
>>>> FAILED ***
>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>>>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
>>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>>>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>>>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4
>>>> instead of expected size 2 (FeyCoreSpec.scala:200)
>>>> [info] Sending PROCESS message to the Receiver Performer with command
>>>> DELETE
>>>> [info] - should STOP running orchestration
>>>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations
>>>> *** FAILED ***
>>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>>> 2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[
>>>> akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had
>>>> size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
>>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>>> [info] - should Save received JSON to checkpoint dir
>>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>>>> performer command to FeyCore
>>>> [info] - should result in creating an Orchestration child actor with
>>>> the name 'GLOBAL-PERFORMER'
>>>> [info] - should result in creating an Ensemble child actor with the
>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>>> [info] - should result in creating a global Performer child actor with
>>>> the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>>> [info] - should result in creating a Performer child actor with the
>>>> name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>>> with key 'GLOBAL-PERFORMER'
>>>> [info] - should result in one global actor created for orchestration
>>>> [info] - should result in globa metadata add to table
>>>> [info] - should result in right running actors
>>>> [info] Stopping Global actor
>>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>>>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
>>>> GLOBAL-TEST
>>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>>> GLOBAL-TEST
>>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.apply
>>>> OrElse(GlobalPerformer.scala:49)
>>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>>>> ormer.scala:28)
>>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>>> Watch.scala:44)
>>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>>> ava:260)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>>> kJoinPool.java:1339)
>>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>>> l.java:1979)
>>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>>> orkerThread.java:107)
>>>>
>>>> [info] - should result in sending logging error
>>>> [info] - should result in orchestration restarted
>>>> [info] - should all previous actors restarted
>>>> [info] Stopping orchestration with global performer
>>>> [info] - should result in sending TERMINATE message to Monitor actor
>>>> [info] - should result in no global actors for orchestration
>>>> [info] Stopping FeyCore
>>>> [info] - should result in sending STOP message to Monitor actor
>>>> [info] BaseAkkaSpec:
>>>> [info] JsonReceiverSpec:
>>>> [info] Executing validJson in JsonReceiver
>>>> [info] - should return false when json schema is not right
>>>> [info] - should log message to Error
>>>> [info] - should return true when Json schema is valid
>>>> [info] Executing checkForLocation in JsonReceiver
>>>> [info] - should log message at Debug level
>>>> [info] - should download jar dynamically from URL
>>>> [info] Start a Thread with the JSON receiver
>>>> [info] - should Start Thread
>>>> [info] - should execute execute() method inside run
>>>> [info] Interrupting the receiver Thread
>>>> [info] - should Throw Interrupted exception
>>>> [info] - should execute exceptionOnRun method
>>>> [info] FeyGenericActorSpec:
>>>> [info] Creating a GenericActor with Schedule time defined
>>>> [info] - should result in scheduler started
>>>> [info] - should result in onStart method called
>>>> [info] - should result in START message sent to Monitor
>>>> [info] - should result in one active actor
>>>> [info] Backoff of GenericActor
>>>> [info] - should be zero until the first PROCESS message
>>>> [info] - should change when first PROCESS message was received
>>>> [info] Sending PROCESS message to GenericActor
>>>> [info] - should call processMessage method
>>>> [info] customReceive method
>>>> [info] - should process any non treated message
>>>> [info] Sending PROCESS message to GenericActor
>>>> [info] - should be discarded when backoff is enabled
>>>> [info] - should be processed when backoff has finished
>>>> [info] Calling startBackoff
>>>> [info] - should set endBackoff with time now
>>>> [info] Calling propagateMessage
>>>> [info] - should send message to connectTo actors
>>>> [info] Scheduler component
>>>> [info] - should call execute() method
>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>> GenericActor
>>>> [info] - should Throw IllegalArgumentException
>>>> [info] - should Result in restart of the actor with sequence of
>>>> Monitoring: STOP -> RESTART -> START
>>>> [info] - should call onStart method
>>>> [info] - should call onRestart method
>>>> [info] - should restart scheduler
>>>> [info] Sending STOP to GenericActor
>>>> [info] - should terminate GenericActor
>>>> [info] - should call onStop method
>>>> [info] - should cancel scheduler
>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>> [info] - should result in no active actors
>>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>>> [info] - should not start a scheduler
>>>> [info] - should result in one active actor
>>>> [info] - should result in no discarded PROCESS messages
>>>> [info] FeyGenericActorReceiverSpec:
>>>> [info] Creating a GenericActor with Schedule time defined
>>>> [info] - should result in scheduler started
>>>> [info] - should result in onStart method called
>>>> [info] - should result in START message sent to Monitor
>>>> [info] - should result in one active actor
>>>> [info] - should result in normal functioning of GenericActor
>>>> [info] Sending PROCESS message to GenericReceiver
>>>> [info] - should log message to Warn saying that the JSON could not be
>>>> forwarded to FeyCore when JSON is invalid
>>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
>>>> processed has a valid schema
>>>> [info] - should Download jar from location and send
>>>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>>> [info] Scheduler component
>>>> [info] - should call execute() method
>>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>>> GenericActor
>>>> [info] - should Throw IllegalArgumentException
>>>> [info] - should Result in restart of the actor with sequence of
>>>> Monitoring: STOP -> RESTART -> START
>>>> [info] - should call onStart method
>>>> [info] - should call onRestart method
>>>> [info] - should restart scheduler
>>>> [info] Sending STOP to GenericActor
>>>> [info] - should terminate GenericActor
>>>> [info] - should call onStop method
>>>> [info] - should cancel scheduler
>>>> [info] - should send STOP - TERMINATE message to Monitor
>>>> [info] - should result in no active actors
>>>>
>>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>>> [info] Total number of tests run: 243
>>>> [info] Suites: completed 12, aborted 0
>>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>>>> [info] *** 5 TESTS FAILED ***
>>>> [error] Failed tests:
>>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests
>>>> unsuccessful
>>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>>
>>>>
>>>> --
>>>> Thanks,
>>>>
>>>> Gunnar
>>>> *If you think you can you can, if you think you can't you're right.*
>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Barbara Gomes
>>> Computer Engineer
>>> San Jose, CA
>>>
>>
>>
>>
>> --
>> Thanks,
>>
>> Gunnar
>> *If you think you can you can, if you think you can't you're right.*
>>
>
>
>
> --
> Barbara Gomes
> Computer Engineer
> San Jose, CA
>



-- 
Barbara Gomes
Computer Engineer
San Jose, CA

Re: fey-core assembly fails

Posted by Barbara Malta Gomes <ba...@gmail.com>.
HI Gunnar,

Thanks for the info.

I will try to reproduce the issue on CentOS.

If you re-run the tests, do you still get the SAME failed tests or it fails
but in different tests?

Regards

On Sun, Feb 19, 2017 at 7:52 AM, Gunnar Tapper <ta...@gmail.com>
wrote:

> Hi Barbara:
>
> I'm on an x86 box with:
>
> [gunnar@localhost ~]$ lsb_release -a
> LSB Version:    :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-
> noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-
> 4.0-ia32:printing-4.0-noarch
> Distributor ID: CentOS
> Description:    CentOS release 6.8 (Final)
> Release:        6.8
> Codename:       Final
>
> It may be too weak for what's needed here. I can spin up a AWS micro
> instance once I know what OS to install.
>
> Thanks,
>
> Gunnar
>
> On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
> barbaramaltagomes@gmail.com> wrote:
>
>> Hi Gunnar,
>>
>> Which Operational System are you using?
>> *sbt *picks the order of the tests execution and it might be the problem
>> on your machine.
>>
>> As you can see in the picture bellow, I pulled the repo from github and
>> run the tests and all of them succeeded
>>
>> [image: Inline image 1]
>>
>> I'm using Mac OS
>>
>> About the *ERROR *messages during the tests, those are fey logs caused
>> intentionally by the tests.
>>
>> Also, try to run the tests separated:
>>
>> >> sbt
>> >> project fey-core
>> >> test
>>
>> Regards,
>>
>> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:
>>
>>> Thanks for pointing this out will take a look.
>>> -Tony
>>>
>>>
>>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>>> wrote:
>>>
>>> Hi,
>>>
>>> I verified the required versions and then I ran assembly of the fey-core
>>> project. 5 failures.
>>>
>>> [info] - should result in creating a global Performer child actor with
>>> the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/G
>>> LOBAL-TEST'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFO
>>> RMER-SCHEDULER'
>>> [info] - should result in one global actor created for orchestration
>>> [info] - should result in right number of running actors
>>> [info] Stopping performer inside ensemble
>>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
>>> PERFORMER-SCHEDULER
>>> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>>>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(
>>> Ensemble.scala:60)
>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>> Watch.scala:44)
>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>> ava:260)
>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>> kJoinPool.java:1339)
>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>> l.java:1979)
>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>> orkerThread.java:107)
>>>
>>> [info] - should Send stop message to monitor
>>> [info] Stopping ensemble
>>> [info] - should Send stop message to monitor
>>> [info] - should result in no orchestration running
>>> [info] - should not affect global performer
>>> [info] Stopping global performer
>>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>>> GLOBAL-TEST
>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>> GLOBAL-TEST
>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.apply
>>> OrElse(GlobalPerformer.scala:49)
>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>>> ormer.scala:28)
>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>> Watch.scala:44)
>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestAct
>>> orRef.scala:60)
>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThread
>>> Dispatcher.scala:250)
>>>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadD
>>> ispatcher.scala:283)
>>>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingT
>>> hreadDispatcher.scala:191)
>>>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch
>>> .scala:147)
>>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:40
>>> 2)
>>>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$Fa
>>> ultHandling$$finishTerminate(FaultHandling.scala:213)
>>>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandli
>>> ng.scala:172)
>>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala
>>> :282)
>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>> ava:260)
>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>> kJoinPool.java:1339)
>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>> l.java:1979)
>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>> orkerThread.java:107)
>>>
>>> [info] - should result in restart the orchestration
>>> [info] - should all previous actors restarted
>>> [info] Stopping orchestration
>>> [info] - should result in empty global
>>> [info] EnsembleSpec:
>>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>>> [info] - should result in creation of Ensemble actor '
>>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>>> [info] - should result in sending START to monitor actor
>>> [info] - should result in creation of Performer 'TEST-0004'
>>> [info] - should result in Empty state variable Ensemble.connectors
>>> [info] - should result in one entry added to state variable
>>> Ensemble.performer
>>> [info] - should result in one right entry to state variable
>>> Ensemble.performers_metadata
>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>>> [info] - should result in Terminate message of actor 'TEST-0004' and
>>> throw RestartEnsemble Exception
>>> [info] - should result in Performer 'TEST-0004' restarted
>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>> [info] Sending PoisonPill to Ensemble
>>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>>> [info] - should result in sending TERMINATE to monitor actor
>>> [info] - should result in termination of ensemble and performer
>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>> [info] creating more detailed Ensemble
>>> [info] - should result in creation of Ensemble actor
>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
>>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to
>>> 200ms
>>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>>> 'PERFORMER-PARAMS'
>>> [info] - should create 'PERFORMER-PARAMS' with no connections
>>> [info] - should create 'PERFORMER-PARAMS' with specified params
>>> [info] 'PERFORMER-SCHEDULER'
>>> [info] - should produce 5 messages in 1 seconds
>>> [info] - should produce 10 messages in 2 seconds
>>> [info] 'PERFORMER-PARAMS'
>>> [info] - should process 5 messages in 1 seconds
>>> [info] - should produce 10 messages in 2 seconds
>>> [info] Stopping any Performer that belongs to the Ensemble
>>> [info] - should force restart of entire Ensemble
>>> [info] - should result in sending STOP - RESTART to monitor actor
>>> [info] - should keep ensemble actorRef when restarted
>>> [info] - should stop and start the performer with a new reference
>>> [info] Restarting an Ensemble
>>> [info] - should Consuming left messages on Process
>>> [info] - should Cleanup TestProbs
>>> [info] Redefining TestProbe for performers
>>> [info] - should start receiving messages
>>> [info] Sending PoisonPill to detailed Ensemble
>>> [info] - should result in termination of Ensemble
>>> [info] - should result in empty IdentifyFeyActors.actorsPath
>>> [info] creating Ensemble with Backoff performer
>>> [info] - should result in creation of Ensemble actor
>>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
>>> second
>>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
>>> [info] Performer with backoff enabled
>>> [info] - should not process messages during the backoff period
>>> [info] Performer with autoScale
>>> [info] - should result in router and routees created
>>> [info] IdentifyFeyActorsSpec:
>>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>> [info] - should result in one path added to IdentifyFeyActors.actorsPath
>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>> [info] Creating a new actor in the system and sending
>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>>> [info] - should result in matching paths
>>> [info] Stopping previous added actor and sending
>>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>>> [info] - should result in going back to have just one path added to
>>> IdentifyFeyActors.actorsPath
>>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>>> [info] WatchServiceReceiverSpec:
>>> [info] Creating WatchServiceReceiver
>>> [info] - should process initial files in the JSON repository
>>> [info] Start a Thread with WatchServiceReceiver
>>> [info] - should Start Thread
>>> [info] Start watching directory
>>> [info] - should Starting receiving CREATED event
>>> [info] - should Starting receiving UPDATE event
>>> [info] processJson
>>> [info] - should log to warn level when json has invalid schema
>>> [info] interrupt watchservice
>>> [info] - should interrupt thread
>>> [info] FeyCoreSpec:
>>> [info] Creating FeyCore
>>> [info] - should result in creating a child actor with the name
>>> 'FEY_IDENTIFIER'
>>> [info] - should result in sending START message to Monitor actor
>>> [info] Sending FeyCore.START to FeyCore
>>> [info] - should result in creating a child actor with the name
>>> 'JSON_RECEIVER'
>>> [info] - should result in starting FeyWatchService Thread
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>> FeyCore
>>> [info] - should result in creating an Orchestration child actor with the
>>> name 'TEST-ACTOR'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>> with key 'TEST-ACTOR'
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>>> FeyCore
>>> [info] - should result in creating a new Performer child actor with the
>>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>>> DELETE ensemble to FeyCore
>>> [info] - should result in termination of Ensemble with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>>> [info] - should result in termination of Performer with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>>> [info] - should result in termination of Performer with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
>>> same Timestamp to FeyCore
>>> [info] - should result in logging a 'not recreated' message at Warn
>>> [info] Sending FeyCore.JSON_TREE to FeyCore
>>> [info] - should result in logging a 6 path messages at Info
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>>> FeyCore
>>> [info] - should result in termination of Orchestration with the name
>>> 'TEST-ACTOR'
>>> [info] - should result in sending TERMINATE message to Monitor actor
>>> [info] - should result in termination of Ensemble with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>>> [info] - should result in termination of Performer with the name
>>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>>> [info] - should result in removing key 'TEST-ACTOR' at
>>> FEY_CACHE.activeOrchestrations
>>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>> 2#-2041630067])) had size 2 instead of expected size 1
>>> (FeyCoreSpec.scala:144)
>>> [info] - should result in sending Terminate message to Monitor actor ***
>>> FAILED ***
>>> [info]   java.lang.AssertionError: assertion failed: timeout (1 second)
>>> during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TE
>>> RMINATE
>>> [info]   at scala.Predef$.assert(Predef.scala:170)
>>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(TestK
>>> it.scala:435)
>>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:
>>> 431)
>>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mc
>>> V$sp$37.apply(FeyCoreSpec.scala:150)
>>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mc
>>> V$sp$37.apply(FeyCoreSpec.scala:150)
>>> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>>> [info]   ...
>>> [info] - should result in empty FEY_CACHE.activeOrchestrations ***
>>> FAILED ***
>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>> 2#-2041630067])) was not empty (FeyCoreSpec.scala:153)
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>>> FeyCore of a GenericReceiverActor
>>> [info] - should result in creating an Orchestration child actor with the
>>> name 'RECEIVER_ORCHESTRATION'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>> with key 'RECEIVER_ORCHESTRATION'
>>> [info] Sending PROCESS message to the Receiver Performer
>>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>>> [info] - should result in creating an Orchestration child actor with the
>>> name 'RECEIVED-BY-ACTOR-RECEIVER'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>>> [info] - should result in one new entry to
>>> FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' ***
>>> FAILED ***
>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
>>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION"
>>> -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCH
>>> ESTRATION#-560956299])) had size 4 instead of expected size 2
>>> (FeyCoreSpec.scala:200)
>>> [info] Sending PROCESS message to the Receiver Performer with command
>>> DELETE
>>> [info] - should STOP running orchestration
>>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations
>>> *** FAILED ***
>>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2"
>>> -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-
>>> 2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[
>>> akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had
>>> size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
>>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>>> [info] - should Save received JSON to checkpoint dir
>>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>>> performer command to FeyCore
>>> [info] - should result in creating an Orchestration child actor with the
>>> name 'GLOBAL-PERFORMER'
>>> [info] - should result in creating an Ensemble child actor with the name
>>> 'GLOBAL-PERFORMER/ENS-GLOBAL'
>>> [info] - should result in creating a global Performer child actor with
>>> the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>>> [info] - should result in creating a Performer child actor with the name
>>> 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>>> with key 'GLOBAL-PERFORMER'
>>> [info] - should result in one global actor created for orchestration
>>> [info] - should result in globa metadata add to table
>>> [info] - should result in right running actors
>>> [info] Stopping Global actor
>>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
>>> GLOBAL-TEST
>>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>>> GLOBAL-TEST
>>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.apply
>>> OrElse(GlobalPerformer.scala:49)
>>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>>> ormer.scala:28)
>>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>>> Watch.scala:44)
>>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.j
>>> ava:260)
>>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(For
>>> kJoinPool.java:1339)
>>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>>> l.java:1979)
>>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>>> orkerThread.java:107)
>>>
>>> [info] - should result in sending logging error
>>> [info] - should result in orchestration restarted
>>> [info] - should all previous actors restarted
>>> [info] Stopping orchestration with global performer
>>> [info] - should result in sending TERMINATE message to Monitor actor
>>> [info] - should result in no global actors for orchestration
>>> [info] Stopping FeyCore
>>> [info] - should result in sending STOP message to Monitor actor
>>> [info] BaseAkkaSpec:
>>> [info] JsonReceiverSpec:
>>> [info] Executing validJson in JsonReceiver
>>> [info] - should return false when json schema is not right
>>> [info] - should log message to Error
>>> [info] - should return true when Json schema is valid
>>> [info] Executing checkForLocation in JsonReceiver
>>> [info] - should log message at Debug level
>>> [info] - should download jar dynamically from URL
>>> [info] Start a Thread with the JSON receiver
>>> [info] - should Start Thread
>>> [info] - should execute execute() method inside run
>>> [info] Interrupting the receiver Thread
>>> [info] - should Throw Interrupted exception
>>> [info] - should execute exceptionOnRun method
>>> [info] FeyGenericActorSpec:
>>> [info] Creating a GenericActor with Schedule time defined
>>> [info] - should result in scheduler started
>>> [info] - should result in onStart method called
>>> [info] - should result in START message sent to Monitor
>>> [info] - should result in one active actor
>>> [info] Backoff of GenericActor
>>> [info] - should be zero until the first PROCESS message
>>> [info] - should change when first PROCESS message was received
>>> [info] Sending PROCESS message to GenericActor
>>> [info] - should call processMessage method
>>> [info] customReceive method
>>> [info] - should process any non treated message
>>> [info] Sending PROCESS message to GenericActor
>>> [info] - should be discarded when backoff is enabled
>>> [info] - should be processed when backoff has finished
>>> [info] Calling startBackoff
>>> [info] - should set endBackoff with time now
>>> [info] Calling propagateMessage
>>> [info] - should send message to connectTo actors
>>> [info] Scheduler component
>>> [info] - should call execute() method
>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>> GenericActor
>>> [info] - should Throw IllegalArgumentException
>>> [info] - should Result in restart of the actor with sequence of
>>> Monitoring: STOP -> RESTART -> START
>>> [info] - should call onStart method
>>> [info] - should call onRestart method
>>> [info] - should restart scheduler
>>> [info] Sending STOP to GenericActor
>>> [info] - should terminate GenericActor
>>> [info] - should call onStop method
>>> [info] - should cancel scheduler
>>> [info] - should send STOP - TERMINATE message to Monitor
>>> [info] - should result in no active actors
>>> [info] Creating GenericActor with schedule anc backoff equal to zero
>>> [info] - should not start a scheduler
>>> [info] - should result in one active actor
>>> [info] - should result in no discarded PROCESS messages
>>> [info] FeyGenericActorReceiverSpec:
>>> [info] Creating a GenericActor with Schedule time defined
>>> [info] - should result in scheduler started
>>> [info] - should result in onStart method called
>>> [info] - should result in START message sent to Monitor
>>> [info] - should result in one active actor
>>> [info] - should result in normal functioning of GenericActor
>>> [info] Sending PROCESS message to GenericReceiver
>>> [info] - should log message to Warn saying that the JSON could not be
>>> forwarded to FeyCore when JSON is invalid
>>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
>>> processed has a valid schema
>>> [info] - should Download jar from location and send
>>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>>> [info] Scheduler component
>>> [info] - should call execute() method
>>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>>> GenericActor
>>> [info] - should Throw IllegalArgumentException
>>> [info] - should Result in restart of the actor with sequence of
>>> Monitoring: STOP -> RESTART -> START
>>> [info] - should call onStart method
>>> [info] - should call onRestart method
>>> [info] - should restart scheduler
>>> [info] Sending STOP to GenericActor
>>> [info] - should terminate GenericActor
>>> [info] - should call onStop method
>>> [info] - should cancel scheduler
>>> [info] - should send STOP - TERMINATE message to Monitor
>>> [info] - should result in no active actors
>>>
>>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>>> [info] Total number of tests run: 243
>>> [info] Suites: completed 12, aborted 0
>>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>>> [info] *** 5 TESTS FAILED ***
>>> [error] Failed tests:
>>> [error]         org.apache.iota.fey.FeyCoreSpec
>>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
>>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>>
>>>
>>> --
>>> Thanks,
>>>
>>> Gunnar
>>> *If you think you can you can, if you think you can't you're right.*
>>>
>>>
>>>
>>
>>
>> --
>> Barbara Gomes
>> Computer Engineer
>> San Jose, CA
>>
>
>
>
> --
> Thanks,
>
> Gunnar
> *If you think you can you can, if you think you can't you're right.*
>



-- 
Barbara Gomes
Computer Engineer
San Jose, CA

Re: fey-core assembly fails

Posted by Gunnar Tapper <ta...@gmail.com>.
Hi Barbara:

I'm on an x86 box with:

[gunnar@localhost ~]$ lsb_release -a
LSB Version:
 :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.8 (Final)
Release:        6.8
Codename:       Final

It may be too weak for what's needed here. I can spin up a AWS micro
instance once I know what OS to install.

Thanks,

Gunnar

On Sun, Feb 19, 2017 at 8:45 AM, Barbara Malta Gomes <
barbaramaltagomes@gmail.com> wrote:

> Hi Gunnar,
>
> Which Operational System are you using?
> *sbt *picks the order of the tests execution and it might be the problem
> on your machine.
>
> As you can see in the picture bellow, I pulled the repo from github and
> run the tests and all of them succeeded
>
> [image: Inline image 1]
>
> I'm using Mac OS
>
> About the *ERROR *messages during the tests, those are fey logs caused
> intentionally by the tests.
>
> Also, try to run the tests separated:
>
> >> sbt
> >> project fey-core
> >> test
>
> Regards,
>
> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:
>
>> Thanks for pointing this out will take a look.
>> -Tony
>>
>>
>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>> wrote:
>>
>> Hi,
>>
>> I verified the required versions and then I ran assembly of the fey-core
>> project. 5 failures.
>>
>> [info] - should result in creating a global Performer child actor with
>> the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/G
>> LOBAL-TEST'
>> [info] - should result in creating a Performer child actor with the name '
>> akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER
>> '
>> [info] - should result in one global actor created for orchestration
>> [info] - should result in right number of running actors
>> [info] Stopping performer inside ensemble
>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
>> PERFORMER-SCHEDULER
>> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(
>> Ensemble.scala:60)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should Send stop message to monitor
>> [info] Stopping ensemble
>> [info] - should Send stop message to monitor
>> [info] - should result in no orchestration running
>> [info] - should not affect global performer
>> [info] Stopping global performer
>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>> GLOBAL-TEST
>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>> GLOBAL-TEST
>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.
>> applyOrElse(GlobalPerformer.scala:49)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>> ormer.scala:28)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestAct
>> orRef.scala:60)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThread
>> Dispatcher.scala:250)
>>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadD
>> ispatcher.scala:283)
>>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingT
>> hreadDispatcher.scala:191)
>>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch
>> .scala:147)
>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
>>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$
>> FaultHandling$$finishTerminate(FaultHandling.scala:213)
>>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandli
>> ng.scala:172)
>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.
>> scala:282)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should result in restart the orchestration
>> [info] - should all previous actors restarted
>> [info] Stopping orchestration
>> [info] - should result in empty global
>> [info] EnsembleSpec:
>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>> [info] - should result in creation of Ensemble actor '
>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>> [info] - should result in sending START to monitor actor
>> [info] - should result in creation of Performer 'TEST-0004'
>> [info] - should result in Empty state variable Ensemble.connectors
>> [info] - should result in one entry added to state variable
>> Ensemble.performer
>> [info] - should result in one right entry to state variable
>> Ensemble.performers_metadata
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>> [info] - should result in Terminate message of actor 'TEST-0004' and
>> throw RestartEnsemble Exception
>> [info] - should result in Performer 'TEST-0004' restarted
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] Sending PoisonPill to Ensemble
>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>> [info] - should result in sending TERMINATE to monitor actor
>> [info] - should result in termination of ensemble and performer
>> [info] - should result in empty IdentifyFeyActors.actorsPath
>> [info] creating more detailed Ensemble
>> [info] - should result in creation of Ensemble actor
>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to
>> 200ms
>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>> 'PERFORMER-PARAMS'
>> [info] - should create 'PERFORMER-PARAMS' with no connections
>> [info] - should create 'PERFORMER-PARAMS' with specified params
>> [info] 'PERFORMER-SCHEDULER'
>> [info] - should produce 5 messages in 1 seconds
>> [info] - should produce 10 messages in 2 seconds
>> [info] 'PERFORMER-PARAMS'
>> [info] - should process 5 messages in 1 seconds
>> [info] - should produce 10 messages in 2 seconds
>> [info] Stopping any Performer that belongs to the Ensemble
>> [info] - should force restart of entire Ensemble
>> [info] - should result in sending STOP - RESTART to monitor actor
>> [info] - should keep ensemble actorRef when restarted
>> [info] - should stop and start the performer with a new reference
>> [info] Restarting an Ensemble
>> [info] - should Consuming left messages on Process
>> [info] - should Cleanup TestProbs
>> [info] Redefining TestProbe for performers
>> [info] - should start receiving messages
>> [info] Sending PoisonPill to detailed Ensemble
>> [info] - should result in termination of Ensemble
>> [info] - should result in empty IdentifyFeyActors.actorsPath
>> [info] creating Ensemble with Backoff performer
>> [info] - should result in creation of Ensemble actor
>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
>> second
>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
>> [info] Performer with backoff enabled
>> [info] - should not process messages during the backoff period
>> [info] Performer with autoScale
>> [info] - should result in router and routees created
>> [info] IdentifyFeyActorsSpec:
>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in one path added to IdentifyFeyActors.actorsPath
>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>> [info] Creating a new actor in the system and sending
>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] - should result in matching paths
>> [info] Stopping previous added actor and sending
>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in going back to have just one path added to
>> IdentifyFeyActors.actorsPath
>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>> [info] WatchServiceReceiverSpec:
>> [info] Creating WatchServiceReceiver
>> [info] - should process initial files in the JSON repository
>> [info] Start a Thread with WatchServiceReceiver
>> [info] - should Start Thread
>> [info] Start watching directory
>> [info] - should Starting receiving CREATED event
>> [info] - should Starting receiving UPDATE event
>> [info] processJson
>> [info] - should log to warn level when json has invalid schema
>> [info] interrupt watchservice
>> [info] - should interrupt thread
>> [info] FeyCoreSpec:
>> [info] Creating FeyCore
>> [info] - should result in creating a child actor with the name
>> 'FEY_IDENTIFIER'
>> [info] - should result in sending START message to Monitor actor
>> [info] Sending FeyCore.START to FeyCore
>> [info] - should result in creating a child actor with the name
>> 'JSON_RECEIVER'
>> [info] - should result in starting FeyWatchService Thread
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>> FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'TEST-ACTOR'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>> [info] - should result in creating a Performer child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>> [info] - should result in creating a Performer child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'TEST-ACTOR'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>> FeyCore
>> [info] - should result in creating a new Performer child actor with the
>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>> DELETE ensemble to FeyCore
>> [info] - should result in termination of Ensemble with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
>> same Timestamp to FeyCore
>> [info] - should result in logging a 'not recreated' message at Warn
>> [info] Sending FeyCore.JSON_TREE to FeyCore
>> [info] - should result in logging a 6 path messages at Info
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>> FeyCore
>> [info] - should result in termination of Orchestration with the name
>> 'TEST-ACTOR'
>> [info] - should result in sending TERMINATE message to Monitor actor
>> [info] - should result in termination of Ensemble with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>> [info] - should result in removing key 'TEST-ACTOR' at
>> FEY_CACHE.activeOrchestrations
>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
>> had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
>> [info] - should result in sending Terminate message to Monitor actor ***
>> FAILED ***
>> [info]   java.lang.AssertionError: assertion failed: timeout (1 second)
>> during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TE
>> RMINATE
>> [info]   at scala.Predef$.assert(Predef.scala:170)
>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(TestK
>> it.scala:435)
>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:
>> 431)
>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$
>> mcV$sp$37.apply(FeyCoreSpec.scala:150)
>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$
>> mcV$sp$37.apply(FeyCoreSpec.scala:150)
>> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>> [info]   ...
>> [info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED
>> ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
>> was not empty (FeyCoreSpec.scala:153)
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>> FeyCore of a GenericReceiverActor
>> [info] - should result in creating an Orchestration child actor with the
>> name 'RECEIVER_ORCHESTRATION'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'RECEIVER_ORCHESTRATION'
>> [info] Sending PROCESS message to the Receiver Performer
>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'RECEIVED-BY-ACTOR-RECEIVER'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>> [info] - should result in one new entry to FEY_CACHE.activeOrchestrations
>> with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION"
>> -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCH
>> ESTRATION#-560956299])) had size 4 instead of expected size 2
>> (FeyCoreSpec.scala:200)
>> [info] Sending PROCESS message to the Receiver Performer with command
>> DELETE
>> [info] - should STOP running orchestration
>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations ***
>> FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3 instead
>> of expected size 1 (FeyCoreSpec.scala:213)
>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>> [info] - should Save received JSON to checkpoint dir
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>> performer command to FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'GLOBAL-PERFORMER'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'GLOBAL-PERFORMER/ENS-GLOBAL'
>> [info] - should result in creating a global Performer child actor with
>> the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>> [info] - should result in creating a Performer child actor with the name
>> 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'GLOBAL-PERFORMER'
>> [info] - should result in one global actor created for orchestration
>> [info] - should result in globa metadata add to table
>> [info] - should result in right running actors
>> [info] Stopping Global actor
>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
>> GLOBAL-TEST
>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>> GLOBAL-TEST
>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.
>> applyOrElse(GlobalPerformer.scala:49)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>> ormer.scala:28)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should result in sending logging error
>> [info] - should result in orchestration restarted
>> [info] - should all previous actors restarted
>> [info] Stopping orchestration with global performer
>> [info] - should result in sending TERMINATE message to Monitor actor
>> [info] - should result in no global actors for orchestration
>> [info] Stopping FeyCore
>> [info] - should result in sending STOP message to Monitor actor
>> [info] BaseAkkaSpec:
>> [info] JsonReceiverSpec:
>> [info] Executing validJson in JsonReceiver
>> [info] - should return false when json schema is not right
>> [info] - should log message to Error
>> [info] - should return true when Json schema is valid
>> [info] Executing checkForLocation in JsonReceiver
>> [info] - should log message at Debug level
>> [info] - should download jar dynamically from URL
>> [info] Start a Thread with the JSON receiver
>> [info] - should Start Thread
>> [info] - should execute execute() method inside run
>> [info] Interrupting the receiver Thread
>> [info] - should Throw Interrupted exception
>> [info] - should execute exceptionOnRun method
>> [info] FeyGenericActorSpec:
>> [info] Creating a GenericActor with Schedule time defined
>> [info] - should result in scheduler started
>> [info] - should result in onStart method called
>> [info] - should result in START message sent to Monitor
>> [info] - should result in one active actor
>> [info] Backoff of GenericActor
>> [info] - should be zero until the first PROCESS message
>> [info] - should change when first PROCESS message was received
>> [info] Sending PROCESS message to GenericActor
>> [info] - should call processMessage method
>> [info] customReceive method
>> [info] - should process any non treated message
>> [info] Sending PROCESS message to GenericActor
>> [info] - should be discarded when backoff is enabled
>> [info] - should be processed when backoff has finished
>> [info] Calling startBackoff
>> [info] - should set endBackoff with time now
>> [info] Calling propagateMessage
>> [info] - should send message to connectTo actors
>> [info] Scheduler component
>> [info] - should call execute() method
>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>> GenericActor
>> [info] - should Throw IllegalArgumentException
>> [info] - should Result in restart of the actor with sequence of
>> Monitoring: STOP -> RESTART -> START
>> [info] - should call onStart method
>> [info] - should call onRestart method
>> [info] - should restart scheduler
>> [info] Sending STOP to GenericActor
>> [info] - should terminate GenericActor
>> [info] - should call onStop method
>> [info] - should cancel scheduler
>> [info] - should send STOP - TERMINATE message to Monitor
>> [info] - should result in no active actors
>> [info] Creating GenericActor with schedule anc backoff equal to zero
>> [info] - should not start a scheduler
>> [info] - should result in one active actor
>> [info] - should result in no discarded PROCESS messages
>> [info] FeyGenericActorReceiverSpec:
>> [info] Creating a GenericActor with Schedule time defined
>> [info] - should result in scheduler started
>> [info] - should result in onStart method called
>> [info] - should result in START message sent to Monitor
>> [info] - should result in one active actor
>> [info] - should result in normal functioning of GenericActor
>> [info] Sending PROCESS message to GenericReceiver
>> [info] - should log message to Warn saying that the JSON could not be
>> forwarded to FeyCore when JSON is invalid
>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
>> processed has a valid schema
>> [info] - should Download jar from location and send
>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>> [info] Scheduler component
>> [info] - should call execute() method
>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>> GenericActor
>> [info] - should Throw IllegalArgumentException
>> [info] - should Result in restart of the actor with sequence of
>> Monitoring: STOP -> RESTART -> START
>> [info] - should call onStart method
>> [info] - should call onRestart method
>> [info] - should restart scheduler
>> [info] Sending STOP to GenericActor
>> [info] - should terminate GenericActor
>> [info] - should call onStop method
>> [info] - should cancel scheduler
>> [info] - should send STOP - TERMINATE message to Monitor
>> [info] - should result in no active actors
>>
>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>> [info] Total number of tests run: 243
>> [info] Suites: completed 12, aborted 0
>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>> [info] *** 5 TESTS FAILED ***
>> [error] Failed tests:
>> [error]         org.apache.iota.fey.FeyCoreSpec
>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>
>>
>> --
>> Thanks,
>>
>> Gunnar
>> *If you think you can you can, if you think you can't you're right.*
>>
>>
>>
>
>
> --
> Barbara Gomes
> Computer Engineer
> San Jose, CA
>



-- 
Thanks,

Gunnar
*If you think you can you can, if you think you can't you're right.*

Re: fey-core assembly fails

Posted by Barbara Malta Gomes <ba...@gmail.com>.
*@Tony *Do you mind running the tests on your machine as well?

>> cd IOTA_DIR
>> sbt
>> project fey-core
>> assembly

The *assembly* command will run the* tests* *before* generating the *.jar*

Thank you

On Sun, Feb 19, 2017 at 7:45 AM, Barbara Malta Gomes <
barbaramaltagomes@gmail.com> wrote:

> Hi Gunnar,
>
> Which Operational System are you using?
> *sbt *picks the order of the tests execution and it might be the problem
> on your machine.
>
> As you can see in the picture bellow, I pulled the repo from github and
> run the tests and all of them succeeded
>
> [image: Inline image 1]
>
> I'm using Mac OS
>
> About the *ERROR *messages during the tests, those are fey logs caused
> intentionally by the tests.
>
> Also, try to run the tests separated:
>
> >> sbt
> >> project fey-core
> >> test
>
> Regards,
>
> On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:
>
>> Thanks for pointing this out will take a look.
>> -Tony
>>
>>
>> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
>> wrote:
>>
>> Hi,
>>
>> I verified the required versions and then I ran assembly of the fey-core
>> project. 5 failures.
>>
>> [info] - should result in creating a global Performer child actor with
>> the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/G
>> LOBAL-TEST'
>> [info] - should result in creating a Performer child actor with the name '
>> akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER
>> '
>> [info] - should result in one global actor created for orchestration
>> [info] - should result in right number of running actors
>> [info] Stopping performer inside ensemble
>> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
>> PERFORMER-SCHEDULER
>> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(
>> Ensemble.scala:60)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should Send stop message to monitor
>> [info] Stopping ensemble
>> [info] - should Send stop message to monitor
>> [info] - should result in no orchestration running
>> [info] - should not affect global performer
>> [info] Stopping global performer
>> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
>> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
>> GLOBAL-TEST
>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>> GLOBAL-TEST
>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.
>> applyOrElse(GlobalPerformer.scala:49)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>> ormer.scala:28)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestAct
>> orRef.scala:60)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThread
>> Dispatcher.scala:250)
>>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadD
>> ispatcher.scala:283)
>>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingT
>> hreadDispatcher.scala:191)
>>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch
>> .scala:147)
>>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
>>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$
>> FaultHandling$$finishTerminate(FaultHandling.scala:213)
>>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandli
>> ng.scala:172)
>>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.
>> scala:282)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should result in restart the orchestration
>> [info] - should all previous actors restarted
>> [info] Stopping orchestration
>> [info] - should result in empty global
>> [info] EnsembleSpec:
>> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
>> [info] - should result in creation of Ensemble actor '
>> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
>> [info] - should result in sending START to monitor actor
>> [info] - should result in creation of Performer 'TEST-0004'
>> [info] - should result in Empty state variable Ensemble.connectors
>> [info] - should result in one entry added to state variable
>> Ensemble.performer
>> [info] - should result in one right entry to state variable
>> Ensemble.performers_metadata
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
>> [info] - should result in Terminate message of actor 'TEST-0004' and
>> throw RestartEnsemble Exception
>> [info] - should result in Performer 'TEST-0004' restarted
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] Sending PoisonPill to Ensemble
>> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
>> [info] - should result in sending TERMINATE to monitor actor
>> [info] - should result in termination of ensemble and performer
>> [info] - should result in empty IdentifyFeyActors.actorsPath
>> [info] creating more detailed Ensemble
>> [info] - should result in creation of Ensemble actor
>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
>> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to
>> 200ms
>> [info] - should create 'PERFORMER-SCHEDULER' with connection to
>> 'PERFORMER-PARAMS'
>> [info] - should create 'PERFORMER-PARAMS' with no connections
>> [info] - should create 'PERFORMER-PARAMS' with specified params
>> [info] 'PERFORMER-SCHEDULER'
>> [info] - should produce 5 messages in 1 seconds
>> [info] - should produce 10 messages in 2 seconds
>> [info] 'PERFORMER-PARAMS'
>> [info] - should process 5 messages in 1 seconds
>> [info] - should produce 10 messages in 2 seconds
>> [info] Stopping any Performer that belongs to the Ensemble
>> [info] - should force restart of entire Ensemble
>> [info] - should result in sending STOP - RESTART to monitor actor
>> [info] - should keep ensemble actorRef when restarted
>> [info] - should stop and start the performer with a new reference
>> [info] Restarting an Ensemble
>> [info] - should Consuming left messages on Process
>> [info] - should Cleanup TestProbs
>> [info] Redefining TestProbe for performers
>> [info] - should start receiving messages
>> [info] Sending PoisonPill to detailed Ensemble
>> [info] - should result in termination of Ensemble
>> [info] - should result in empty IdentifyFeyActors.actorsPath
>> [info] creating Ensemble with Backoff performer
>> [info] - should result in creation of Ensemble actor
>> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
>> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
>> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
>> second
>> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
>> [info] Performer with backoff enabled
>> [info] - should not process messages during the backoff period
>> [info] Performer with autoScale
>> [info] - should result in router and routees created
>> [info] IdentifyFeyActorsSpec:
>> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in one path added to IdentifyFeyActors.actorsPath
>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>> [info] Creating a new actor in the system and sending
>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
>> [info] - should result in matching paths
>> [info] Stopping previous added actor and sending
>> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
>> [info] - should result in going back to have just one path added to
>> IdentifyFeyActors.actorsPath
>> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
>> [info] WatchServiceReceiverSpec:
>> [info] Creating WatchServiceReceiver
>> [info] - should process initial files in the JSON repository
>> [info] Start a Thread with WatchServiceReceiver
>> [info] - should Start Thread
>> [info] Start watching directory
>> [info] - should Starting receiving CREATED event
>> [info] - should Starting receiving UPDATE event
>> [info] processJson
>> [info] - should log to warn level when json has invalid schema
>> [info] interrupt watchservice
>> [info] - should interrupt thread
>> [info] FeyCoreSpec:
>> [info] Creating FeyCore
>> [info] - should result in creating a child actor with the name
>> 'FEY_IDENTIFIER'
>> [info] - should result in sending START message to Monitor actor
>> [info] Sending FeyCore.START to FeyCore
>> [info] - should result in creating a child actor with the name
>> 'JSON_RECEIVER'
>> [info] - should result in starting FeyWatchService Thread
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>> FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'TEST-ACTOR'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>> [info] - should result in creating a Performer child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>> [info] - should result in creating a Performer child actor with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'TEST-ACTOR'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
>> FeyCore
>> [info] - should result in creating a new Performer child actor with the
>> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
>> DELETE ensemble to FeyCore
>> [info] - should result in termination of Ensemble with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
>> same Timestamp to FeyCore
>> [info] - should result in logging a 'not recreated' message at Warn
>> [info] Sending FeyCore.JSON_TREE to FeyCore
>> [info] - should result in logging a 6 path messages at Info
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
>> FeyCore
>> [info] - should result in termination of Orchestration with the name
>> 'TEST-ACTOR'
>> [info] - should result in sending TERMINATE message to Monitor actor
>> [info] - should result in termination of Ensemble with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002'
>> [info] - should result in termination of Performer with the name
>> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
>> [info] - should result in removing key 'TEST-ACTOR' at
>> FEY_CACHE.activeOrchestrations
>> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
>> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
>> had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
>> [info] - should result in sending Terminate message to Monitor actor ***
>> FAILED ***
>> [info]   java.lang.AssertionError: assertion failed: timeout (1 second)
>> during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TE
>> RMINATE
>> [info]   at scala.Predef$.assert(Predef.scala:170)
>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(TestK
>> it.scala:435)
>> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:
>> 431)
>> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$
>> mcV$sp$37.apply(FeyCoreSpec.scala:150)
>> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$
>> mcV$sp$37.apply(FeyCoreSpec.scala:150)
>> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
>> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
>> [info]   ...
>> [info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED
>> ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
>> was not empty (FeyCoreSpec.scala:153)
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
>> FeyCore of a GenericReceiverActor
>> [info] - should result in creating an Orchestration child actor with the
>> name 'RECEIVER_ORCHESTRATION'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'RECEIVER_ORCHESTRATION'
>> [info] Sending PROCESS message to the Receiver Performer
>> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'RECEIVED-BY-ACTOR-RECEIVER'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
>> [info] - should result in creating a Performer child actor with the name
>> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
>> [info] - should result in one new entry to FEY_CACHE.activeOrchestrations
>> with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
>> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY
>> -MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
>> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY
>> -TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION"
>> -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCH
>> ESTRATION#-560956299])) had size 4 instead of expected size 2
>> (FeyCoreSpec.scala:200)
>> [info] Sending PROCESS message to the Receiver Performer with command
>> DELETE
>> [info] - should STOP running orchestration
>> [info] - should result in one entry in FEY_CACHE.activeOrchestrations ***
>> FAILED ***
>> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
>> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
>> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TE
>> ST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3 instead
>> of expected size 1 (FeyCoreSpec.scala:213)
>> [info] Sending PROCESS message to Receiver with checkpoint enabled
>> [info] - should Save received JSON to checkpoint dir
>> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
>> performer command to FeyCore
>> [info] - should result in creating an Orchestration child actor with the
>> name 'GLOBAL-PERFORMER'
>> [info] - should result in creating an Ensemble child actor with the name
>> 'GLOBAL-PERFORMER/ENS-GLOBAL'
>> [info] - should result in creating a global Performer child actor with
>> the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
>> [info] - should result in creating a Performer child actor with the name
>> 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
>> [info] - should result in new entry to FEY_CACHE.activeOrchestrations
>> with key 'GLOBAL-PERFORMER'
>> [info] - should result in one global actor created for orchestration
>> [info] - should result in globa metadata add to table
>> [info] - should result in right running actors
>> [info] Stopping Global actor
>> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
>> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
>> GLOBAL-TEST
>> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
>> GLOBAL-TEST
>>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.
>> applyOrElse(GlobalPerformer.scala:49)
>>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerf
>> ormer.scala:28)
>>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(Death
>> Watch.scala:44)
>>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.
>> java:260)
>>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(
>> ForkJoinPool.java:1339)
>>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPoo
>> l.java:1979)
>>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinW
>> orkerThread.java:107)
>>
>> [info] - should result in sending logging error
>> [info] - should result in orchestration restarted
>> [info] - should all previous actors restarted
>> [info] Stopping orchestration with global performer
>> [info] - should result in sending TERMINATE message to Monitor actor
>> [info] - should result in no global actors for orchestration
>> [info] Stopping FeyCore
>> [info] - should result in sending STOP message to Monitor actor
>> [info] BaseAkkaSpec:
>> [info] JsonReceiverSpec:
>> [info] Executing validJson in JsonReceiver
>> [info] - should return false when json schema is not right
>> [info] - should log message to Error
>> [info] - should return true when Json schema is valid
>> [info] Executing checkForLocation in JsonReceiver
>> [info] - should log message at Debug level
>> [info] - should download jar dynamically from URL
>> [info] Start a Thread with the JSON receiver
>> [info] - should Start Thread
>> [info] - should execute execute() method inside run
>> [info] Interrupting the receiver Thread
>> [info] - should Throw Interrupted exception
>> [info] - should execute exceptionOnRun method
>> [info] FeyGenericActorSpec:
>> [info] Creating a GenericActor with Schedule time defined
>> [info] - should result in scheduler started
>> [info] - should result in onStart method called
>> [info] - should result in START message sent to Monitor
>> [info] - should result in one active actor
>> [info] Backoff of GenericActor
>> [info] - should be zero until the first PROCESS message
>> [info] - should change when first PROCESS message was received
>> [info] Sending PROCESS message to GenericActor
>> [info] - should call processMessage method
>> [info] customReceive method
>> [info] - should process any non treated message
>> [info] Sending PROCESS message to GenericActor
>> [info] - should be discarded when backoff is enabled
>> [info] - should be processed when backoff has finished
>> [info] Calling startBackoff
>> [info] - should set endBackoff with time now
>> [info] Calling propagateMessage
>> [info] - should send message to connectTo actors
>> [info] Scheduler component
>> [info] - should call execute() method
>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>> GenericActor
>> [info] - should Throw IllegalArgumentException
>> [info] - should Result in restart of the actor with sequence of
>> Monitoring: STOP -> RESTART -> START
>> [info] - should call onStart method
>> [info] - should call onRestart method
>> [info] - should restart scheduler
>> [info] Sending STOP to GenericActor
>> [info] - should terminate GenericActor
>> [info] - should call onStop method
>> [info] - should cancel scheduler
>> [info] - should send STOP - TERMINATE message to Monitor
>> [info] - should result in no active actors
>> [info] Creating GenericActor with schedule anc backoff equal to zero
>> [info] - should not start a scheduler
>> [info] - should result in one active actor
>> [info] - should result in no discarded PROCESS messages
>> [info] FeyGenericActorReceiverSpec:
>> [info] Creating a GenericActor with Schedule time defined
>> [info] - should result in scheduler started
>> [info] - should result in onStart method called
>> [info] - should result in START message sent to Monitor
>> [info] - should result in one active actor
>> [info] - should result in normal functioning of GenericActor
>> [info] Sending PROCESS message to GenericReceiver
>> [info] - should log message to Warn saying that the JSON could not be
>> forwarded to FeyCore when JSON is invalid
>> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
>> processed has a valid schema
>> [info] - should Download jar from location and send
>> ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
>> [info] Scheduler component
>> [info] - should call execute() method
>> [info] Sending EXCEPTION(IllegalArgumentException) message to
>> GenericActor
>> [info] - should Throw IllegalArgumentException
>> [info] - should Result in restart of the actor with sequence of
>> Monitoring: STOP -> RESTART -> START
>> [info] - should call onStart method
>> [info] - should call onRestart method
>> [info] - should restart scheduler
>> [info] Sending STOP to GenericActor
>> [info] - should terminate GenericActor
>> [info] - should call onStop method
>> [info] - should cancel scheduler
>> [info] - should send STOP - TERMINATE message to Monitor
>> [info] - should result in no active actors
>>
>> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
>> [info] Total number of tests run: 243
>> [info] Suites: completed 12, aborted 0
>> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
>> [info] *** 5 TESTS FAILED ***
>> [error] Failed tests:
>> [error]         org.apache.iota.fey.FeyCoreSpec
>> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
>> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>>
>>
>> --
>> Thanks,
>>
>> Gunnar
>> *If you think you can you can, if you think you can't you're right.*
>>
>>
>>
>
>
> --
> Barbara Gomes
> Computer Engineer
> San Jose, CA
>



-- 
Barbara Gomes
Computer Engineer
San Jose, CA

Re: fey-core assembly fails

Posted by Barbara Malta Gomes <ba...@gmail.com>.
Hi Gunnar,

Which Operational System are you using?
*sbt *picks the order of the tests execution and it might be the problem on
your machine.

As you can see in the picture bellow, I pulled the repo from github and run
the tests and all of them succeeded

[image: Inline image 1]

I'm using Mac OS

About the *ERROR *messages during the tests, those are fey logs caused
intentionally by the tests.

Also, try to run the tests separated:

>> sbt
>> project fey-core
>> test

Regards,

On Sat, Feb 18, 2017 at 11:43 PM, Tony Faustini <to...@litbit.com> wrote:

> Thanks for pointing this out will take a look.
> -Tony
>
>
> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com>
> wrote:
>
> Hi,
>
> I verified the required versions and then I ran assembly of the fey-core
> project. 5 failures.
>
> [info] - should result in creating a global Performer child actor with the
> name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/
> GLOBAL-TEST'
> [info] - should result in creating a Performer child actor with the name '
> akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER'
> [info] - should result in one global actor created for orchestration
> [info] - should result in right number of running actors
> [info] Stopping performer inside ensemble
> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8]
> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer
> PERFORMER-SCHEDULER
> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(
> Ensemble.scala:60)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(
> DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(
> ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.
> runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(
> ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(
> ForkJoinWorkerThread.java:107)
>
> [info] - should Send stop message to monitor
> [info] Stopping ensemble
> [info] - should Send stop message to monitor
> [info] - should result in no orchestration running
> [info] - should not affect global performer
> [info] Stopping global performer
> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7]
> [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer
> GLOBAL-TEST
> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
> GLOBAL-TEST
>         at org.apache.iota.fey.GlobalPerformer$$anonfun$
> receive$1.applyOrElse(GlobalPerformer.scala:49)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(
> GlobalPerformer.scala:28)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(
> DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(
> TestActorRef.scala:60)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.testkit.CallingThreadDispatcher.process$1(
> CallingThreadDispatcher.scala:250)
>         at akka.testkit.CallingThreadDispatcher.runQueue(
> CallingThreadDispatcher.scala:283)
>         at akka.testkit.CallingThreadDispatcher.systemDispatch(
> CallingThreadDispatcher.scala:191)
>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(
> Dispatch.scala:147)
>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
>         at akka.actor.dungeon.FaultHandling$class.akka$
> actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:213)
>         at akka.actor.dungeon.FaultHandling$class.terminate(
> FaultHandling.scala:172)
>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>         at akka.dispatch.Mailbox.processAllSystemMessages(
> Mailbox.scala:282)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(
> ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.
> runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(
> ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(
> ForkJoinWorkerThread.java:107)
>
> [info] - should result in restart the orchestration
> [info] - should all previous actors restarted
> [info] Stopping orchestration
> [info] - should result in empty global
> [info] EnsembleSpec:
> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
> [info] - should result in creation of Ensemble actor '
> akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
> [info] - should result in sending START to monitor actor
> [info] - should result in creation of Performer 'TEST-0004'
> [info] - should result in Empty state variable Ensemble.connectors
> [info] - should result in one entry added to state variable
> Ensemble.performer
> [info] - should result in one right entry to state variable
> Ensemble.performers_metadata
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
> [info] - should result in Terminate message of actor 'TEST-0004' and throw
> RestartEnsemble Exception
> [info] - should result in Performer 'TEST-0004' restarted
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] Sending PoisonPill to Ensemble
> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
> [info] - should result in sending TERMINATE to monitor actor
> [info] - should result in termination of ensemble and performer
> [info] - should result in empty IdentifyFeyActors.actorsPath
> [info] creating more detailed Ensemble
> [info] - should result in creation of Ensemble actor
> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to
> 200ms
> [info] - should create 'PERFORMER-SCHEDULER' with connection to
> 'PERFORMER-PARAMS'
> [info] - should create 'PERFORMER-PARAMS' with no connections
> [info] - should create 'PERFORMER-PARAMS' with specified params
> [info] 'PERFORMER-SCHEDULER'
> [info] - should produce 5 messages in 1 seconds
> [info] - should produce 10 messages in 2 seconds
> [info] 'PERFORMER-PARAMS'
> [info] - should process 5 messages in 1 seconds
> [info] - should produce 10 messages in 2 seconds
> [info] Stopping any Performer that belongs to the Ensemble
> [info] - should force restart of entire Ensemble
> [info] - should result in sending STOP - RESTART to monitor actor
> [info] - should keep ensemble actorRef when restarted
> [info] - should stop and start the performer with a new reference
> [info] Restarting an Ensemble
> [info] - should Consuming left messages on Process
> [info] - should Cleanup TestProbs
> [info] Redefining TestProbe for performers
> [info] - should start receiving messages
> [info] Sending PoisonPill to detailed Ensemble
> [info] - should result in termination of Ensemble
> [info] - should result in empty IdentifyFeyActors.actorsPath
> [info] creating Ensemble with Backoff performer
> [info] - should result in creation of Ensemble actor
> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1
> second
> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
> [info] Performer with backoff enabled
> [info] - should not process messages during the backoff period
> [info] Performer with autoScale
> [info] - should result in router and routees created
> [info] IdentifyFeyActorsSpec:
> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in one path added to IdentifyFeyActors.actorsPath
> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
> [info] Creating a new actor in the system and sending
> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] - should result in matching paths
> [info] Stopping previous added actor and sending
> IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in going back to have just one path added to
> IdentifyFeyActors.actorsPath
> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
> [info] WatchServiceReceiverSpec:
> [info] Creating WatchServiceReceiver
> [info] - should process initial files in the JSON repository
> [info] Start a Thread with WatchServiceReceiver
> [info] - should Start Thread
> [info] Start watching directory
> [info] - should Starting receiving CREATED event
> [info] - should Starting receiving UPDATE event
> [info] processJson
> [info] - should log to warn level when json has invalid schema
> [info] interrupt watchservice
> [info] - should interrupt thread
> [info] FeyCoreSpec:
> [info] Creating FeyCore
> [info] - should result in creating a child actor with the name
> 'FEY_IDENTIFIER'
> [info] - should result in sending START message to Monitor actor
> [info] Sending FeyCore.START to FeyCore
> [info] - should result in creating a child actor with the name
> 'JSON_RECEIVER'
> [info] - should result in starting FeyWatchService Thread
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
> FeyCore
> [info] - should result in creating an Orchestration child actor with the
> name 'TEST-ACTOR'
> [info] - should result in creating an Ensemble child actor with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0001'
> [info] - should result in creating an Ensemble child actor with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0002'
> [info] - should result in creating a Performer child actor with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
> [info] - should result in creating a Performer child actor with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with
> key 'TEST-ACTOR'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to
> FeyCore
> [info] - should result in creating a new Performer child actor with the
> name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and
> DELETE ensemble to FeyCore
> [info] - should result in termination of Ensemble with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0001'
> [info] - should result in termination of Performer with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
> [info] - should result in termination of Performer with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and
> same Timestamp to FeyCore
> [info] - should result in logging a 'not recreated' message at Warn
> [info] Sending FeyCore.JSON_TREE to FeyCore
> [info] - should result in logging a 6 path messages at Info
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to
> FeyCore
> [info] - should result in termination of Orchestration with the name
> 'TEST-ACTOR'
> [info] - should result in sending TERMINATE message to Monitor actor
> [info] - should result in termination of Ensemble with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0002'
> [info] - should result in termination of Performer with the name
> 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
> [info] - should result in removing key 'TEST-ACTOR' at
> FEY_CACHE.activeOrchestrations
> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
> had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
> [info] - should result in sending Terminate message to Monitor actor ***
> FAILED ***
> [info]   java.lang.AssertionError: assertion failed: timeout (1 second)
> during expectMsgClass waiting for class org.apache.iota.fey.Monitor$
> TERMINATE
> [info]   at scala.Predef$.assert(Predef.scala:170)
> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(
> TestKit.scala:435)
> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.
> scala:431)
> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$
> anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$
> anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
> [info]   ...
> [info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED
> ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]))
> was not empty (FeyCoreSpec.scala:153)
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to
> FeyCore of a GenericReceiverActor
> [info] - should result in creating an Orchestration child actor with the
> name 'RECEIVER_ORCHESTRATION'
> [info] - should result in creating an Ensemble child actor with the name
> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
> [info] - should result in creating a Performer child actor with the name
> 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with
> key 'RECEIVER_ORCHESTRATION'
> [info] Sending PROCESS message to the Receiver Performer
> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
> [info] - should result in creating an Orchestration child actor with the
> name 'RECEIVED-BY-ACTOR-RECEIVER'
> [info] - should result in creating an Ensemble child actor with the name
> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
> [info] - should result in creating an Ensemble child actor with the name
> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
> [info] - should result in creating a Performer child actor with the name
> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
> [info] - should result in creating a Performer child actor with the name
> 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
> [info] - should result in one new entry to FEY_CACHE.activeOrchestrations
> with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null),
> "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://
> FEY-MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]),
> "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-
> ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[
> akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had
> size 4 instead of expected size 2 (FeyCoreSpec.scala:200)
> [info] Sending PROCESS message to the Receiver Performer with command
> DELETE
> [info] - should STOP running orchestration
> [info] - should result in one entry in FEY_CACHE.activeOrchestrations ***
> FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" ->
> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]),
> "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-
> TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3
> instead of expected size 1 (FeyCoreSpec.scala:213)
> [info] Sending PROCESS message to Receiver with checkpoint enabled
> [info] - should Save received JSON to checkpoint dir
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL
> performer command to FeyCore
> [info] - should result in creating an Orchestration child actor with the
> name 'GLOBAL-PERFORMER'
> [info] - should result in creating an Ensemble child actor with the name
> 'GLOBAL-PERFORMER/ENS-GLOBAL'
> [info] - should result in creating a global Performer child actor with the
> name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
> [info] - should result in creating a Performer child actor with the name
> 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with
> key 'GLOBAL-PERFORMER'
> [info] - should result in one global actor created for orchestration
> [info] - should result in globa metadata add to table
> [info] - should result in right running actors
> [info] Stopping Global actor
> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3]
> [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer
> GLOBAL-TEST
> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer
> GLOBAL-TEST
>         at org.apache.iota.fey.GlobalPerformer$$anonfun$
> receive$1.applyOrElse(GlobalPerformer.scala:49)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(
> GlobalPerformer.scala:28)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(
> DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(
> ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.
> runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(
> ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(
> ForkJoinWorkerThread.java:107)
>
> [info] - should result in sending logging error
> [info] - should result in orchestration restarted
> [info] - should all previous actors restarted
> [info] Stopping orchestration with global performer
> [info] - should result in sending TERMINATE message to Monitor actor
> [info] - should result in no global actors for orchestration
> [info] Stopping FeyCore
> [info] - should result in sending STOP message to Monitor actor
> [info] BaseAkkaSpec:
> [info] JsonReceiverSpec:
> [info] Executing validJson in JsonReceiver
> [info] - should return false when json schema is not right
> [info] - should log message to Error
> [info] - should return true when Json schema is valid
> [info] Executing checkForLocation in JsonReceiver
> [info] - should log message at Debug level
> [info] - should download jar dynamically from URL
> [info] Start a Thread with the JSON receiver
> [info] - should Start Thread
> [info] - should execute execute() method inside run
> [info] Interrupting the receiver Thread
> [info] - should Throw Interrupted exception
> [info] - should execute exceptionOnRun method
> [info] FeyGenericActorSpec:
> [info] Creating a GenericActor with Schedule time defined
> [info] - should result in scheduler started
> [info] - should result in onStart method called
> [info] - should result in START message sent to Monitor
> [info] - should result in one active actor
> [info] Backoff of GenericActor
> [info] - should be zero until the first PROCESS message
> [info] - should change when first PROCESS message was received
> [info] Sending PROCESS message to GenericActor
> [info] - should call processMessage method
> [info] customReceive method
> [info] - should process any non treated message
> [info] Sending PROCESS message to GenericActor
> [info] - should be discarded when backoff is enabled
> [info] - should be processed when backoff has finished
> [info] Calling startBackoff
> [info] - should set endBackoff with time now
> [info] Calling propagateMessage
> [info] - should send message to connectTo actors
> [info] Scheduler component
> [info] - should call execute() method
> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
> [info] - should Throw IllegalArgumentException
> [info] - should Result in restart of the actor with sequence of
> Monitoring: STOP -> RESTART -> START
> [info] - should call onStart method
> [info] - should call onRestart method
> [info] - should restart scheduler
> [info] Sending STOP to GenericActor
> [info] - should terminate GenericActor
> [info] - should call onStop method
> [info] - should cancel scheduler
> [info] - should send STOP - TERMINATE message to Monitor
> [info] - should result in no active actors
> [info] Creating GenericActor with schedule anc backoff equal to zero
> [info] - should not start a scheduler
> [info] - should result in one active actor
> [info] - should result in no discarded PROCESS messages
> [info] FeyGenericActorReceiverSpec:
> [info] Creating a GenericActor with Schedule time defined
> [info] - should result in scheduler started
> [info] - should result in onStart method called
> [info] - should result in START message sent to Monitor
> [info] - should result in one active actor
> [info] - should result in normal functioning of GenericActor
> [info] Sending PROCESS message to GenericReceiver
> [info] - should log message to Warn saying that the JSON could not be
> forwarded to FeyCore when JSON is invalid
> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be
> processed has a valid schema
> [info] - should Download jar from location and send ORCHESTRATION_RECEIVED
> to FeyCore when JSON has a location defined
> [info] Scheduler component
> [info] - should call execute() method
> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
> [info] - should Throw IllegalArgumentException
> [info] - should Result in restart of the actor with sequence of
> Monitoring: STOP -> RESTART -> START
> [info] - should call onStart method
> [info] - should call onRestart method
> [info] - should restart scheduler
> [info] Sending STOP to GenericActor
> [info] - should terminate GenericActor
> [info] - should call onStop method
> [info] - should cancel scheduler
> [info] - should send STOP - TERMINATE message to Monitor
> [info] - should result in no active actors
>
> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
> [info] Total number of tests run: 243
> [info] Suites: completed 12, aborted 0
> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
> [info] *** 5 TESTS FAILED ***
> [error] Failed tests:
> [error]         org.apache.iota.fey.FeyCoreSpec
> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
>
>
> --
> Thanks,
>
> Gunnar
> *If you think you can you can, if you think you can't you're right.*
>
>
>


-- 
Barbara Gomes
Computer Engineer
San Jose, CA

Re: fey-core assembly fails

Posted by Tony Faustini <to...@litbit.com>.
Thanks for pointing this out will take a look.
-Tony


> On Feb 18, 2017, at 11:39 PM, Gunnar Tapper <ta...@gmail.com> wrote:
> 
> Hi,
> 
> I verified the required versions and then I ran assembly of the fey-core project. 5 failures. 
> 
> [info] - should result in creating a global Performer child actor with the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/GLOBAL_MANAGER/GLOBAL-TEST'
> [info] - should result in creating a Performer child actor with the name 'akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL/PERFORMER-SCHEDULER'
> [info] - should result in one global actor created for orchestration
> [info] - should result in right number of running actors
> [info] Stopping performer inside ensemble
> [ERROR] [02/19/2017 00:35:47.820] [FEY-TEST-akka.actor.default-dispatcher-8] [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH/ENS-GLOBAL] DEAD Performer PERFORMER-SCHEDULER
> org.apache.iota.fey.RestartEnsemble: DEAD Performer PERFORMER-SCHEDULER
>         at org.apache.iota.fey.Ensemble$$anonfun$receive$1.applyOrElse(Ensemble.scala:60)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.Ensemble.aroundReceive(Ensemble.scala:29)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> 
> [info] - should Send stop message to monitor
> [info] Stopping ensemble
> [info] - should Send stop message to monitor
> [info] - should result in no orchestration running
> [info] - should not affect global performer
> [info] Stopping global performer
> [ERROR] [02/19/2017 00:35:49.023] [FEY-TEST-akka.actor.default-dispatcher-7] [akka://FEY-TEST/system/CORE-27/GLOBAL-ORCH] DEAD Global Performer GLOBAL-TEST
> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer GLOBAL-TEST
>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.testkit.TestActorRef$$anon$1.autoReceiveMessage(TestActorRef.scala:60)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.testkit.CallingThreadDispatcher.process$1(CallingThreadDispatcher.scala:250)
>         at akka.testkit.CallingThreadDispatcher.runQueue(CallingThreadDispatcher.scala:283)
>         at akka.testkit.CallingThreadDispatcher.systemDispatch(CallingThreadDispatcher.scala:191)
>         at akka.actor.dungeon.Dispatch$class.sendSystemMessage(Dispatch.scala:147)
>         at akka.actor.ActorCell.sendSystemMessage(ActorCell.scala:374)
>         at akka.actor.LocalActorRef.sendSystemMessage(ActorRef.scala:402)
>         at akka.actor.dungeon.FaultHandling$class.akka$actor$dungeon$FaultHandling$$finishTerminate(FaultHandling.scala:213)
>         at akka.actor.dungeon.FaultHandling$class.terminate(FaultHandling.scala:172)
>         at akka.actor.ActorCell.terminate(ActorCell.scala:374)
>         at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:467)
>         at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483)
>         at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:260)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> 
> [info] - should result in restart the orchestration
> [info] - should all previous actors restarted
> [info] Stopping orchestration
> [info] - should result in empty global
> [info] EnsembleSpec:
> [info] Creating a simple Ensemble MY-ENSEMBLE-0005
> [info] - should result in creation of Ensemble actor 'akka://FEY-TEST/system/ENSEMBLE-34/MY-ENSEMBLE-0005'
> [info] - should result in sending START to monitor actor
> [info] - should result in creation of Performer 'TEST-0004'
> [info] - should result in Empty state variable Ensemble.connectors
> [info] - should result in one entry added to state variable Ensemble.performer
> [info] - should result in one right entry to state variable Ensemble.performers_metadata
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] Sending Ensemble.STOP_PERFORMERS to Ensemble
> [info] - should result in Terminate message of actor 'TEST-0004' and throw RestartEnsemble Exception
> [info] - should result in Performer 'TEST-0004' restarted
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] Sending PoisonPill to Ensemble
> [info] - should result in termination of actor 'MY-ENSEMBLE-0005'
> [info] - should result in sending TERMINATE to monitor actor
> [info] - should result in termination of ensemble and performer
> [info] - should result in empty IdentifyFeyActors.actorsPath
> [info] creating more detailed Ensemble
> [info] - should result in creation of Ensemble actor
> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
> [info] - should create connection PERFORMER-SCHEDULER -> PERFORMER-PARAMS
> [info] - should create 'PERFORMER-SCHEDULER' with schedule time equal to 200ms
> [info] - should create 'PERFORMER-SCHEDULER' with connection to 'PERFORMER-PARAMS'
> [info] - should create 'PERFORMER-PARAMS' with no connections
> [info] - should create 'PERFORMER-PARAMS' with specified params
> [info] 'PERFORMER-SCHEDULER'
> [info] - should produce 5 messages in 1 seconds
> [info] - should produce 10 messages in 2 seconds
> [info] 'PERFORMER-PARAMS'
> [info] - should process 5 messages in 1 seconds
> [info] - should produce 10 messages in 2 seconds
> [info] Stopping any Performer that belongs to the Ensemble
> [info] - should force restart of entire Ensemble
> [info] - should result in sending STOP - RESTART to monitor actor
> [info] - should keep ensemble actorRef when restarted
> [info] - should stop and start the performer with a new reference
> [info] Restarting an Ensemble
> [info] - should Consuming left messages on Process
> [info] - should Cleanup TestProbs
> [info] Redefining TestProbe for performers
> [info] - should start receiving messages
> [info] Sending PoisonPill to detailed Ensemble
> [info] - should result in termination of Ensemble
> [info] - should result in empty IdentifyFeyActors.actorsPath
> [info] creating Ensemble with Backoff performer
> [info] - should result in creation of Ensemble actor
> [info] - should result in creation of Performer 'PERFORMER-SCHEDULER'
> [info] - should result in creation of Performer 'PERFORMER-PARAMS'
> [info] - should create 'PERFORMER-PARAMS' with backoff time equal to 1 second
> [info] - should create 'PERFORMER-SCHEDULER' with autoScale equal to true
> [info] Performer with backoff enabled
> [info] - should not process messages during the backoff period
> [info] Performer with autoScale
> [info] - should result in router and routees created
> [info] IdentifyFeyActorsSpec:
> [info] Sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in one path added to IdentifyFeyActors.actorsPath
> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
> [info] Creating a new actor in the system and sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in two paths added to IdentifyFeyActors.actorsPath
> [info] - should result in matching paths
> [info] Stopping previous added actor and sending IdentifyFeyActors.IDENTIFY_TREE to IdentifyFeyActors
> [info] - should result in going back to have just one path added to IdentifyFeyActors.actorsPath
> [info] - should result in path 'akka://FEY-TEST/user/GLOBAL-IDENTIFIER'
> [info] WatchServiceReceiverSpec:
> [info] Creating WatchServiceReceiver
> [info] - should process initial files in the JSON repository
> [info] Start a Thread with WatchServiceReceiver
> [info] - should Start Thread
> [info] Start watching directory
> [info] - should Starting receiving CREATED event
> [info] - should Starting receiving UPDATE event
> [info] processJson
> [info] - should log to warn level when json has invalid schema
> [info] interrupt watchservice
> [info] - should interrupt thread
> [info] FeyCoreSpec:
> [info] Creating FeyCore
> [info] - should result in creating a child actor with the name 'FEY_IDENTIFIER'
> [info] - should result in sending START message to Monitor actor
> [info] Sending FeyCore.START to FeyCore
> [info] - should result in creating a child actor with the name 'JSON_RECEIVER'
> [info] - should result in starting FeyWatchService Thread
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to FeyCore
> [info] - should result in creating an Orchestration child actor with the name 'TEST-ACTOR'
> [info] - should result in creating an Ensemble child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001'
> [info] - should result in creating an Ensemble child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0002'
> [info] - should result in creating a Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
> [info] - should result in creating a Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'TEST-ACTOR'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command to FeyCore
> [info] - should result in creating a new Performer child actor with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with UPDATE command and DELETE ensemble to FeyCore
> [info] - should result in termination of Ensemble with the name 'TEST-ACTOR/MY-ENSEMBLE-0001'
> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0001'
> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0001/TEST-0002'
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with RECREATE command and same Timestamp to FeyCore
> [info] - should result in logging a 'not recreated' message at Warn
> [info] Sending FeyCore.JSON_TREE to FeyCore
> [info] - should result in logging a 6 path messages at Info
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with DELETE command to FeyCore
> [info] - should result in termination of Orchestration with the name 'TEST-ACTOR'
> [info] - should result in sending TERMINATE message to Monitor actor
> [info] - should result in termination of Ensemble with the name 'TEST-ACTOR/MY-ENSEMBLE-0002'
> [info] - should result in termination of Performer with the name 'TEST-ACTOR/MY-ENSEMBLE-0002/TEST-0001'
> [info] - should result in removing key 'TEST-ACTOR' at FEY_CACHE.activeOrchestrations
> [info] Sending FeyCore.STOP_EMPTY_ORCHESTRATION to FeyCore
> [info] - should result in termination of 'TEST-ORCH-2' *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) had size 2 instead of expected size 1 (FeyCoreSpec.scala:144)
> [info] - should result in sending Terminate message to Monitor actor *** FAILED ***
> [info]   java.lang.AssertionError: assertion failed: timeout (1 second) during expectMsgClass waiting for class org.apache.iota.fey.Monitor$TERMINATE
> [info]   at scala.Predef$.assert(Predef.scala:170)
> [info]   at akka.testkit.TestKitBase$class.expectMsgClass_internal(TestKit.scala:435)
> [info]   at akka.testkit.TestKitBase$class.expectMsgClass(TestKit.scala:431)
> [info]   at akka.testkit.TestKit.expectMsgClass(TestKit.scala:737)
> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
> [info]   at org.apache.iota.fey.FeyCoreSpec$$anonfun$9$$anonfun$apply$mcV$sp$37.apply(FeyCoreSpec.scala:150)
> [info]   at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
> [info]   at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
> [info]   at org.scalatest.Transformer.apply(Transformer.scala:22)
> [info]   at org.scalatest.Transformer.apply(Transformer.scala:20)
> [info]   ...
> [info] - should result in empty FEY_CACHE.activeOrchestrations *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067])) was not empty (FeyCoreSpec.scala:153)
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE command to FeyCore of a GenericReceiverActor
> [info] - should result in creating an Orchestration child actor with the name 'RECEIVER_ORCHESTRATION'
> [info] - should result in creating an Ensemble child actor with the name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE'
> [info] - should result in creating a Performer child actor with the name 'RECEIVER_ORCHESTRATION/RECEIVER-ENSEMBLE/MY_RECEIVER_PERFORMER'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'RECEIVER_ORCHESTRATION'
> [info] Sending PROCESS message to the Receiver Performer
> [info] - should Send FeyCore.ORCHESTRATION_RECEIVED to FeyCore
> [info] - should result in creating an Orchestration child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER'
> [info] - should result in creating an Ensemble child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001'
> [info] - should result in creating an Ensemble child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002'
> [info] - should result in creating a Performer child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0002/TEST-0001'
> [info] - should result in creating a Performer child actor with the name 'RECEIVED-BY-ACTOR-RECEIVER/MY-ENSEMBLE-REC-0001/TEST-0001'
> [info] - should result in one new entry to FEY_CACHE.activeOrchestrations with key 'RECEIVED-BY-ACTOR-RECEIVER' *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "RECEIVED-BY-ACTOR-RECEIVER" -> (213263914979,Actor[akka://FEY-MANAGEMENT-SYSTEM/user/FEY-CORE/RECEIVED-BY-ACTOR-RECEIVER#1213682574]), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 4 instead of expected size 2 (FeyCoreSpec.scala:200)
> [info] Sending PROCESS message to the Receiver Performer with command DELETE
> [info] - should STOP running orchestration
> [info] - should result in one entry in FEY_CACHE.activeOrchestrations *** FAILED ***
> [info]   Map("TEST_ORCHESTRATION_FOR_UTILS" -> (,null), "TEST-ORCH-2" -> (213263914979,Actor[akka://FEY-TEST/user/FEY-CORE/TEST-ORCH-2#-2041630067]), "RECEIVER_ORCHESTRATION" -> (591997890,Actor[akka://FEY-TEST/user/FEY-CORE/RECEIVER_ORCHESTRATION#-560956299])) had size 3 instead of expected size 1 (FeyCoreSpec.scala:213)
> [info] Sending PROCESS message to Receiver with checkpoint enabled
> [info] - should Save received JSON to checkpoint dir
> [info] Sending FeyCore.ORCHESTRATION_RECEIVED with CREATE AND GLOBAL performer command to FeyCore
> [info] - should result in creating an Orchestration child actor with the name 'GLOBAL-PERFORMER'
> [info] - should result in creating an Ensemble child actor with the name 'GLOBAL-PERFORMER/ENS-GLOBAL'
> [info] - should result in creating a global Performer child actor with the name 'GLOBAL-PERFORMER/GLOBAL_MANAGER/GLOBAL-TEST'
> [info] - should result in creating a Performer child actor with the name 'GLOBAL-PERFORMER/ENS-GLOBAL/PERFORMER-SCHEDULER'
> [info] - should result in new entry to FEY_CACHE.activeOrchestrations with key 'GLOBAL-PERFORMER'
> [info] - should result in one global actor created for orchestration
> [info] - should result in globa metadata add to table
> [info] - should result in right running actors
> [info] Stopping Global actor
> [ERROR] [02/19/2017 00:36:09.279] [FEY-TEST-akka.actor.default-dispatcher-3] [akka://FEY-TEST/user/FEY-CORE/GLOBAL-PERFORMER] DEAD Global Performer GLOBAL-TEST
> org.apache.iota.fey.RestartGlobalPerformers: DEAD Global Performer GLOBAL-TEST
>         at org.apache.iota.fey.GlobalPerformer$$anonfun$receive$1.applyOrElse(GlobalPerformer.scala:49)
>         at akka.actor.Actor$class.aroundReceive(Actor.scala:484)
>         at org.apache.iota.fey.GlobalPerformer.aroundReceive(GlobalPerformer.scala:28)
>         at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
>         at akka.actor.dungeon.DeathWatch$class.receivedTerminated(DeathWatch.scala:44)
>         at akka.actor.ActorCell.receivedTerminated(ActorCell.scala:374)
>         at akka.actor.ActorCell.autoReceiveMessage(ActorCell.scala:511)
>         at akka.actor.ActorCell.invoke(ActorCell.scala:494)
>         at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
>         at akka.dispatch.Mailbox.run(Mailbox.scala:224)
>         at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
>         at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
>         at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
>         at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
>         at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> 
> [info] - should result in sending logging error
> [info] - should result in orchestration restarted
> [info] - should all previous actors restarted
> [info] Stopping orchestration with global performer
> [info] - should result in sending TERMINATE message to Monitor actor
> [info] - should result in no global actors for orchestration
> [info] Stopping FeyCore
> [info] - should result in sending STOP message to Monitor actor
> [info] BaseAkkaSpec:
> [info] JsonReceiverSpec:
> [info] Executing validJson in JsonReceiver
> [info] - should return false when json schema is not right
> [info] - should log message to Error
> [info] - should return true when Json schema is valid
> [info] Executing checkForLocation in JsonReceiver
> [info] - should log message at Debug level
> [info] - should download jar dynamically from URL
> [info] Start a Thread with the JSON receiver
> [info] - should Start Thread
> [info] - should execute execute() method inside run
> [info] Interrupting the receiver Thread
> [info] - should Throw Interrupted exception
> [info] - should execute exceptionOnRun method
> [info] FeyGenericActorSpec:
> [info] Creating a GenericActor with Schedule time defined
> [info] - should result in scheduler started
> [info] - should result in onStart method called
> [info] - should result in START message sent to Monitor
> [info] - should result in one active actor
> [info] Backoff of GenericActor
> [info] - should be zero until the first PROCESS message
> [info] - should change when first PROCESS message was received
> [info] Sending PROCESS message to GenericActor
> [info] - should call processMessage method
> [info] customReceive method
> [info] - should process any non treated message
> [info] Sending PROCESS message to GenericActor
> [info] - should be discarded when backoff is enabled
> [info] - should be processed when backoff has finished
> [info] Calling startBackoff
> [info] - should set endBackoff with time now
> [info] Calling propagateMessage
> [info] - should send message to connectTo actors
> [info] Scheduler component
> [info] - should call execute() method
> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
> [info] - should Throw IllegalArgumentException
> [info] - should Result in restart of the actor with sequence of Monitoring: STOP -> RESTART -> START
> [info] - should call onStart method
> [info] - should call onRestart method
> [info] - should restart scheduler
> [info] Sending STOP to GenericActor
> [info] - should terminate GenericActor
> [info] - should call onStop method
> [info] - should cancel scheduler
> [info] - should send STOP - TERMINATE message to Monitor
> [info] - should result in no active actors
> [info] Creating GenericActor with schedule anc backoff equal to zero
> [info] - should not start a scheduler
> [info] - should result in one active actor
> [info] - should result in no discarded PROCESS messages
> [info] FeyGenericActorReceiverSpec:
> [info] Creating a GenericActor with Schedule time defined
> [info] - should result in scheduler started
> [info] - should result in onStart method called
> [info] - should result in START message sent to Monitor
> [info] - should result in one active actor
> [info] - should result in normal functioning of GenericActor
> [info] Sending PROCESS message to GenericReceiver
> [info] - should log message to Warn saying that the JSON could not be forwarded to FeyCore when JSON is invalid
> [info] - should send ORCHESTRATION_RECEIVED to FeyCore when JSON to be processed has a valid schema
> [info] - should Download jar from location and send ORCHESTRATION_RECEIVED to FeyCore when JSON has a location defined
> [info] Scheduler component
> [info] - should call execute() method
> [info] Sending EXCEPTION(IllegalArgumentException) message to GenericActor
> [info] - should Throw IllegalArgumentException
> [info] - should Result in restart of the actor with sequence of Monitoring: STOP -> RESTART -> START
> [info] - should call onStart method
> [info] - should call onRestart method
> [info] - should restart scheduler
> [info] Sending STOP to GenericActor
> [info] - should terminate GenericActor
> [info] - should call onStop method
> [info] - should cancel scheduler
> [info] - should send STOP - TERMINATE message to Monitor
> [info] - should result in no active actors
> 
> CLeaning up[info] Run completed in 44 seconds, 724 milliseconds.
> [info] Total number of tests run: 243
> [info] Suites: completed 12, aborted 0
> [info] Tests: succeeded 238, failed 5, canceled 0, ignored 0, pending 0
> [info] *** 5 TESTS FAILED ***
> [error] Failed tests:
> [error]         org.apache.iota.fey.FeyCoreSpec
> [error] (fey-core/test:test) sbt.TestsFailedException: Tests unsuccessful
> [error] Total time: 46 s, completed Feb 19, 2017 12:36:25 AM
> 
> 
> -- 
> Thanks,
> 
> Gunnar
> If you think you can you can, if you think you can't you're right.