Need help - Gatling 2 simulation with Redis feeder aborts with "Gatling Actor system hasn't been started"

Hello all,

I am fairly new to Gatling and Scala and having trouble with a simulation using the Redis feeder, hoping someone can help identify the error in my script.

Here’s the context: I am testing a data acquisition system using a stripped-down nginx server that accepts any http POST request with any arbitrary data. I have working Gatling scripts that feed JSON bodies from files (.csv feeder with a list of filenames) and am now exploring using a Redis feeder to bypass the file system altogether. As a real simple proof-of-concept, I’m trying to insert a word from the Redis feeder into the body of the POST, using a trimmed-down list from /usr/share/dict/words preloaded in the Redis database.

As it is coded now, the script aborts at runtime with “java.lang.UnsupportedOperationException: Gatling Actor system hasn’t been started”. I have verified with redis-cli that Redis is loaded and running before starting Gatling.

vagrant@ubuntu:~/gatling$ bin/ -s sensorData.RedisDataTest -nr
GATLING_HOME is set to /home/vagrant/gatling
Simulation sensorData.RedisDataTest started…
Exception in thread “main” java.lang.ExceptionInInitializerError
at sensorData.RedisDataTest.(RedisDataTest.scala:38)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
at java.lang.reflect.Constructor.newInstance(
at java.lang.Class.newInstance(
Caused by: java.lang.UnsupportedOperationException: Gatling Actor system hasn’t been started
at io.gatling.core.akka.GatlingActorSystem$.instance(GatlingActorSystem.scala:30)
at io.gatling.core.akka.AkkaDefaults$class.system(AkkaDefaults.scala:25)
at io.gatling.redis.feeder.RedisFeeder$.system(RedisFeeder.scala:29)
at io.gatling.redis.feeder.RedisFeeder$.apply(RedisFeeder.scala:44)
at sensorData.RedisTestScenario$.(RedisDataTest.scala:26)
at sensorData.RedisTestScenario$.(RedisDataTest.scala)
… 13 more

The script itself is just an edit of another working script, with the changes required for Redis:

package sensorData

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._ // maybe not needed?
import scala.concurrent.duration._
import com.redis._
import io.gatling.redis.feeder._

object MyProtocol {
val httpProtocol = http
// .extraInfoExtractor((requestStatus, session, request, response) => List.empty)
// .dumpSessionOnFailure
// .disableWarmUp

object RedisTestScenario {

val redisPool = new RedisClientPool(“localhost”, 6379)

val scn = scenario(“RedisTest”)
.repeat(2) {
feed(RedisFeeder(redisPool, “wordList”, RedisFeeder.LPOP))
.pause(0 milliseconds, 100 milliseconds)

class RedisDataTest extends Simulation {
(nothingFor(4 seconds), rampUsers(2) over (10 seconds), nothingFor(1 second))

Environment is Ubuntu Server 14.04 with all current patches; Java runtime is OpenJDK 7u55-2.4.7, 64-bit Server VM; gatling-charts-highcharts-2.0.0-SNAPSHOT-bundle downloaded 16 June 2014; Redis version 2.8.9. All components are running on a 64-bit VM, networking is all on localhost with no proxies and only “inside the box” connectivity.

I’m hoping this is an error that more knowledgeable users will spot; I’ve gone through the wiki and scoured the web for any additional information for Gatling 2 and Redis but not had much luck. Any advice or assistance is greatly appreciated!

Best regards,


Stupid bug, will fix later today.



Thanks for reporting!

Stéphane, thanks so much for the quick turnaround! I downloaded the nightly build for 20 June and the problem is indeed resolved - now on to turning my simple model into something more useful :slight_smile:

Best regards, enjoy your weekend!

The mistake was really stupid, so it was easy to fix.

Have fun!