Gatling.sh error Unrecognized VM option 'OptimizeStringConcat'

3,232 views
Skip to first unread message

invisible0786

unread,
Feb 9, 2014, 11:50:29 AM2/9/14
to gat...@googlegroups.com
When executing gatling.sh then getting following error

Unrecognized VM option 'OptimizeStringConcat'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Any idea?

nicolas...@gmail.com

unread,
Feb 9, 2014, 12:04:50 PM2/9/14
to gat...@googlegroups.com
Which version of the JVM are you using? 32 or 64 bits?

Cheers
Nicolas


--
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+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

invisible0786 .

unread,
Feb 9, 2014, 12:24:33 PM2/9/14
to gat...@googlegroups.com
i am using 32 bit jvm.



--
You received this message because you are subscribed to a topic in the Google Groups "Gatling User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gatling/gCQf5USjaNw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gatling+u...@googlegroups.com.

Stéphane Landelle

unread,
Feb 9, 2014, 12:25:20 PM2/9/14
to gat...@googlegroups.com
OptimizeStringConcat was introduced in Java 6u20, so it's quite old.
You should upgrade to a modern JDK.

invisible0786 .

unread,
Feb 9, 2014, 12:29:29 PM2/9/14
to gat...@googlegroups.com
i am using gatling 2 running this with jdk1.7.0_51 and jre7 so i guess i am using all latest jdk installation in my machine?

Where I can find step by step installtion instruction for Gatling?

Stéphane Landelle

unread,
Feb 9, 2014, 12:33:27 PM2/9/14
to gat...@googlegroups.com
Are you sure you don't have multiple JRE/JDK installations on your machine and that they're messed up?
For example, did you set a JAVA_HOME that actually targets an old Java 6? Did you check which version is in your path?

Sajjad Lateef

unread,
Feb 9, 2014, 12:34:31 PM2/9/14
to gat...@googlegroups.com

Have you tried editing gatling.sh and remove the option? It may work.

Stéphane Landelle

unread,
Feb 9, 2014, 12:38:39 PM2/9/14
to gat...@googlegroups.com
Yes, that would work, but that wouldn't fix the issue that a wrong JDK is being picked up.
From what I know, OptimizeStringConcat not being recognized can only mean that a java < 6u20 is being picked up.
Gatling uses NIO and this part of the JDK tends to get fixed a lot in modern versions.

Sajjad Lateef

unread,
Feb 9, 2014, 12:44:07 PM2/9/14
to gat...@googlegroups.com

Correct.

Executing java -version from the gatling/bin dir and checking the output of env command would help the OP. 

invisible0786 .

unread,
Feb 9, 2014, 12:49:03 PM2/9/14
to gat...@googlegroups.com
i tried removing the option OptimizeStringConcat from .sh and it worked but i guess that not correct workaround?

Stéphane Landelle

unread,
Feb 9, 2014, 1:29:14 PM2/9/14
to gat...@googlegroups.com
We had the issue once: https://github.com/excilys/gatling/issues/346
But we now force server mode in our shell script. Did you remove it?

invisible0786 .

unread,
Feb 9, 2014, 1:40:00 PM2/9/14
to gat...@googlegroups.com
yes i removed the option option OptimizeStringConcat from .sh from gatling.sh file and it worked.

Stéphane Landelle

unread,
Feb 9, 2014, 1:41:32 PM2/9/14
to gat...@googlegroups.com
But you have the -server option, right?

invisible0786 .

unread,
Feb 9, 2014, 1:46:41 PM2/9/14
to gat...@googlegroups.com
yes - server option is there. one more question if i want to monitor response time summary during my test execution then how i can monitor this via Gatling? currently I can see this summary only after execution. is it possible to monitor these stats during runtime execution?

Stéphane Landelle

unread,
Feb 9, 2014, 3:00:24 PM2/9/14
to gat...@googlegroups.com
The console periodically display some information (every 5s), don't you see it?
You can also try our Graphite integration: https://github.com/excilys/gatling/wiki/Graphite

invisible0786 .

unread,
Feb 10, 2014, 4:32:14 AM2/10/14
to gat...@googlegroups.com
from perf testing point of view any document available which explains about this. for example how to integrate Gatling with Eclipse, Jenkins, Maven Arch and Graphite?

Regards
KAPIL

invisible0786 .

unread,
Feb 10, 2014, 6:28:08 AM2/10/14
to gat...@googlegroups.com
When I am trying to integrate my eclipse with Maven Arch using remote catalog (http://repository.excilys.com/content/groups/public/archetype-catalog.xml) then I am getting java.lang.nullpointer exception and also when verifying this URL then getting "Remote catalog is empty" message. Please advice how I can integrate remote maven archetype with my eclipse?


On 9 February 2014 20:00, Stéphane Landelle <slan...@excilys.com> wrote:

Stéphane Landelle

unread,
Feb 10, 2014, 6:33:03 AM2/10/14
to gat...@googlegroups.com
It look like a problem on your side (network?).

The procedure is described in the wiki: https://github.com/excilys/gatling/wiki/Ide-integration

invisible0786 .

unread,
Feb 10, 2014, 6:50:15 AM2/10/14
to gat...@googlegroups.com
I can see following xml in my browser

<archetype-catalog xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-catalog/1.0.0 http://maven.apache.org/xsd/archetype-catalog-1.0.0.xsd"><archetypes><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0.20130628</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0.20130625</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0.20130605</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0-M3a</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0-M3</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0-M2</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>io.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>2.0.0-M1</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.5.3</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.5.2</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.5.1</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.5.0</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.7</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.6</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.5</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.4</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.3</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.2</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.1</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype><archetype><groupId>com.excilys.ebi.gatling.highcharts</groupId><artifactId>gatling-highcharts-maven-archetype</artifactId><version>1.4.0</version><repository>http://repository.excilys.com/content/groups/public</repository></archetype></archetypes></archetype-catalog>

Stéphane Landelle

unread,
Feb 10, 2014, 6:56:40 AM2/10/14
to gat...@googlegroups.com
So the problem is with your IDE/maven support.
Do you have a proxy that might not be set up for your maven support?
Another possibility is that your IDE failed to download the catalog for whatever reason and that it keeps this failure in cache until you restart it.

invisible0786 .

unread,
Feb 10, 2014, 9:36:09 AM2/10/14
to gat...@googlegroups.com
getting following error when adding maven-archetype manually

Can't resolve Archetype io.gatling.highcharts:gatling-highcharts-maven-archetype:2.0.0.20130628


Please advice?

Stéphane Landelle

unread,
Feb 10, 2014, 9:55:25 AM2/10/14
to gat...@googlegroups.com
Sorry, I don't get what you're doing. Are you trying to generate a project from your IDE (that is?) or from the command line?

Are you used to maven?

invisible0786 .

unread,
Feb 10, 2014, 12:25:07 PM2/10/14
to gat...@googlegroups.com
I am only trying to setup my Eclipse so that I can run Gatling via my Eclipse so I have downloaded scala eclipse 4.3 IDE and installed it locally in my machine and now I am trying to setup Maven Archetype but not successful.
1) When adding remote catalog (http://repository.excilys.com/content/groups/public/archetype-catalog.xml) then I am getting java.lang.nullpointer exception and also when verifying this URL then getting "Remote catalog is empty" message.
2) When adding Maven Archetype manually then I am getting Error "Can't resolve Archetype io.gatling.highcharts:gatling-
highcharts-maven-archetype:2.0.0.20130628"
Please could you let me know how I can resolve these error and install maven Archetype successfully??

Stéphane Landelle

unread,
Feb 10, 2014, 12:48:24 PM2/10/14
to gat...@googlegroups.com
I just followed the procedure described in the wiki:
=> All good

