Problem running my own protocol in 2.1.7

95 views
Skip to first unread message

Chris Phelps

unread,
Sep 27, 2016, 6:55:26 PM9/27/16
to Gatling User Group

We have written our own Protocol/Action/ActionBuilder, and had this working against gatling 2.0.3. I've been trying to update this to newer versions of gatling, and am running into some trouble.

I spent a bunch of time trying to update to 2.2.2, but there seemed to be a lot of moved and renamed classes, without many examples, so I stopped for now at 2.1.7. I have my protocol pieces successfully building, and simulations building, but I fail upon simulation start with an error about Threeten TzdbZoneRulesProvider. I've included the trace below.  I also see an error about DataWriters not being initialized, but I assume for now these are caused by the former error.

Do you have any advice on how to proceed here? Is this a known issue, or do we have a strong inclination that this may be fixed by going to 2.2.2?

Thanks
-C



[ERROR] [09/27/2016 16:15:32.894] [GatlingSystem-akka.actor.default-dispatcher-6] [akka://GatlingSystem/user] org.threeten.bp.zone.ZoneRulesProvider: Provider org.threeten.bp.zone.TzdbZoneRulesProvider could not be instantiated
java.util.ServiceConfigurationError: org.threeten.bp.zone.ZoneRulesProvider: Provider org.threeten.bp.zone.TzdbZoneRulesProvider could not be instantiated
    at java.util.ServiceLoader.fail(ServiceLoader.java:224)
    at java.util.ServiceLoader.access$100(ServiceLoader.java:181)
    at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:377)
    at java.util.ServiceLoader$1.next(ServiceLoader.java:445)
    at org.threeten.bp.zone.ZoneRulesProvider.<clinit>(ZoneRulesProvider.java:93)
    at org.threeten.bp.ZoneRegion.ofId(ZoneRegion.java:143)
    at org.threeten.bp.ZoneId.of(ZoneId.java:357)
    at org.threeten.bp.ZoneId.of(ZoneId.java:285)
    at org.threeten.bp.ZoneId.systemDefault(ZoneId.java:244)
    at org.threeten.bp.Clock.systemDefaultZone(Clock.java:137)
    at org.threeten.bp.LocalDateTime.now(LocalDateTime.java:152)
    at io.gatling.core.result.writer.ConsoleSummary$.apply$default$6(ConsoleSummary.scala:44)
    at io.gatling.core.result.writer.ConsoleDataWriter.display(ConsoleDataWriter.scala:56)
    at io.gatling.core.result.writer.ConsoleDataWriter$$anonfun$initialized$1.applyOrElse(ConsoleDataWriter.scala:62)
    at scala.PartialFunction$OrElse.applyOrElse(PartialFunction.scala:171)
    at akka.actor.Actor$class.aroundReceive(Actor.scala:467)
    at io.gatling.core.akka.BaseActor.aroundReceive(BaseActor.scala:22)
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)
    at akka.actor.ActorCell.invoke(ActorCell.scala:487)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)
    at akka.dispatch.Mailbox.run(Mailbox.scala:220)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: org.threeten.bp.zone.ZoneRulesException: Unable to load TZDB time-zone rules: jar:file:/Users/cphelps/projects/gatling-sif/gatling-charts-highcharts-bundle-2.1.7/lib/threetenbp-1.2.jar!/org/threeten/bp/TZDB.dat
    at org.threeten.bp.zone.TzdbZoneRulesProvider.load(TzdbZoneRulesProvider.java:146)
    at org.threeten.bp.zone.TzdbZoneRulesProvider.<init>(TzdbZoneRulesProvider.java:87)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at java.lang.Class.newInstance(Class.java:374)
    at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:373)
    ... 23 more
Caused by: org.threeten.bp.zone.ZoneRulesException: Data already loaded for TZDB time-zone rules version: 2014i
    at org.threeten.bp.zone.TzdbZoneRulesProvider.load(TzdbZoneRulesProvider.java:139)

Stéphane LANDELLE

unread,
Sep 29, 2016, 6:32:43 PM9/29/16
to gat...@googlegroups.com
Honestly, no idea what your issue are, as you went with custom developments.
What's sure is that we've stopped using threeten-bp (which was a backport of Java 8's JSR 310/datetime API for Java 6/7) in Gatling 2.2 as we went for Java 8 only support.

Stéphane Landelle
GatlingCorp CEO


--
You received this message because you are subscribed to the Google Groups "Gatling User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gatling+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Chris Phelps

unread,
Oct 3, 2016, 1:01:45 PM10/3/16
to Gatling User Group
Thanks, Stéphane.

Turns out my problem was that I was building an assembly jar and including gatling-charts-highcharts. When I included that with provided scope things cleared up.

Thanks
-C
To unsubscribe from this group and stop receiving emails from it, send an email to gatling+u...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages