Hi,
Trying to generate a report from a concurrent run on several remote servers. Have already done so several times. Now, suddenly, I’m getting this:
GATLING_HOME is set to /home/ubuntu/gatling
Parsing log file(s)…
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: -23146894
at io.gatling.charts.stats.buffers.CountsBuffer.update(CountBuffer.scala:35)
at io.gatling.charts.stats.buffers.ResponsesPerSecBuffers$class.updateResponsesPerSecBuffers(ResponsesPerSecBuffers.scala:32)
at io.gatling.charts.stats.ResultsHolder.updateResponsesPerSecBuffers(ResultsHolder.scala:21)
at io.gatling.charts.stats.ResultsHolder.addRequestRecord(ResultsHolder.scala:48)
at io.gatling.charts.stats.LogFileReader.io$gatling$charts$stats$LogFileReader$$$anonfun$10(LogFileReader.scala:150)
at io.gatling.charts.stats.LogFileReader$lambda$$secondPass$1.apply(LogFileReader.scala:145)
at io.gatling.charts.stats.LogFileReader$lambda$$secondPass$1.apply(LogFileReader.scala:145)
at scala.collection.Iterator$class.foreach(Iterator.scala:893)
at scala.collection.Iterator$ConcatIterator.foreach(Iterator.scala:168)
at io.gatling.charts.stats.LogFileReader.secondPass(LogFileReader.scala:145)
at io.gatling.charts.stats.LogFileReader.io$gatling$charts$stats$LogFileReader$$$anonfun$11(LogFileReader.scala:165)
at io.gatling.charts.stats.LogFileReader$lambda$3.apply(LogFileReader.scala:165)
at io.gatling.charts.stats.LogFileReader$lambda$3.apply(LogFileReader.scala:165)
at io.gatling.charts.stats.LogFileReader.parseInputFiles(LogFileReader.scala:63)
at io.gatling.charts.stats.LogFileReader.(LogFileReader.scala:165)
at io.gatling.app.LogFileProcessor.initLogFileReader(RunResultProcessor.scala:55)
at io.gatling.app.LogFileProcessor.processRunResult(RunResultProcessor.scala:37)
at io.gatling.app.Gatling.start(Gatling.scala:66)
at io.gatling.app.Gatling$.start(Gatling.scala:57)
at io.gatling.app.Gatling$.fromArgs(Gatling.scala:49)
at io.gatling.app.Gatling$.main(Gatling.scala:43)
at io.gatling.app.Gatling.main(Gatling.scala)
I have no idea why. Any suggestions? I’ve been able to generate reports just fine in the past.
Could you please provide a way to reproduce, eg a simulation.log?
I’d love to, but I’m afraid I don’t have those files any more. If I encounter the error again, I’ll post a followup.
For me it happened with the attached file.
simulation.log (5.73 MB)
You sample works just fine for me (checked with both 2.2.4 and master).
https://www.dropbox.com/s/eyp5h5uhtpqh5gy/paul.zip?dl=0
Grasping at straws here but my report would be generated on a Debian machine, could this be of interest for you?
I don’t have a Debian, but I tested on OSX, Ubuntu and Fedora.
Anyway, I fail to see how such issue could be OS related.
I really suspect that don’t have 2.2.3 nor 2.2.4 deployed but actually run an older version.
My pom.xml references 2.2.4, I am using the maven plugin
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<scala.version>2.11.8</scala.version>
<encoding>UTF-8</encoding>
<gatling.version>2.2.4</gatling.version>
<gatling-plugin.version>2.2.4</gatling-plugin.version>
<scala-maven-plugin.version>3.2.2</scala-maven-plugin.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.gatling</groupId>
<artifactId>gatling-app</artifactId>
<version>${gatling.version}</version>
</dependency>
<dependency>
<groupId>io.gatling</groupId>
<artifactId>gatling-recorder</artifactId>
<version>${gatling.version}</version>
</dependency>
<dependency>
<groupId>io.gatling.highcharts</groupId>
<artifactId>gatling-charts-highcharts</artifactId>
<version>${gatling.version}</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>io.gatling.highcharts</groupId>
<artifactId>gatling-charts-highcharts</artifactId>
</dependency>
<dependency>
<groupId>io.gatling</groupId>
<artifactId>gatling-app</artifactId>
</dependency>
<dependency>
<groupId>io.gatling</groupId>
<artifactId>gatling-recorder</artifactId>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
</dependency>
</dependencies>
I guess Debian is actually your CI platform.
Have you checked that it indeed took the pom/gatling upgrade into account and that it’s not actually running an old Gatling version?