Note that (I didn't do it in my test in order to reproduce the same thing as you) but when selecting the archetype version, you should display all versions, because the version you're targeting was a temporary snapshot and not the latest (m2e bug). Latest version here is 2M3a.

If that doesn't work for you, I'm afraid I won't be able help.

invisible0786 .

unread,
Feb 11, 2014, 6:23:01 PM2/11/14
to gat...@googlegroups.com
i have now setup my IDE but when creating project then getting following error

 grizzled-slf4j_2.9.2-0.6.10.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.
redisclient_2.9.2-2.10.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.
scalate-core_2.9-1.6.1.jar is cross-compiled with an incompatible version of Scala (2.9). In case of errorneous report, this check can be disabled in the compiler preference page.
Description    Resource    Path    Location    Type
scalate-util_2.9-1.6.1.jar is cross-compiled with an incompatible version of Scala (2.9). In case of errorneous report, this check can be disabled in the compiler preference page.    gatling-highcharts-maven-archetype        Unknown    Scala Classpath Problem
Description    Resource    Path    Location    Type
scopt_2.9.2-2.1.0.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.    gatling-highcharts-maven-archetype        Unknown    Scala Classpath Problem

scala 2.10 library is already added in the eclipse class path. any idea how i can remove these errors?


Stéphane Landelle

unread,
Feb 12, 2014, 1:44:43 AM2/12/14
to gat...@googlegroups.com
Until now, you've been trying to install Gatling 2, which is compiled with Scala 2.10, so you installed ScalaIDE for this version.
But now, you've been trying to install Gatling 1, which is compiled with Scala 2.9. If that's what you want to do, you have to install the proper ScalaIDE version.
Please properly read the ScalaIDE install page and pick the version that matched your eclipse and your Gatling version: http://scala-ide.org/download/current.html

invisible0786 .

unread,
Feb 12, 2014, 4:47:44 AM2/12/14
to gat...@googlegroups.com
1) Install JDK 7 / & JRE7
2) Install Eclipse 4.2 (Juno)
3) Install Scala 2.10.x
http://download.scala-ide.org/sdk/helium/e38/scala210/stable/site
4) Install Maven 1.5.3 from http://alchim31.free.fr/m2e-scala/update-site
5) Add Remote Category http://repository.excilys.com/content/groups/public/archetype-catalog.xml
6) Create Project, Select Excilys Remote Category and add following groupid and artifactid

 <groupId>com.excilys.ebi.gatling.highcharts</groupId>
    <artifactId>gatling-highcharts-maven-archetype</artifactId>

That's all I have done till now I think I have not installed scala 2.9 and gatling 1 yet and can see the following error


 grizzled-slf4j_2.9.2-0.6.10.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.
redisclient_2.9.2-2.10.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.
scalate-core_2.9-1.6.1.jar is cross-compiled with an incompatible version of Scala (2.9). In case of errorneous report, this check can be disabled in the compiler preference page.
Description    Resource    Path    Location    Type
scalate-util_2.9-1.6.1.jar is cross-compiled with an incompatible version of Scala (2.9). In case of errorneous report, this check can be disabled in the compiler preference page.    gatling-highcharts-maven-archetype        Unknown    Scala Classpath Problem
Description    Resource    Path    Location    Type
scopt_2.9.2-2.1.0.jar is cross-compiled with an incompatible version of Scala (2.9.2). In case of errorneous report, this check can be disabled in the compiler preference page.    gatling-highcharts-maven-archetype        Unknown    Scala Classpath Problem


Stéphane Landelle

unread,
Feb 12, 2014, 5:11:40 AM2/12/14
to gat...@googlegroups.com

6) Create Project, Select Excilys Remote Category and add following groupid and artifactid

 <groupId>com.excilys.ebi.gatling.highcharts</groupId>
    <artifactId>gatling-highcharts-maven-archetype</artifactId>

That's all I have done till now I think I have not installed scala 2.9 and gatling 1 yet and can see the following error


Yes, you did tried to install Gatling 1.

First thing on this page is to warn that it's about Gatling 1, so if you want to use Gatling 2, you'd better check the Gatling 2 page too.
And one of the first things on Gatling 2 page is to warn that groupId has changed and is now "io.gatling".

invisible0786 .

unread,
Feb 12, 2014, 8:22:11 AM2/12/14
to gat...@googlegroups.com
ok fine thanks and please don't be update about my question. Once I will get some expertise in this area then hopefully I will ask these kind of question again. :-)
Regards
KAPIL


Stéphane Landelle

unread,
Feb 12, 2014, 8:39:53 AM2/12/14
to gat...@googlegroups.com
No problem.
I know the Gatling 2 documentation is lacking for now.


--
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+u...@googlegroups.com.

invisible0786 .

unread,
Feb 13, 2014, 8:21:02 AM2/13/14
to gat...@googlegroups.com
OK Finally, I managed to setup Gatling 2 on my eclipse and no error occurring in my environment. how ever when I recording a script then I can see script is recorded on Gatling Recorder but when when click on save and stop recording then nothing is getting saved and I can not see any recorded script on my eclipse also getting following error during recording on eclipse

Feb 13, 2014 1:15:32 PM org.jboss.netty.channel.SimpleChannelHandler
WARNING: EXCEPTION, please implement io.gatling.recorder.http.handler.ServerHttpResponseHandler.exceptionCaught() for proper handling.
org.jboss.netty.channel.ConnectTimeoutException: connection timed out: api29.thetrafficstat.net/206.222.30.34:80
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processConnectTimeout(NioClientBoss.java:137)
    at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:83)
    at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312)
    at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

