Closed johanneshiry closed 4 years ago
Hi, This is really very exotic, I don't use any of the Scala or Akka stack myself, so were you able to demonstrate the problem in a standalone Java app or JUnit test as well? I know with concurrency this can be a little challenging. We rarely make major updates to uom-se now, because it is in maintenance. Two bugs could be fixed if we release 1.0.11, but there is no strict deadline. I'm not sure, if you also have a chance to use Indriya, the new RI which also exist for JSR 363 btw (1.x)?
This issue definitely sounds worth investigating also with Indriya. Might hit us there as well and might not be related to Scala/Akka at all. I hope I can find some time for a closer look within the next days.
Thanks @keilw and @andi-huber for the fast reply.
@keilw I know that without a sample project it is quite hard to debug this. I can try to somehow setup a very basic implementation of a java/scala project that reproduces the issue. I'll keep you updated if I can get it to this point somehow. I'm not familiar with Indriya, but had a fast look at it today. Is there anything we need to take care of when we switch over or can the existing code (except of the imports) be re-used? As pointed out in my initial post, we extensively use this implementation and it would cause some effort to change everything. But if it helps and is worth it, we might consider this.
@andi-huber if I can support you with additional information pls let me know.
I see multiple calculation steps in your scenario that I in theory could run on different threads or even in the context of different classloaders 1) setup the Unit for [quantityA] = OHM_PER_KILOMETRE 2) setup the Unit for [quantityB] = KILOMETRE 3) setup the Quantity quantityA 4) setup the Quantity quantityB 5) quantityA.multiply(quantityB).asType(classOf[ElectricResistance])
Can you give me a hint on how you do this steps within your environment? Meaning how are these steps split up among threads or systems?
Thanks for offering to help. Not sure, how much time he has, but hope we may also get @desruisseaux to have a look at it if he can.
He made use of AtomicReference
in the ServiceProvider
, and I also saw a use of ConcurrentModificationException
in the Seshat implementation (feel free to explore that btw, if you can, I don't know every corner of it, but give it a try to see, where it does things differently)
Some API elements like UnitFormat
explicitly state, that implementations may restrict calling methods like label()
by multiple threads, both uom-se and Indriya probably deal with concurrent labelling a little less sophisticated.
I made a first simple attempt with Indriya in trying to stresstest our given scenario, but I cannot see any issues yet. Might be setup too simple.
package tech.units.indriya.unit;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import java.util.Random;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import javax.measure.Unit;
import javax.measure.quantity.ElectricResistance;
import javax.measure.quantity.Length;
import org.junit.jupiter.api.Test;
import tech.units.indriya.ComparableQuantity;
import tech.units.indriya.function.RationalNumber;
import tech.units.indriya.quantity.Quantities;
public class UnitDimensionStressTest {
@Test
public void stresstest() throws InterruptedException, ExecutionException {
final Random rnd = new Random();
final ExecutorService worker1 = Executors.newFixedThreadPool(4);
final ExecutorService worker2 = Executors.newFixedThreadPool(4);
for(int i=0; i<100000; ++i) {
ComparableQuantity<?> quantityA = worker1.submit(UnitDimensionStressTest::quantityA).get();
ComparableQuantity<?> quantityB = worker2.submit(UnitDimensionStressTest::quantityB).get();
ComparableQuantity<ElectricResistance> someOhm =
quantityA.multiply(rnd.nextDouble()).multiply(quantityB).asType(ElectricResistance.class);
assertNotNull(someOhm);
}
}
private static ComparableQuantity<?> quantityA() {
final Unit<Length> KILOMETRE =
Units.METRE.multiply(RationalNumber.ofInteger(1000L));
final ProductUnit<?> OHM_PER_KILOMETRE =
(ProductUnit<?>) ProductUnit.ofQuotient(Units.OHM, KILOMETRE);
return Quantities.getQuantity(2L, OHM_PER_KILOMETRE);
}
private static ComparableQuantity<?> quantityB() {
final Unit<Length> KILOMETRE =
Units.METRE.multiply(RationalNumber.ofInteger(1000L));
return Quantities.getQuantity(2L, KILOMETRE);
}
}
Hi again,
I just pushed a sample project that reproduces the issue. You can find it here: https://github.com/johanneshiry/uom-se-issue-210
The project has two subfolders with src code with java and scala code which is very close to the structure we have in our project. The java code includes a reduced implementation of our Unit implementations (which is actually also OpenSource and can be found here: https://github.com/ie3-institute/PowerSystemUtils/tree/master/src/main/java/edu/ie3/util/quantities).
In com.github.johanneshiry.uomseissue210.main
you can find the Main class that can be executed.
Inside this main class, there are two parameters that can be varried:
noOfDummyDataPerActor
--> amount dummy data that is passed in for processingnoOfActors
--> number of actors that process the data concurrently It turned out that I had to vary these two parameters to reveal the error. The current configuration works on my machine and produces the exceptions we want to see.
I tried to document the code as much as possible to make it understandable at a first glimpse. It should work out of the box (tested with IDEA IntelliJ) as I used gradle as the build tool. You only have to set your Java Version to 11 in IntellIJ if you don't use Java 11 already. Pls let me know if you have any questions or if something does not work.
Some remarks on my findings during sample project creation so far:
Most of the time, I could made the error visible with adapting the noOfDummyDataPerActor
with values between 1000 and 10000 (where 5000, 7000 and 8000 have been good catches to reveal the error).
It turned out that I have to play with the config params noOfActors
and noOfDummyDataPerActor
and the error messages differ slightly in the sense of that they are all thrown from the same place AbstractUnit:260
but with different (valid) exception messages:
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
The root of the exceptions is (as expected) always between line 24 - 27 in SimpleActor
. The interesting part is, that in contrast to my observations in our code the resulting exceptions now are valid in the sense of that they should occur for these cases when the quantities that should be cast to some time are not fitting. But we're actually not passing in such quantities, but quantities, that fit.
Hence, this is slightly different from the initial post (which I didn't manage to reproduce 100% with the sample project :( ).
It seems that now, the casting tries to cast totally different units that are not passed in. Even if I observed the one is not compatible
issue in our code as well, most of the time I had the exceptions shown in my first post, where the exception message unit information has been close or equal what I actually wanted to cast via asType(...)
.
I think this supports my assumption that somehow the collection of the dimensions in getDimensions()
for the passed in class (AbstractUnit:258
and subsequently QuantityDimension:163
) the units for is carried out in non-deterministic way.
I hope the small project helps tracing down the error a little bit.
If there is anything else I can do pls let me know.
Example logs of the sample project: Log 1:
[INFO] [04/22/2020 08:33:17.780] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor0] SimpleActor Actor0 started
[INFO] [04/22/2020 08:33:17.785] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor1] SimpleActor Actor1 started
[INFO] [04/22/2020 08:33:17.792] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor2] SimpleActor Actor2 started
[INFO] [04/22/2020 08:33:17.798] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor3] SimpleActor Actor3 started
[INFO] [04/22/2020 08:33:17.803] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor4] SimpleActor Actor4 started
[INFO] [04/22/2020 08:33:17.808] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor5] SimpleActor Actor5 started
[INFO] [04/22/2020 08:33:17.813] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor6] SimpleActor Actor6 started
[INFO] [04/22/2020 08:33:17.819] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor7] SimpleActor Actor7 started
[INFO] [04/22/2020 08:33:17.824] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor8] SimpleActor Actor8 started
[INFO] [04/22/2020 08:33:17.830] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor9] SimpleActor Actor9 started
[INFO] [04/22/2020 08:33:17.837] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor10] SimpleActor Actor10 started
[INFO] [04/22/2020 08:33:17.843] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor11] SimpleActor Actor11 started
[INFO] [04/22/2020 08:33:17.866] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor12] SimpleActor Actor12 started
[INFO] [04/22/2020 08:33:17.871] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor13] SimpleActor Actor13 started
[INFO] [04/22/2020 08:33:17.875] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor14] SimpleActor Actor14 started
[INFO] [04/22/2020 08:33:17.880] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor15] SimpleActor Actor15 started
[INFO] [04/22/2020 08:33:17.882] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor16] SimpleActor Actor16 started
[INFO] [04/22/2020 08:33:17.897] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor17] SimpleActor Actor17 started
[INFO] [04/22/2020 08:33:17.899] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor18] SimpleActor Actor18 started
[INFO] [04/22/2020 08:33:17.902] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor19] SimpleActor Actor19 started
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/Actor8] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor1] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor2] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor10] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor9] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor5] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor7] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor11] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor0] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/Actor4] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor6] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.926] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/Actor3] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor18] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor14] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor16] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor13] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/Actor12] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor17] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/Actor19] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.931] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor15] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:33:17.932] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor5] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.932] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor6] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.932] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor11] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.932] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor4] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor10] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor8] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor0] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/Actor6] SimpleActor Actor6 stopped
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor5] SimpleActor Actor5 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor7] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/Actor4] SimpleActor Actor4 stopped
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor10] SimpleActor Actor10 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor3] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor8] SimpleActor Actor8 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor9] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor1] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor2] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor11] SimpleActor Actor11 stopped
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor0] SimpleActor Actor0 stopped
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor7] SimpleActor Actor7 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor18] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor14] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor3] SimpleActor Actor3 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor16] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor9] SimpleActor Actor9 stopped
[ERROR] [04/22/2020 08:33:17.933] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor13] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.933] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor1] SimpleActor Actor1 stopped
[ERROR] [04/22/2020 08:33:17.934] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor12] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.934] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor17] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.934] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor19] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:33:17.934] [testSystem-akka.actor.internal-dispatcher-3] [akka://testSystem/user/Actor15] The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: Ω·Ω·km is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/Actor4] SimpleActor Actor4 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor8] SimpleActor Actor8 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor9] SimpleActor Actor9 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor10] SimpleActor Actor10 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/Actor6] SimpleActor Actor6 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor7] SimpleActor Actor7 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor3] SimpleActor Actor3 started
[INFO] [04/22/2020 08:33:17.935] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor1] SimpleActor Actor1 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor5] SimpleActor Actor5 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor0] SimpleActor Actor0 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/Actor11] SimpleActor Actor11 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor2] SimpleActor Actor2 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor18] SimpleActor Actor18 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor14] SimpleActor Actor14 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor16] SimpleActor Actor16 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor2] SimpleActor Actor2 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor18] SimpleActor Actor18 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor16] SimpleActor Actor16 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor14] SimpleActor Actor14 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor13] SimpleActor Actor13 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor12] SimpleActor Actor12 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor17] SimpleActor Actor17 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor19] SimpleActor Actor19 stopped
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor13] SimpleActor Actor13 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/Actor17] SimpleActor Actor17 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/Actor19] SimpleActor Actor19 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor12] SimpleActor Actor12 started
[INFO] [04/22/2020 08:33:17.936] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor15] SimpleActor Actor15 stopped
[INFO] [04/22/2020 08:33:17.937] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/Actor15] SimpleActor Actor15 started
[INFO] [04/22/2020 08:33:17.961] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/Actor0] SimpleActor Actor0 stopped
[INFO] [04/22/2020 08:33:17.961] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor1] SimpleActor Actor1 stopped
[INFO] [04/22/2020 08:33:17.961] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor10] SimpleActor Actor10 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor11] SimpleActor Actor11 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor12] SimpleActor Actor12 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor14] SimpleActor Actor14 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor13] SimpleActor Actor13 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor15] SimpleActor Actor15 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor16] SimpleActor Actor16 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor17] SimpleActor Actor17 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor18] SimpleActor Actor18 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor19] SimpleActor Actor19 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor2] SimpleActor Actor2 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor3] SimpleActor Actor3 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor4] SimpleActor Actor4 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/Actor6] SimpleActor Actor6 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/Actor5] SimpleActor Actor5 stopped
[INFO] [04/22/2020 08:33:17.962] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/Actor7] SimpleActor Actor7 stopped
[INFO] [04/22/2020 08:33:17.963] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/Actor9] SimpleActor Actor9 stopped
[INFO] [04/22/2020 08:33:17.963] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/Actor8] SimpleActor Actor8 stopped
Process finished with exit code 0
Log 2:
[INFO] [04/22/2020 08:14:56.650] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$a] SimpleActor started
[INFO] [04/22/2020 08:14:56.651] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$b] SimpleActor started
[INFO] [04/22/2020 08:14:56.654] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$c] SimpleActor started
[INFO] [04/22/2020 08:14:56.657] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$d] SimpleActor started
[INFO] [04/22/2020 08:14:56.661] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$e] SimpleActor started
[INFO] [04/22/2020 08:14:56.664] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$f] SimpleActor started
[INFO] [04/22/2020 08:14:56.666] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$g] SimpleActor started
[INFO] [04/22/2020 08:14:56.669] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$h] SimpleActor started
[INFO] [04/22/2020 08:14:56.672] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$i] SimpleActor started
[INFO] [04/22/2020 08:14:56.674] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$j] SimpleActor started
[INFO] [04/22/2020 08:14:56.676] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$k] SimpleActor started
[INFO] [04/22/2020 08:14:56.679] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$l] SimpleActor started
[INFO] [04/22/2020 08:14:56.682] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$m] SimpleActor started
[INFO] [04/22/2020 08:14:56.684] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$n] SimpleActor started
[INFO] [04/22/2020 08:14:56.687] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$o] SimpleActor started
[INFO] [04/22/2020 08:14:56.691] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$p] SimpleActor started
[INFO] [04/22/2020 08:14:56.709] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$q] SimpleActor started
[INFO] [04/22/2020 08:14:56.714] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$r] SimpleActor started
[INFO] [04/22/2020 08:14:56.715] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$s] SimpleActor started
[INFO] [04/22/2020 08:14:56.717] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$t] SimpleActor started
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-14] [akka://testSystem/user/$j] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$i] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/$g] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$k] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/$f] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$c] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/$d] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/$l] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
done
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$a] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/$h] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$b] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.744] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$e] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.751] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$o] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.751] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$m] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.751] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$n] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.752] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/$p] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.752] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$s] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.752] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$r] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.753] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$t] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.753] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/$q] Exception occurred during 'asType()': java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
[ERROR] [04/22/2020 08:14:56.754] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$g] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.754] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$j] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.754] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$c] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$i] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$b] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$d] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$e] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/$j] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$o] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$c] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$i] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$m] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/$g] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$n] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/$b] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$p] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.755] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$d] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.755] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$s] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.756] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$f] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.756] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$r] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.756] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$o] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.756] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/$e] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.756] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/$m] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.756] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$n] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.756] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$p] SimpleActor stopped
[ERROR] [04/22/2020 08:14:56.756] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$t] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.757] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$h] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.757] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$k] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.757] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$a] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[ERROR] [04/22/2020 08:14:56.757] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$l] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-10] [akka://testSystem/user/$b] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-7] [akka://testSystem/user/$e] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-15] [akka://testSystem/user/$j] SimpleActor started
[ERROR] [04/22/2020 08:14:56.757] [testSystem-akka.actor.internal-dispatcher-2] [akka://testSystem/user/$q] The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
java.lang.ClassCastException: The unit: one is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:260)
at tec.uom.se.AbstractUnit.asType(AbstractUnit.java:69)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:380)
at tec.uom.se.AbstractQuantity.asType(AbstractQuantity.java:110)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1(SimpleActor.scala:24)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.$anonfun$applyOrElse$1$adapted(SimpleActor.scala:21)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
at scala.collection.AbstractIterable.foreach(Iterable.scala:921)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor$$anonfun$receive$1.applyOrElse(SimpleActor.scala:21)
at akka.actor.Actor.aroundReceive(Actor.scala:532)
at akka.actor.Actor.aroundReceive$(Actor.scala:530)
at com.github.johanneshiry.uomseissue210.main.actor.SimpleActor.aroundReceive(SimpleActor.scala:12)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:573)
at akka.actor.ActorCell.invoke(ActorCell.scala:543)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:269)
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
at akka.dispatch.Mailbox.exec(Mailbox.scala:242)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$p] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-11] [akka://testSystem/user/$g] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$d] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$i] SimpleActor started
[INFO] [04/22/2020 08:14:56.757] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$o] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$c] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$f] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$r] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$n] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$f] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$t] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$r] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$h] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$a] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$k] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$t] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-6] [akka://testSystem/user/$h] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-8] [akka://testSystem/user/$a] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$l] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-12] [akka://testSystem/user/$k] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$q] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$s] SimpleActor stopped
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-5] [akka://testSystem/user/$q] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-4] [akka://testSystem/user/$s] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-13] [akka://testSystem/user/$l] SimpleActor started
[INFO] [04/22/2020 08:14:56.758] [testSystem-akka.actor.default-dispatcher-9] [akka://testSystem/user/$m] SimpleActor started
Process finished with exit code 130 (interrupted by signal 2: SIGINT)
I see multiple calculation steps in your scenario that I in theory could run on different threads or even in the context of different classloaders
- setup the Unit for [quantityA] = OHM_PER_KILOMETRE
- setup the Unit for [quantityB] = KILOMETRE
- setup the Quantity quantityA
- setup the Quantity quantityB
- quantityA.multiply(quantityB).asType(classOf[ElectricResistance])
Can you give me a hint on how you do this steps within your environment? Meaning how are these steps split up among threads or systems?
@andi-huber It is actually done very simple (as in the sample project as well):
setup the Unit for [quantityA] = OHM_PER_KILOMETRE
and setup the Unit for [quantityB] = KILOMETRE
is done in a separate library which we just import in our project (https://github.com/ie3-institute/PowerSystemUtils/tree/master/src/main/java/edu/ie3/util/quantities)setup the Quantity quantityA
, setup the Quantity quantityB
), then we distribute the data to several actors/threads and finally we execute the multiplication (quantityA.multiply(quantityB).asType(classOf[ElectricResistance])
) inside of the actors/threads. --> Actually only the multiplication is done concurrently
Good news in the mean time: I can reproduce the issue, given your code using Java only. (I converted your Scala code to Java).
Great, are there any parts in the actual impl you saw problematic or is it mainly the application code that needs to avoid such race conditions?
The issue I'm seeing is with
package com.github.johanneshiry.uomseissue210.quantities;
...
import javax.measure.Unit;
...
public class PowerSystemUnits extends Units {
...
}
You either need to initialize this class before your actors do. (meaning force the static fields to be initialized before you allow concurrent threads to access them) or as an alternative, don't subclass the Units class. Eg. by using
public static class PowerSystemUnits {
/* ==== Basic non electric units ==== */
/** Kilometre */
public static final Unit<Length> KILOMETRE = MetricPrefix.KILO(Units.METRE);
/** Ohm per kilometre */
public static final Unit<SpecificResistance> OHM_PER_KILOMETRE =
new ProductUnit<>(Units.OHM.divide(KILOMETRE));
/** Siemens per kilometre */
public static final Unit<SpecificConductance> SIEMENS_PER_KILOMETRE =
new ProductUnit<>(Units.SIEMENS.divide(KILOMETRE));
}
Elaborating on whats going on:
Initializing the Units
class with all it static fields is currently not implemented in a thread-safe manner. Hence any subclass of Units
inherits this flaw. I believe this stumbling stone is also present with Indriya.
First of all @johanneshiry, can you verify that my suggesions fix things on your end? Then we might consider, at least for Indriya to mitigate this issue.
Thanks both of you for the ultra-fast replies!
I just changed PowerSystemUnits
to
import static tec.uom.se.unit.Units.*;
public class PowerSystemUnits {
private PowerSystemUnits(){}
/* ==== Basic non electric units ==== */
/** Kilometre */
public static final Unit<Length> KILOMETRE = MetricPrefix.KILO(METRE);
/** Ohm per kilometre */
public static final Unit<SpecificResistance> OHM_PER_KILOMETRE =
new ProductUnit<>(OHM.divide(KILOMETRE));
/** Siemens per kilometre */
public static final Unit<SpecificConductance> SIEMENS_PER_KILOMETRE =
new ProductUnit<>(SIEMENS.divide(KILOMETRE));
}
but that didn't help.
For your first idea I tried the following:
Units.getInstance()
in com.github.johanneshiry.uomseissue210.main.Main.main(args)
method before executing run(...)
-> issue persistcom.github.johanneshiry.uomseissue210.quantities.PowerSystemUnits
as follows static {
Units.getInstance();
}
private PowerSystemUnits() {
}
public static PowerSystemUnits getInstance() {
return INSTANCE;
}
and played with PowerSystemUnits.getInstance()
in Main -> issue persists :-(
So either I didn't understood your proposals or they seem not to solve the issue. If you want me to push the changes to the test repo pls let me know.
I'm wondering if this might be also a scala related issue with static initialization of java classes. AFAIK, scala does lazy static initialization of it's objects. Dunno if this also affects java classes with static fields even if they're called directly. 🤔
We also extend Units
in other modules like SI, so as of now I would keep that, although there is an abstract base class AbstractSystemOfUnits
as an alternative if necessary, and we could make Units
final, if that already helped? For the other stuff I am not that deep into concurrency either.
Unlike e.g. ServiceProvider
which allows to replace the current instance, pretty much everything in Units
is immutable, but you might like to have a look at Seshat and if you can try those tests with more than one implementation, also test against it, because Seshat has a much bigger static initializer block documented like: We use here a "lazy final initialization" pattern... so unless there are further problems between e.g. the lazy initialization of Scala or different JVM languages, we could explore something similar for Indriya. Seshat's Units
class is final btw, but it has a more centralized approach than Indriya or uom-se where the whole SI and other systems are put into a central unit repository and it does not aim at extending these e.g. with Unicode or UCUM.
I can confirm, I'm also still seeing the issue (Java only). However, what I said above regarding Units is still true and was just another issue our scenario can run into. I'm investigating further now.
Ok thanks, if you can try Seshat, because even for his apps under Scala (the minimum version is Java 10 but that looks OK for him) @johanneshiry could use that as a drop-in replacement for uom-se under JSR 363, that's the beauty of having a standard with multiple implementations ;-)
Although most of them were created by someone in our community, JSR 363 has 6(!) compatible implementations including the enum-impl (which is compatible on a smaller profile) I guess it's time to create something like https://jakarta.ee/compatibility/ for Unit-API as well ;-D
Or maybe 7, I am not sure, if SIS passes the TCK, then it would even be 7.
regarding tec.uom:uom-se:1.0.10
tec.uom.se.unit.ProductUnit#equals(...)
and #hashCode
are both not thread-safe! I'll see that I can provide a fix.
Then what about Objects.equals()
or similar helper methods used, are they thread-safe? Btw, @otaviojava made a few minor changes to uom-se only, mostly Java 8 optimization, but where it doesn't hurt Indriya, would it be possible to forward-port those? In future while offering a fix for problematic behavior as far as possible, we shall no longer do any "cosmetics" or nice to have improvements in uom-se since it is a legacy implementation.
Werner, yes I'll have a look at Indriya as well, but first, my immediate question is, am I allowed to add/remove serializable fields in tec.uom.se.unit.ProductUnit, which changes its Serialization id/signature?
I managed to fix it without changing the Serialization id/signature. https://github.com/unitsofmeasurement/uom-se/commit/798418db163f79b495e1081e992e3117fa8b9d77
(Sorry I meant to open a PR, instead I pushed directly.)
I think that did the trick, can no longer reproduce these issues. I'm gonna have a look at Indriya now.
No worries, please for Indriya unless you pushed something already, let me merge the Toolchain updates for Jigsaw and multi-release-jar builds first and propose a PR then, otherwise we might see merge conflicts.
Ok thx Werner! Indriya's tech.units.indriya.unit.ProductUnit is broken in a very similar way.
I'll see that I can fix that as well. Let me know when you are ready so I can open a PR.
Now that I worked on a fix for Indriya I did pay more attention to detail there, than here. I'll need to backport, what I have done there, such that we preserve the canonical order of the unit dimension elements.
PR (backporting from Indriya) https://github.com/unitsofmeasurement/uom-se/pull/211
I also need to mention, that with this fix, I do no longer see any concurrent modification issues with the initialization of the Units
' static fields. In other words sub-classing Units
seems no longer problematic.
Hi,
thanks for the fast and extensive help on this issue.
I just checked out the current master and tried to use a self-compiled version of 1.0.11-SNAPSHOT version by calling mvn package
but now it complains about
Error:(13, 39) Class tec.uom.lib.common.function.Nameable not found - continuing with a stub.
public class PowerSystemUnits extends Units {
hence I currently cannot test your fixes. Did I miss something here when I compiled the current master by myself?
Not sure but, I think you need to mvn install
.
Didn't worked with mvn install
, but adding the dependency for uom-lib-common
manually did the trick.
With the self-compiled version based on the current master I couldn't reproduce the issue anymore -> seems solving the issue over here as well. 🎉
Nice! Did you test against my forked branch or the main project's one? (I have opened a yet pending PR).
(I'm waiting for Werner to approve or merge https://github.com/unitsofmeasurement/uom-se/pull/211.)
I tested against the current main master branch with the latest commit 798418db163f79b495e1081e992e3117fa8b9d77.
In addition I used this version (798418db163f79b495e1081e992e3117fa8b9d77) as base and manually applied your PR #211 on it by replacing the whole ProductUnit.java
with your adapted version of PR #211
Both versions are working. Is there anything else I should test?
Thx, that's perfect. No more tests required.
Thanks a lot for you efforts and your help!
Do you know if there will be a fixed release of this soon - maybe even for Indriya? Then we might consider to take this as a chance to switch to Indriya as well.
A fix for Indriya is also ready and pending for acceptance/merge. The release stuff is up to @keilw . (I suspect it should not take too long.)
Thanks for digging this one up and helping to get to the very bottom of it!
I merged it thanks, the toolchain was already merged into master and we have specialized classes for Java 9, Java 12 and 14 in Indriya now ;-) Can this be closed, or is there a remaining problem?
Thx @keilw ! There is also a PR pending here ...
(I'm waiting for Werner to approve or merge #211.)
Ok will merge, I thought it was pushed directly here.
Hi,
after spending days to debug a potential issue I ended up here now. I would love to provide some sample code/project but for the moment, I haven't figure out a way to reproduce the issue in stable way as it seems to occur randomly.
Following situation: We are working in a mixed java/scala codebase that makes use of this quantity implementation incl. several custom implementations of Units.
We are using several threads/actors (using akka for concurrent operations) that receive data and process data concurrently. In each of these threads/actors, we're doing several operations with quantities incl. multiplication of specific quantities (example below) and casting them afterwards with) is called, it results in a
asType(<TYPE>)
. For some reason, it sometimes (randomly?) happens that when quantity.asType(java.lang.ClassCastException: The unit: S is not compatible with quantities of type interface javax.measure.quantity.ElectricConductance
. It is obvious, that this exception is wrong, because the unitS
for Siemens is of typeElectricConductance
(seetec.uom.se.unit.Units
:250).It is important to mention, that this issue is not type dependent. The same happens for e.g. type of
ElectricResistance
(java.lang.ClassCastException: The unit: Ω is not compatible with quantities of type interface javax.measure.quantity.ElectricResistance
), but it is defined exactly like this @tec.uom.se.unit.Units
:243.After debugging several hours I was able to trace the issue down to the dimension comparison and it turned out that
quantity.getUnit().getDimension()
seems not to be stable returning the same value in the sense that sometimes it returnsONE
or an incomplete signature of the Dimensions of the type which ends up in the exceptions shown above.I searched the issues here and didn't found any solution and all my attempts to solve this issue where failing. Is there any known bug, that prevents our scenario/use case from working?
Example: [quantityA] = OHM_PER_KILOMETRE [quantityB] = KILOMETRE
quantityA.multiply(quantityB).asType(classOf[ElectricResistance]) -> randomly throws exception even if one would expect this to be of type OHM
My assumption is, that somehow (somewhere?) the way the dimension creation in
getDimension()
is implemented is either not loaded correctly as static class in the java/scala combination or there is an issue with the concurrent access to it. But as written, I couldn't figured it out by myself so farAs we make extensive use of quantities it would be great if somebody could provide some help on this issue. If you need more information pls let me know. If I can manage to somehow get a project up and running that reproduces this issue I'll provided it asap but atm I didn't got one running.
Project Meta:
getDimension()
part is scalaFull exceptions: