Gatling never ends

Hello,

I’m running a Gatling simu on Jenkins/Cloudbees.
Depending on the tested server, the simulation never ends and no more requests are processed.
Is there a way to run in parralel of the simulation a control job that could stop Gatling if there is no activity detected or after a timeout ?

Thanks
Jeff

Hi,

Which version do you use?

2.0.0-M3a

Would you mind upgrading to current snapshot, that probably solves your issue.
I can help you migrating and refrain from committing until your talk is over.
WDYT?

The maven project is at https://github.com/devoxx2014-webperf/moviebuddytests, I suppose we must add the snaphot repo and change the Gatling version ?
I can add you as a commiter, this is for Devoxx and we are in a hurry

The maven project is at
GitHub - devoxx2014-webperf/moviebuddytests: Gatling tests, I suppose we must
add the snaphot repo and change the Gatling version ?
I can add you as a commiter,

Or I can fork and send a PR, as you wish

this is for Devoxx and we are in a hurry

Yep, I know :slight_smile:

Let’s do both if we need further modifications

OK.

I’ve just sent a PR.
Let me know if it solves your problem.
Documentation is under way here: https://github.com/excilys/gatling/tree/master/src/sphinx

It got better but:
Gatling fail at the end processing the simulation log file classcastexception
I got many 304 return codes but it maybe because of the node server
I’m out of home and won’t be online until 9pm Paris time

Jeff

It got better but:
Gatling fail at the end processing the simulation log file
classcastexception

We had a tricky situation with Travis.
I've just restarted the build for gatling-highcharts, it's fine now. Please
update your snapshot (-U from maven)

I got many 304 return codes but it maybe because of the node server

Probably yes. You get 304 because the page wasn't modified since.

I'm out of home and won't be online until 9pm Paris time

Ping me if you have any problem/question.

Is there a way to prevent the use of cache or last modified ? Is this new to Gatling as I didn’t notice this for 2.0.0-m3a

Yup, it’s been introduced after the 2-M3a

You can use .disableCache for what you want, cf : https://github.com/excilys/gatling/blob/master/gatling-http/src/test/scala/io/gatling/http/HttpCompileTest.scala#L46

More precisely, what was introduced since 2M3a is Last-Modified and ETag support.
Before that, we were only supporting Cache-Control.

Hello,

I have fixed the 304 status code with the settings you recommended.
However, I still have the error at the end of the simulation.

I join the console from Jenkins.

Jeff

consoleText.txt (195 KB)

100% sure that your snapshot isn’t up-to-date (gatling and gatling-highcharts are not aligned). You can see it in your logs (only metadatas were downloaded)

Did you run with -U to force maven to update snapshots as I suggested?

One more thing, there’s an ugly stacktrace in your logs:

java.lang.NullPointerException
at com.ning.http.client.providers.netty.timeout.TimeoutsHolder.cancel(TimeoutsHolder.java:27)
at com.ning.http.client.providers.netty.timeout.IdleConnectionTimeoutTimerTask.run(IdleConnectionTimeoutTimerTask.java:66)
at io.gatling.http.ahc.AkkaNettyTimer$$anonfun$1.apply$mcV$sp(AkkaNettyTimer.scala:41)
at akka.actor.Scheduler$$anon$11.run(Scheduler.scala:118)
at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:39)
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:385)
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)

This is a bug in AsyncHttpClient I’ll try to fix ASAP.

I’ve fixed the AHC bug and released 1.8.7. Just waiting for the jars to get synced on central so I can update Gatling too.

AHC 1.8.7 deployed on central, just pushed upgrade on Gatling: https://github.com/excilys/gatling/issues/1797
New snapshot will be available on Sonatype once Travis job is complete: https://travis-ci.org/excilys/gatling

Hello,

yes, I have added the -U flag. See the following lines from the console:

gatling-node-cluster (AllMoviesLoading)] $ mvn -U test io.gatling:gatling-maven-plugin:2.0.0-SNAPSHOT:execute -Dgatling.loops=100 -Dgatling.resultsFolder=results -Dgatling.simulationClass=com.jeffmaury.moviebuddy.tests.AllMoviesLoadingScenario -Dbuddyserver=http://movie-buddy-node-cluster.devoxxfr-web-perfs.cloudbees.net

I will retry this morning to check if AHC 1.8.7 is downloaded.

Regards
Jeff

yes, I have added the -U flag. See the following lines from the console:

gatling-node-cluster (AllMoviesLoading)] $ mvn -U test
io.gatling:gatling-maven-plugin:2.0.0-SNAPSHOT:execute -Dgatling.loops=100
-Dgatling.resultsFolder=results
-Dgatling.simulationClass=com.jeffmaury.moviebuddy.tests.AllMoviesLoadingScenario
-Dbuddyserver=
http://movie-buddy-node-cluster.devoxxfr-web-perfs.cloudbees.net

You're right, you did set -U.
Still, it doesn't make sense that snapshots weren't re-downloaded?!

Yes i’ve seen but looking at the remote repository (https://oss.sonatype.org/content/repositories/snapshots/io/gatling/highcharts/gatling-charts-highcharts/2.0.0-SNAPSHOT/ for example), it sees there is something broken in the deploy as the maven-metadata.xml is less recent that the artifacts !!!

Jeff