Any idea?

Regards
KAPIL

Stéphane Landelle

unread,
Feb 13, 2014, 8:39:30 AM2/13/14
to gat...@googlegroups.com
This was completely refactored in next version. However, that's just a warning and wouldn't explain why you don't get anything saved.
Could you try upgrading to Gatling 2 snapshot, please?

Just change the version in your pom.xml to 2.0.0-SNAPSHOT (hosted on Sonatype: https://oss.sonatype.org/content/repositories/snapshots/io/gatling/highcharts/gatling-charts-highcharts/2.0.0-SNAPSHOT/)

invisible0786 .

unread,
Feb 13, 2014, 9:04:23 AM2/13/14
to gat...@googlegroups.com
Thanks, Before I start play with Gatling scripting and execution. I would like to integrate Graphite as well so that i can monitor transaction summary, resource utilization etc during my execution.


Graphiteintegration docs are not clear in the wiki so could you please send the instaruction for
Graphite integration and how i need to run it for monitoring purpose?

Stéphane Landelle

unread,
Feb 13, 2014, 9:09:59 AM2/13/14
to gat...@googlegroups.com
Graphite is just a dashboard. If you want to monitor various things on your system, you'll have to do some lego and have some plugs report to Graphite.
For example, you can use jmxtrans: https://github.com/jmxtrans/jmxtrans

invisible0786 .

unread,
Feb 22, 2014, 10:43:17 AM2/22/14
to gat...@googlegroups.com
When recording the gatling recording some http request which is not related to application under test so i added those request in filter and selected EXCEPT but not successfuly. it is still recording unnecessary request. could you please advise how to define filder on record so that gatling can record only application request and not other??


On 12 February 2014 10:11, Stéphane Landelle <slan...@excilys.com> wrote:

invisible0786 .

unread,
Feb 22, 2014, 12:59:53 PM2/22/14
to gat...@googlegroups.com
I am capturing dynamic values using following command randomly.i.e.,
check(
  regex("""<a href="/excilys-bank-web/private/bank/account/(ACC[0-9]*)/operations.html">""")
  .saveAs("acc1"))
if I am getting let say more then one value for parameter acc1. now I want to select any one value randomly but don't know how we can select random value from dynamically created parameter? Please advise?

Stéphane Landelle

unread,
Feb 24, 2014, 4:24:39 AM2/24/14
to gat...@googlegroups.com
Recorder was only filtering on path, not full uri. We changed this in master.
Could it explain your problem?


--
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+u...@googlegroups.com.

Stéphane Landelle

unread,
Feb 24, 2014, 4:26:22 AM2/24/14
to gat...@googlegroups.com
Extract all the results (findAll), then transform in order to get a single random result:

invisible0786 .

unread,
Feb 24, 2014, 5:14:27 AM2/24/14
to gat...@googlegroups.com
alrite let say I am recording my application http:///xyz.com/index.html then getling recorder currently recording all request related to my application which is fine but it also recording some additional http request i.e., www.google.com etc and i don't want gatling to record these additional request and want to define these as some kind of filter to ignore this kind of traffic. how I can define these kind of filters in gatling?

another question:

2) I am capturing some value dynamically during runtime and want to select this value randomly. how I can select value randomly during rin time for any parameter?

3) I am using Eclipse IDE but where I can see my test related log etc, parameter value etc? in my gatling log?

Stéphane Landelle

unread,
Feb 24, 2014, 8:48:03 AM2/24/14
to gat...@googlegroups.com
2014-02-24 11:14 GMT+01:00 invisible0786 . <kapilj...@googlemail.com>:
alrite let say I am recording my application http:///xyz.com/index.html then getling recorder currently recording all request related to my application which is fine but it also recording some additional http request i.e., www.google.com etc and i don't want gatling to record these additional request and want to define these as some kind of filter to ignore this kind of traffic. how I can define these kind of filters in gatling?

Since this version, you can define white and black lists based on regular expressions that match the full url and not only the path.

 

another question:

2) I am capturing some value dynamically during runtime and want to select this value randomly. how I can select value randomly during rin time for any parameter?

See my previous email.
 

3) I am using Eclipse IDE but where I can see my test related log etc, parameter value etc? in my gatling log?

See logback.xml file for configuring logging.

narasimha rao

