You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by dk...@apache.org on 2015/04/20 16:17:53 UTC
[16/23] incubator-tinkerpop git commit: Drop out gatling tests
TINKERPOP3-606
Drop out gatling tests TINKERPOP3-606
Too many pom conflicts to manage and lots of weird scala errors trying to bring it back to life. Keeps breaking on every gatling/scala version bump. In short, too much maintenance.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/commit/d7c0fa88
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/tree/d7c0fa88
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/diff/d7c0fa88
Branch: refs/heads/io-docs
Commit: d7c0fa887c2de26d0c27613b45306203d67ff25c
Parents: 19f83de
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Apr 17 15:13:09 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Apr 17 15:13:09 2015 -0400
----------------------------------------------------------------------
README.asciidoc | 1 -
gremlin-server/pom.xml | 176 -------------------
.../src/test/resources/application.conf | 26 ---
gremlin-server/src/test/resources/gatling.conf | 109 ------------
.../src/test/resources/logback-test.xml | 39 ----
.../GremlinServerAdditionSimulation.scala | 96 ----------
6 files changed, 447 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index b8ead67..e92b6dc 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -47,7 +47,6 @@ mvn -Dmaven.javadoc.skip=true --projects tinkergraph-gremlin test
* Deploy JavaDocs/AsciiDocs: `bin/publish-docs.sh svn-username`
* Integration Tests: `mvn verify -DskipIntegrationTests=false`
* Performance Tests: `mvn verify -DskipPerformanceTests=false`
-* Gatling Load Tests: `mvn test -Pgatling -Dhost={hostname}`
IDE Setup
^^^^^^^^^
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/gremlin-server/pom.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/pom.xml b/gremlin-server/pom.xml
index 8a7c853..68061e4 100644
--- a/gremlin-server/pom.xml
+++ b/gremlin-server/pom.xml
@@ -140,180 +140,4 @@ limitations under the License.
</plugin>
</plugins>
</build>
-
- <profiles>
- <profile>
- <id>gatling</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- <property>
- <name>gatling</name>
- </property>
- </activation>
-
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <gatling.io.version>2.0.0-RC2</gatling.io.version>
- <scala.version>2.10</scala.version>
- </properties>
-
- <dependencies>
- <!-- include to resolve conflicts within gatling -->
- <dependency>
- <groupId>com.typesafe</groupId>
- <artifactId>config</artifactId>
- <version>0.3.1</version>
- <scope>test</scope>
- </dependency>
- <!-- include to resolve conflicts within gatling -->
- <dependency>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-reflect</artifactId>
- <version>2.10.2</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>io.gatling</groupId>
- <artifactId>gatling-core</artifactId>
- <version>${gatling.io.version}</version>
- <scope>test</scope>
- <exclusions>
- <!-- self-conflict -->
- <exclusion>
- <groupId>com.typesafe</groupId>
- <artifactId>config</artifactId>
- </exclusion>
- <!-- conflict with tinkerpop -->
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-library</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-reflect</artifactId>
- </exclusion>
- <!-- conflict with tinkerpop slf4j -->
- <exclusion>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.scalaj</groupId>
- <artifactId>scalaj-collection_${scala.version}</artifactId>
- <version>1.5</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>io.gatling</groupId>
- <artifactId>gatling-recorder</artifactId>
- <version>${gatling.io.version}</version>
- <scope>test</scope>
- <exclusions>
- <!-- conflict with tinkerpop slf4j -->
- <exclusion>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- </exclusion>
- <!-- conflict with tinkerpop -->
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-library</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>io.netty</groupId>
- <artifactId>netty</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>io.gatling.highcharts</groupId>
- <artifactId>gatling-charts-highcharts</artifactId>
- <version>${gatling.io.version}</version>
- <scope>test</scope>
- <exclusions>
- <!-- conflict with tinkerpop -->
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-library</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-compiler</artifactId>
- </exclusion>
- <!-- self-conflict -->
- <exclusion>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-reflect</artifactId>
- </exclusion>
- <!-- conflict with gatling-core -->
- <exclusion>
- <groupId>com.typesafe.akka</groupId>
- <artifactId>akka-actor_2.10</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>io.gatling</groupId>
- <artifactId>gatling-maven-plugin</artifactId>
- <version>${gatling.io.version}</version>
- <executions>
- <execution>
- <phase>test</phase>
- <goals>
- <goal>execute</goal>
- </goals>
- <configuration>
- <configDir>src/test/resources</configDir>
- <resultsFolder>target/gatling/results</resultsFolder>
- <simulationsFolder>src/test/scala</simulationsFolder>
- <includes>
- <include>**/*.scala</include>
- </includes>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <repositories>
- <repository>
- <id>excilys</id>
- <name>Excilys Repository</name>
- <url>http://repository.excilys.com/content/groups/public</url>
- </repository>
- </repositories>
- <pluginRepositories>
- <pluginRepository>
- <id>excilys</id>
- <name>Excilys Repository</name>
- <url>http://repository.excilys.com/content/groups/public</url>
- </pluginRepository>
- </pluginRepositories>
- </profile>
- </profiles>
</project>
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/gremlin-server/src/test/resources/application.conf
----------------------------------------------------------------------
diff --git a/gremlin-server/src/test/resources/application.conf b/gremlin-server/src/test/resources/application.conf
deleted file mode 100644
index 379cc52..0000000
--- a/gremlin-server/src/test/resources/application.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-####################################
-# Akka Actor Config File #
-####################################
-
-akka {
- scheduler {
- tick-duration = 50ms
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/gremlin-server/src/test/resources/gatling.conf
----------------------------------------------------------------------
diff --git a/gremlin-server/src/test/resources/gatling.conf b/gremlin-server/src/test/resources/gatling.conf
deleted file mode 100644
index 4bf000e..0000000
--- a/gremlin-server/src/test/resources/gatling.conf
+++ /dev/null
@@ -1,109 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-
-#########################
-# Gatling Configuration #
-#########################
-
-# This file contains all the settings configurable for Gatling with their default values
-
-gatling {
- core {
- #outputDirectoryBaseName = ""
- #runDescription = run
- #encoding = "utf-8" # encoding for every file manipulation made in gatling
- #class = ""
- #cacheRegex = true
- #cacheXPath = true
- #cacheJsonPath = true
- #simulationClass = ""
- cache {
- #regex = true
- #xpath = true
- #jsonPath = true
- }
- timeOut {
- #simulation = 86400 # in s
- #actor = 5 # in s
- }
- directory {
- #data = user-files/data
- #requestBodies = user-files/request-bodies
- #simulations = user-files/simulations
- #reportsOnly = ""
- #binaries = ""
- #results = results
- }
- }
- charting {
- #noReports = false
- #statsTsvSeparator = "\t"
- maxPlotPerSeries = 1000
- accuracy = 10 # in ms
- indicators {
- lowerBound = 800 # in ms
- higherBound = 1200 # in ms
- percentile1 = 95 # in percents
- percentile2 = 99 # in percents
- }
- }
- http {
- #provider = "Netty" # Choose between 'Netty', 'JDK', 'Apache' or 'Grizzly'
- #allowPoolingConnection = true
- #allowSslConnectionPool = true
- #compressionEnabled = true # Set if compression should be supported or not
- #connectionTimeout = 60000 # Timeout of the connection to the server (ms)
- #idleConnectionInPoolTimeoutInMs = 60000
- #idleConnectionTimeoutInMs = 60000
- #ioThreadMultiplier = 2
- #maximumConnectionsPerHost = -1
- #maximumConnectionsTotal = -1
- #maxRetry = 5 # number of times that a request should be tried again
- #requestCompressionLevel = -1
- #requestTimeoutInMs = 60000 # Timeout of the requests (ms)
- #useProxyProperties = false
- #userAgent = "NING/1.0"
- #useRawUrl = false
- #nonStandardJsonSupport = []
- #warmUpUrl = "http://goo.gl/xUrsE"
- ssl {
- trustStore {
- #type = ""
- #file = ""
- #password = ""
- #algorithm = ""
- }
- keyStore {
- #type = ""
- #file = ""
- #password = ""
- #algorithm = ""
- }
- }
- }
- data {
- #writers = [console, file]
- #reader = file
- }
- graphite {
- #host = "localhost"
- #port = 2003
- #protocol = "tcp" # Choose between 'tcp' or 'udp'
- #rootPathPrefix = "gatling"
- #bucketWidth = 100
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/gremlin-server/src/test/resources/logback-test.xml
----------------------------------------------------------------------
diff --git a/gremlin-server/src/test/resources/logback-test.xml b/gremlin-server/src/test/resources/logback-test.xml
deleted file mode 100644
index f10e06c..0000000
--- a/gremlin-server/src/test/resources/logback-test.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements. See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-<configuration>
-
- <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
- <resetJUL>true</resetJUL>
- </contextListener>
-
- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>%d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx</pattern>
- <immediateFlush>false</immediateFlush>
- </encoder>
- </appender>
-
- <!-- Uncomment for logging ALL HTTP request and responses -->
- <!-- <logger name="com.excilys.ebi.gatling.http" level="TRACE" /> -->
- <!-- Uncomment for logging ONLY FAILED HTTP request and responses -->
- <!-- <logger name="com.excilys.ebi.gatling.http" level="DEBUG" /> -->
-
- <root level="WARN">
- <appender-ref ref="CONSOLE"/>
- </root>
-
-</configuration>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/d7c0fa88/gremlin-server/src/test/scala/org/apache/tinkerpop/gremlin/server/simulation/GremlinServerAdditionSimulation.scala
----------------------------------------------------------------------
diff --git a/gremlin-server/src/test/scala/org/apache/tinkerpop/gremlin/server/simulation/GremlinServerAdditionSimulation.scala b/gremlin-server/src/test/scala/org/apache/tinkerpop/gremlin/server/simulation/GremlinServerAdditionSimulation.scala
deleted file mode 100644
index 8a9f4c0..0000000
--- a/gremlin-server/src/test/scala/org/apache/tinkerpop/gremlin/server/simulation/GremlinServerAdditionSimulation.scala
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.tinkerpop.gremlin.server.simulation
-
-import io.gatling.core.Predef._
-import scala.concurrent.duration._
-import akka.actor.ActorRef
-import io.gatling.core.action.builder.ActionBuilder
-import io.gatling.core.action.Chainable
-import akka.actor.Props
-import io.gatling.core.result.message.{KO, OK}
-import io.gatling.core.result.writer.{RequestMessage, DataWriter}
-import org.apache.tinkerpop.gremlin.driver.{Client, Cluster}
-
-class GremlinServerAdditionSimulation extends Simulation {
- val host: String = System.getProperty("host", "localhost")
- val maxConnectionPoolSize: Integer = Integer.getInteger("maxConnectionPoolSize", 64)
- val cluster: Cluster = Cluster.create(host)
- .maxConnectionPoolSize(maxConnectionPoolSize)
- .build()
-
- val addition = new ActionBuilder {
- def build(next: ActorRef) = system.actorOf(Props(new GremlinServerAction(next, cluster, "1+1")))
- }
-
- val randomNumberedRequests = scenario("Random Numbered Requests").randomSwitch(
- 50 -> repeat(100) {
- exec(addition)
- },
- 50 -> repeat(200) {
- exec(addition)
- }
- )
-
- val fixedRequests = scenario("Fixed Requests").repeat(5) {
- exec(addition)
- }
-
- setUp(
- fixedRequests.inject(
- constantRate(1000 userPerSec) during(60 seconds),
- nothingFor(5 seconds),
- ramp(5000 users) over (60 seconds)),
- randomNumberedRequests.inject(
- nothingFor(180 seconds),
- split(1000 users).into(ramp(100 users) over (25 seconds)).separatedBy(1 seconds))
- ).assertions(global.responseTime.max.lessThan(250), global.successfulRequests.percent.greaterThan(95))
-}
-
-class GremlinServerAction(val next: ActorRef, val cluster: Cluster, val script: String) extends Chainable {
- val client: Client = cluster.connect
-
- def send(session: Session) {
- client.submitAsync(script)
- }
-
- def execute(session: Session) {
- var start: Long = 0L
- var end: Long = 0L
- var status: Status = OK
- var errorMessage: Option[String] = None
-
- try {
- start = System.currentTimeMillis
- send(session)
- end = System.currentTimeMillis
- } catch {
- case e: Exception =>
- errorMessage = Some(e.getMessage)
- logger.error("Stinks - that FAILED", e)
- status = KO
- } finally {
- DataWriter.tell(
- RequestMessage(session.scenarioName, session.userId, session.groupStack, "Gremlin Server Test Scenario",
- start, start, end, end,
- status, errorMessage, Nil))
- next ! session
- }
- }
-}
\ No newline at end of file