unread,
Feb 25, 2014, 4:23:52 AM2/25/14
to gat...@googlegroups.com
Open Gatling.bat and remove  "-XX:+OptimizeStringConcat". Now it works..........

invisible0786 .

unread,
Feb 25, 2014, 5:01:07 AM2/25/14
to gat...@googlegroups.com
I can see following debug and info messages in simulation.log file. any idea?


09:57:57.437 [DEBUG] c.n.h.c.AsyncCompletionHandlerBase - Connection timed out: no further information: goo.gl/173.194.41.142:80 to http://goo.gl/Je5mJ
java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.7.0_51]
    at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source) ~[na:1.7.0_51]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.connect(NioClientBoss.java:150) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:105) [netty-3.6.5.Final.jar:na]
Wrapped by: java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80 to http://goo.gl/Je5mJ
    at com.ning.http.client.providers.netty.NettyConnectListener.operationComplete(NettyConnectListener.java:103) ~[async-http-client-1.7.13.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:427) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.notifyListeners(DefaultChannelFuture.java:418) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.setFailure(DefaultChannelFuture.java:380) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:109) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:79) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) [netty-3.6.5.Final.jar:na]
    at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) [netty-3.6.5.Final.jar:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.7.0_51]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.7.0_51]
    at java.lang.Thread.run(Unknown Source) [na:1.7.0_51]
09:57:57.447 [DEBUG] c.n.h.c.p.n.NettyAsyncHttpProvider - Unexpected I/O exception on channel [id: 0x30cc2bb1]
java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.7.0_51]
    at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source) ~[na:1.7.0_51]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.connect(NioClientBoss.java:150) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:105) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:79) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42) ~[netty-3.6.5.Final.jar:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.7.0_51]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.7.0_51]
    at java.lang.Thread.run(Unknown Source) [na:1.7.0_51]
09:57:57.448 [DEBUG] c.n.h.c.p.n.NettyAsyncHttpProvider - Closing Channel [id: 0x30cc2bb1]
09:57:57.455 [INFO ] i.g.h.c.HttpProtocolConfigurationBuilder - Couldn't execute warm up request http://goo.gl/Je5mJ
java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.7.0_51]
    at sun.nio.ch.SocketChannelImpl.finishConnect(Unknown Source) ~[na:1.7.0_51]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.connect(NioClientBoss.java:150) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:105) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:79) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42) ~[netty-3.6.5.Final.jar:na]
Wrapped by: java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80 to http://goo.gl/Je5mJ
    at com.ning.http.client.providers.netty.NettyConnectListener.operationComplete(NettyConnectListener.java:103) ~[async-http-client-1.7.13.jar:na]
Wrapped by: java.util.concurrent.ExecutionException: java.net.ConnectException: Connection timed out: no further information: goo.gl/173.194.41.142:80 to http://goo.gl/Je5mJ
    at com.ning.http.client.providers.netty.NettyResponseFuture.abort(NettyResponseFuture.java:327) ~[async-http-client-1.7.13.jar:na]
    at com.ning.http.client.providers.netty.NettyConnectListener.operationComplete(NettyConnectListener.java:107) ~[async-http-client-1.7.13.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:427) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.notifyListeners(DefaultChannelFuture.java:418) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.DefaultChannelFuture.setFailure(DefaultChannelFuture.java:380) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.processSelectedKeys(NioClientBoss.java:109) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.process(NioClientBoss.java:79) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.channel.socket.nio.NioClientBoss.run(NioClientBoss.java:42) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) ~[netty-3.6.5.Final.jar:na]
    at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) ~[netty-3.6.5.Final.jar:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:1.7.0_51]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:1.7.0_51]
    at java.lang.Thread.run(Unknown Source) ~[na:1.7.0_51]


--

Stéphane Landelle

unread,
Feb 25, 2014, 5:06:58 AM2/25/14
to gat...@googlegroups.com
My 2 cents: either you don't have an internet connection, or you're behind a proxy, so you can't access the internet directly.


--
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+u...@googlegroups.com.

invisible0786 .

unread,
Feb 25, 2014, 5:15:51 AM2/25/14
to gat...@googlegroups.com
Yes I am behind the proxy. how do i print dynamic parameter value on console output?

Stéphane Landelle

unread,
Feb 25, 2014, 5:20:00 AM2/25/14
to gat...@googlegroups.com
WDYM?

invisible0786 .

unread,
Feb 25, 2014, 5:24:48 AM2/25/14
to gat...@googlegroups.com
sorry steph i don't understand this. what is WDYM?

Stéphane Landelle

unread,
Feb 25, 2014, 5:48:39 AM2/25/14
to gat...@googlegroups.com
WDYM = What Do you Mean

invisible0786 .

unread,
Feb 25, 2014, 6:14:35 AM2/25/14
to gat...@googlegroups.com
I am capturing value dynamically for field ID as follows

check(regex("""&id=(.*?)">""").saveAs("ID")))

now I want to print this value on console output so that I can verify it manually first?

Stéphane Landelle

unread,
Feb 25, 2014, 6:17:15 AM2/25/14
to gat...@googlegroups.com

invisible0786 .

unread,
Feb 25, 2014, 6:37:16 AM2/25/14
to gat...@googlegroups.com
OK Thanks.

i have defined following function in my gatling file
 def selectRandomElementFromList(list: List[String]) : String = {
    val rand = new Random(System.currentTimeMillis());
    val random_index = rand.nextInt(list.length);
    val result = list(random_index);
    return result
  }

now i want to use this function so that i can select a random value for following regex

check(regex("""categoryId=(.*?)"><""").findAll.transform(selectRandomElementFromList).saveAs("categoryId"))

however this particular step is failing with error "type mismatch; found:String Required: Option[?]"

Can you advise what wrong i am doing here ?

Stéphane Landelle

unread,
Feb 25, 2014, 7:27:33 AM2/25/14
to gat...@googlegroups.com
You've switch from Gatling 1 to Gatling 2, right?

First, findAll returns a Seq, not a List, so it's:
def selectRandomElementFromList(list: Seq[String]) instead of List

Then, in Gatling 2, transform signature is not Option => Option, so

transform(_.map(selectRandomElementFromList))

invisible0786 .

unread,
Feb 25, 2014, 7:50:35 AM2/25/14
to gat...@googlegroups.com
Hurrey my problem is solved. I am using gatling 2 only and not switched from 1 to 2. really interested tool and I am really loving it. Only I found initially people may struggle little if they are not familiar with scala.

Secondly I need to focus and achieve little bit if I can integrate it with graphite and if I can monitor server specific resources etc??

I will raise more question in next few days time until i get 100 % confidence so please don't mind and don't be upset if I ask silly questions?

Stéphane Landelle

unread,
Feb 25, 2014, 7:56:22 AM2/25/14
to gat...@googlegroups.com
No pro, go ahead!

invisible0786 .

unread,
Feb 25, 2014, 8:16:33 AM2/25/14
to gat...@googlegroups.com
I would like a define a work load modal as follows

1) Rampup 50 user in 60 seconds
2) when all 50 users are up and running then run the whole scenario for 30 minutes
3) ramp down all 50 users in 60 seconds

I have defined my scenario as follows
setUp(jpetstorescn.inject(ramp(50 users) over (5 seconds)).protocolConfig(httpConf))

But in this scenario all 50 users are running only 1 iteration and then ramped down all. how I can define scenario as per my requirement above?


Stéphane Landelle

unread,
Feb 25, 2014, 10:43:16 AM2/25/14
to gat...@googlegroups.com
Wrap you scenario content in a during loop.

invisible0786 .

unread,
Feb 26, 2014, 9:00:46 AM2/26/14
to gat...@googlegroups.com
how to use feeder in gatling 2. don't know but i am getting error when using feed(feeder) after .headers(headers_3) request ?

val feeder = csv("MTUserData.csv").circular
       
    val login = exec(http("TX02_TourLogin")
            .post("/servlets/com.tours.servlet.SignonServlet")
            .headers(headers_3)
            .feed(feeder)
            .queryParam("""procSub""", """1""")
            .param("""userName""", "${UserName}")
            .param("""password""", "${UserPwd}")
            .param("""login.x""", """32""")
            .param("""login.y""", """11"""))
        .pause(47 milliseconds)

any idea?

Stéphane Landelle

unread,
Feb 26, 2014, 9:59:08 AM2/26/14
to gat...@googlegroups.com
This doesn't work in Gatling 1 either.

feed doesn't belong to request, it's a structure DSL element, just like exec:

 val login = feed(feeder)
            .exec(http("TX02_TourLogin")
            .post("/servlets/com.tours.servlet.SignonServlet")
            .headers(headers_3)

            .queryParam("""procSub""", """1""")
            .param("""userName""", "${UserName}")
            .param("""password""", "${UserPwd}")
            .param("""login.x""", """32""")
            .param("""login.y""", """11"""))
        .pause(47 milliseconds)

invisible0786 .

unread,
Feb 26, 2014, 12:05:21 PM2/26/14
to gat...@googlegroups.com
Hi Steph,

When login into my application then I am getting currently a window popup with message that my application is blocked by security but the work around is that if i click on OK button on this popup window then i can continue my business process. how I can achieve this via gatling?

See attached screenshot


BlockerScreenshot.docx

Nicolas Rémond

unread,
Feb 26, 2014, 12:18:11 PM2/26/14
to gat...@googlegroups.com
Gatling works at the HTTP level ... so, is there any HTTP request fired after clicking "yes" ?

invisible0786 .

unread,
Feb 26, 2014, 12:23:13 PM2/26/14
to gat...@googlegroups.com
yes after clicking on "OK" button on windows security popup i have completed my business process successfully and recorded all http traffic. but during replay it's failing in window popup step i guess?

Stéphane Landelle

unread,
Feb 26, 2014, 12:23:36 PM2/26/14
to gat...@googlegroups.com
The warning on the reports is probably about the page executing javascript from the file system.
It has nothing to do with the recorder. 

invisible0786 .

unread,
Feb 26, 2014, 4:24:08 PM2/26/14
to gat...@googlegroups.com
I think that pop up is related to java security and its blocking some application related feature like calender. If user click manually ok button from that pop up window then I can run the whole business process manually and want to do the  same via Gatling if it"s possible? 
How I can simulate the user click on ok button from pop up window?

Stéphane Landelle

unread,
Feb 27, 2014, 5:00:07 AM2/27/14
to gat...@googlegroups.com
You mean you have an applet in your page?
Gatling is not a browser and won't execute it, it works at protocol level.


--
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+u...@googlegroups.com.

invisible0786 .

unread,
Feb 27, 2014, 8:42:26 AM2/27/14
to gat...@googlegroups.com
no it's not applet. see attach screenshot
BlockerScreenshot.docx

Stéphane Landelle

unread,
Feb 27, 2014, 8:46:10 AM2/27/14
to gat...@googlegroups.com
Anyway, that's a minor problem and it probably doesn't happen with Firefox and Chrome...

invisible0786 .

unread,
Feb 27, 2014, 8:54:41 AM2/27/14
to gat...@googlegroups.com
ok so is there any way to configure browser so that gatling can alway use firefox or chrome browser during execution time? I think by default it is using IE??

Stéphane Landelle

unread,
Feb 27, 2014, 8:56:46 AM2/27/14
to gat...@googlegroups.com
No, you don't get it: when running, Gatling doesn't use a browser, but just a java HTTP client (AsyncHttpClient + Netty).

invisible0786 .

unread,
Mar 1, 2014, 5:00:08 PM3/1/14
to gat...@googlegroups.com
i have got two combo box Car Make and Car Model and when user click on car Make combo box then only value is getting populated in car make combo box and when user select any make value then only corresponding value for car model is getting populated. when user click on these combo box then .jsf is executed.

now i want to extract value for car make and value for car model dynamically in run time but not successful through check(regex). could you advice on this please ??

.exec(http("TX08_AutoQuoteAgeGenderPage_2")
            .get("/InsuranceWebExtJS/data/carMakeData.jsf")
            .headers(headers_4)
            .queryParam("""_dc""", """1393682063143""")
            check(status.is(200)))
        .pause(26)

exec(http("TX09_AutoQuoteYearMake_1")
                                .post("/InsuranceWebExtJS/data/carMakeData.jsf")
                                .headers(headers_9)
                                .param("""query""", """""")
                                check(status.is(200)))
                            .pause(1)
                            .exec(http("TX10_AutoQuoteYearMake_2")
                                    .get("/InsuranceWebExtJS/data/carModelData.jsf")
                                    .headers(headers_4)
                                    .queryParam("""carMake""", """Chrysler""")
                                    .queryParam("""_dc""", """1393682090973""")
                                    check(status.is(200)))
                            .pause(1)
                            .exec(http("TX11_AutoQuoteYearMake_3")
                                .post("/InsuranceWebExtJS/data/carModelData.jsf")
                                .headers(headers_9)
                                .queryParam("""carMake""", """Chrysler""")
                                .param("""query""", """""")
                                check(status.is(200)))
                            .pause(4)

Regards
KAPIL

Stéphane Landelle

unread,
Mar 2, 2014, 4:23:45 AM3/2/14
to gat...@googlegroups.com
The first step is to save the data lists that populate your boxes with a check.
You have to find out which HTTP request returns this data.

Then, once you've successfully done this, you can select one element of the list, for example with EL ${foo.random}

invisible0786 .

unread,
Mar 3, 2014, 10:45:59 AM3/3/14
to gat...@googlegroups.com
I m getting following netty timeout error when running 100 user test. i can access my application manually fine during the test test. any idea?

15:39:07.504 [WARN ] i.g.h.a.GatlingAsyncHandlerActor - Request 'TX02_JoinTheExperience' failed : GatlingAsyncHandlerActor timed out
15:39:07.504 [INFO ] i.g.c.a.Pause - can't pause (remaining time shift=392317ms)
15:39:48.157 [INFO ] i.g.c.a.Pause - can't pause (remaining time shift=392071ms)
15:39:07.503 [INFO ] i.g.h.a.HttpRequestAction - Sending request 'TX11_SelectAnyProductBackToMainMenu': scenario 'ShopItOrder', userId #4557
SLF4J: Failed toString() invocation on an object of type [org.jboss.netty.handler.codec.http.DefaultHttpRequest]
15:39:38.091 [WARN ] i.g.h.a.GatlingAsyncHandlerActor - Request 'TX07_SearchProductBackToMainMenu' failed : GatlingAsyncHandlerActor timed out
15:39:36.092 [INFO ] i.g.h.a.HttpRequestAction - Sending request 'TX05_SearchProduct': scenario 'ShopItOrder', userId #7275

invisible0786 .

unread,
Mar 27, 2014, 7:29:31 AM3/27/14
to gat...@googlegroups.com
Hi Stephane, I would like to to implement following scenario via gatling but don't know if it is possible or now so could you please advice me.,

Machine 1 - Act As Controller
Machine 2 - Act as Injector -> Connect controller and injector and produce 5000 user load on this machine.
Machine 3- Act as Injector -> Connect controller and injector and produce another 5000 user load on this machine.

Once test execution is complete then collect the combined result from both injector machine to  controller machine for test result analysis.

Is it possible to implement this scenarion via gatling ?? please advice?

Stéphane Landelle

unread,
Mar 27, 2014, 7:33:42 AM3/27/14
to gat...@googlegroups.com

Kapil

unread,
Feb 9, 2018, 5:35:56 PM2/9/18
to Gatling User Group
Hi Stéphane ,

Please can some one point me the URL or share the detailed instruction about what eclipse scala ide version I should use to integrate MVN and Gatling etc

I am getting following error so may i am doing some thing wrong

Can't resolve Archetype io.gatling.highcharts:gatling-highcharts-maven-archetype:2.3.0

Please can you send me detail step by step so I use Gatling using eclipse for my POC ?

Regards
KAPIL



On Sunday, February 9, 2014 at 5:33:27 PM UTC, Stéphane Landelle wrote:
Are you sure you don't have multiple JRE/JDK installations on your machine and that they're messed up?
For example, did you set a JAVA_HOME that actually targets an old Java 6? Did you check which version is in your path?


2014-02-09 18:29 GMT+01:00 invisible0786 . <kapilj...@googlemail.com>:
i am using gatling 2 running this with jdk1.7.0_51 and jre7 so i guess i am using all latest jdk installation in my machine?

Where I can find step by step installtion instruction for Gatling?


On 9 February 2014 17:25, Stéphane Landelle <slan...@excilys.com> wrote:
OptimizeStringConcat was introduced in Java 6u20, so it's quite old.
You should upgrade to a modern JDK.


2014-02-09 18:24 GMT+01:00 invisible0786 . <kapilj...@googlemail.com>:

i am using 32 bit jvm.


On 9 February 2014 17:04, <nicolas...@gmail.com> wrote:
Which version of the JVM are you using? 32 or 64 bits?

Cheers
Nicolas


On Sun, Feb 9, 2014 at 5:50 PM, invisible0786 <kapilj...@googlemail.com> wrote:

When executing gatling.sh then getting following error

Unrecognized VM option 'OptimizeStringConcat'
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Any idea?

--
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+u...@googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "Gatling User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gatling/gCQf5USjaNw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gatling+u...@googlegroups.com.

For more options, visit https://groups.google.com/groups/opt_out.

--
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+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to a topic in the Google Groups "Gatling User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gatling/gCQf5USjaNw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gatling+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Reply all
Reply to author
Forward
0 new messages