This is an automated email from the ASF dual-hosted git repository.
rustyrazorblade pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cassandra-easy-stress.git
The following commit(s) were added to refs/heads/main by this push:
new 53cb19a Upgrade ktlint to the newest version and reformat (#77)
53cb19a is described below
commit 53cb19a09a72bdefe409ece175d01285733b10a4
Author: Jon Haddad <[email protected]>
AuthorDate: Sun Nov 16 13:26:07 2025 -0700
Upgrade ktlint to the newest version and reformat (#77)
---
gradle/libs.versions.toml | 2 +-
.../cassandra/easystress/CommandLineParser.kt | 8 ++----
.../org/apache/cassandra/easystress/Either.kt | 8 ++++--
.../apache/cassandra/easystress/FileReporter.kt | 18 +++++++-----
.../org/apache/cassandra/easystress/Metrics.kt | 14 +++++----
.../apache/cassandra/easystress/MinimumVersion.kt | 4 ++-
.../apache/cassandra/easystress/PartitionKey.kt | 9 +++---
.../cassandra/easystress/PartitionKeyGenerator.kt | 8 ++----
.../apache/cassandra/easystress/PopulateOption.kt | 5 +++-
.../cassandra/easystress/RateLimiterOptimizer.kt | 9 ++----
.../apache/cassandra/easystress/SchemaBuilder.kt | 23 +++++++++------
.../easystress/SingleLineConsoleReporter.kt | 16 ++++++-----
.../cassandra/easystress/ThroughputTracker.kt | 5 +++-
.../kotlin/org/apache/cassandra/easystress/Util.kt | 4 +--
.../org/apache/cassandra/easystress/Workload.kt | 8 +++---
.../cassandra/easystress/WorkloadParameter.kt | 4 ++-
.../easystress/generators/FunctionLoader.kt | 8 ++++--
.../easystress/generators/ParsedFieldFunction.kt | 4 ++-
.../cassandra/easystress/generators/Registry.kt | 21 ++++++++------
.../easystress/generators/functions/FirstName.kt | 3 +-
.../easystress/generators/functions/LastName.kt | 3 +-
.../easystress/generators/functions/USCities.kt | 20 +++++++++----
.../easystress/server/ToolInputSchemaGenerator.kt | 5 ++--
.../easystress/server/tools/FieldsTool.kt | 5 ++--
.../easystress/server/tools/ListWorkloadsTool.kt | 5 ++--
.../easystress/server/tools/WorkloadInfoTool.kt | 5 ++--
.../easystress/workloads/AllowFiltering.kt | 14 +++++----
.../easystress/workloads/BasicTimeSeries.kt | 14 +++++----
.../cassandra/easystress/workloads/CountersWide.kt | 17 ++++++-----
.../cassandra/easystress/workloads/CreateDrop.kt | 22 +++++++--------
.../cassandra/easystress/workloads/DSESearch.kt | 18 +++++++-----
.../cassandra/easystress/workloads/KeyValue.kt | 7 ++---
.../apache/cassandra/easystress/workloads/LWT.kt | 29 +++++++++++--------
.../cassandra/easystress/workloads/Locking.kt | 16 ++++++-----
.../apache/cassandra/easystress/workloads/Maps.kt | 14 +++++----
.../easystress/workloads/MaterializedViews.kt | 17 ++++++-----
.../easystress/workloads/RandomPartitionAccess.kt | 20 +++++++------
.../cassandra/easystress/workloads/RangeScan.kt | 33 ++++++++++------------
.../apache/cassandra/easystress/workloads/SAI.kt | 11 ++++----
.../apache/cassandra/easystress/workloads/Sets.kt | 13 ++++-----
.../easystress/workloads/UdtTimeSeries.kt | 30 +++++++++++++-------
.../easystress/PartitionKeyGeneratorTest.kt | 7 ++++-
.../easystress/RateLimiterOptimizerTest.kt | 4 +--
.../cassandra/easystress/SchemaBuilderTest.kt | 6 ++--
.../easystress/generators/RegistryTest.kt | 6 ++--
.../easystress/generators/USCitiesTest.kt | 3 +-
.../integration/AllWorkloadsBasicTest.kt | 27 +++++++++---------
.../easystress/integration/CassandraTestBase.kt | 15 +++++-----
.../cassandra/easystress/integration/FlagsTest.kt | 7 +++--
49 files changed, 327 insertions(+), 247 deletions(-)
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 1e5cc60..10d134a 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -2,7 +2,7 @@
kotlin = "2.2.20"
jib = "3.3.0"
nebula-ospackage = "12.1.1"
-ktlint = "12.1.2"
+ktlint = "14.0.1"
detekt = "1.23.8"
shadow = "9.2.2"
kover = "0.9.2"
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/CommandLineParser.kt
b/src/main/kotlin/org/apache/cassandra/easystress/CommandLineParser.kt
index c17b474..01c2021 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/CommandLineParser.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/CommandLineParser.kt
@@ -73,11 +73,7 @@ class CommandLineParser(
getCommandInstance().execute()
}
- fun getParsedCommand(): String {
- return jCommander.parsedCommand
- }
+ fun getParsedCommand(): String = jCommander.parsedCommand
- fun getCommandInstance(): IStressCommand {
- return commands[getParsedCommand()]!!
- }
+ fun getCommandInstance(): IStressCommand = commands[getParsedCommand()]!!
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/Either.kt
b/src/main/kotlin/org/apache/cassandra/easystress/Either.kt
index d27a324..010a790 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/Either.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/Either.kt
@@ -1,7 +1,11 @@
package org.apache.cassandra.easystress
sealed class Either<out A, out B> {
- class Left<A>(val value: A) : Either<A, Nothing>()
+ class Left<A>(
+ val value: A,
+ ) : Either<A, Nothing>()
- class Right<B>(val value: B) : Either<Nothing, B>()
+ class Right<B>(
+ val value: B,
+ ) : Either<Nothing, B>()
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/FileReporter.kt
b/src/main/kotlin/org/apache/cassandra/easystress/FileReporter.kt
index cf8dbdb..010cd7d 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/FileReporter.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/FileReporter.kt
@@ -33,13 +33,17 @@ import java.util.SortedMap
import java.util.concurrent.TimeUnit
import java.util.zip.GZIPOutputStream
-class FileReporter(registry: MetricRegistry, outputFileName: String, command:
String) : ScheduledReporter(
- registry,
- "file-reporter",
- MetricFilter.ALL,
- TimeUnit.SECONDS,
- TimeUnit.MILLISECONDS,
-) {
+class FileReporter(
+ registry: MetricRegistry,
+ outputFileName: String,
+ command: String,
+) : ScheduledReporter(
+ registry,
+ "file-reporter",
+ MetricFilter.ALL,
+ TimeUnit.SECONDS,
+ TimeUnit.MILLISECONDS,
+ ) {
// date 24h time
// Thu-14Mar19-13.30.00
private val startTime = Date()
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/Metrics.kt
b/src/main/kotlin/org/apache/cassandra/easystress/Metrics.kt
index 52cbf96..f8686a5 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/Metrics.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/Metrics.kt
@@ -25,12 +25,17 @@ import io.prometheus.client.exporter.HTTPServer
import java.util.Optional
import java.util.concurrent.TimeUnit
-class Metrics(val metricRegistry: MetricRegistry, val reporters:
List<ScheduledReporter>, httpPort: Int) {
+class Metrics(
+ val metricRegistry: MetricRegistry,
+ val reporters: List<ScheduledReporter>,
+ httpPort: Int,
+) {
val server: Optional<HTTPServer>
fun startReporting() {
- for (reporter in reporters)
+ for (reporter in reporters) {
reporter.start(3, TimeUnit.SECONDS)
+ }
}
fun shutdown() {
@@ -84,12 +89,11 @@ class Metrics(val metricRegistry: MetricRegistry, val
reporters: List<ScheduledR
populateThroughputTracker.reset()
}
- fun getTracker(countSupplier: () -> Long): ThroughputTracker {
- return ThroughputTracker(
+ fun getTracker(countSupplier: () -> Long): ThroughputTracker =
+ ThroughputTracker(
windowSize = 10,
countSupplier = countSupplier,
)
- }
fun getSelectThroughput() = selectThroughputTracker.getCurrentThroughput()
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/MinimumVersion.kt
b/src/main/kotlin/org/apache/cassandra/easystress/MinimumVersion.kt
index e30b461..dc6154c 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/MinimumVersion.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/MinimumVersion.kt
@@ -26,4 +26,6 @@ package org.apache.cassandra.easystress
*/
@Target(AnnotationTarget.CLASS)
@Retention(AnnotationRetention.RUNTIME)
-annotation class MinimumVersion(val version: String)
+annotation class MinimumVersion(
+ val version: String,
+)
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/PartitionKey.kt
b/src/main/kotlin/org/apache/cassandra/easystress/PartitionKey.kt
index 8efd942..926d9a1 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/PartitionKey.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/PartitionKey.kt
@@ -20,8 +20,9 @@ package org.apache.cassandra.easystress
/**
* Will replace the current requirement that a PK can only be a text field
*/
-class PartitionKey(val prefix: String, val id: Long) {
- fun getText(): String {
- return prefix + id.toString()
- }
+class PartitionKey(
+ val prefix: String,
+ val id: Long,
+) {
+ fun getText(): String = prefix + id.toString()
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/PartitionKeyGenerator.kt
b/src/main/kotlin/org/apache/cassandra/easystress/PartitionKeyGenerator.kt
index fa5900b..3d20c1b 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/PartitionKeyGenerator.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/PartitionKeyGenerator.kt
@@ -38,9 +38,8 @@ class PartitionKeyGenerator(
/**
*
*/
- fun random(prefix: String = "test"): PartitionKeyGenerator {
- return PartitionKeyGenerator({ max ->
ThreadLocalRandom.current().nextLong(0, max) }, prefix)
- }
+ fun random(prefix: String = "test"): PartitionKeyGenerator =
+ PartitionKeyGenerator({ max ->
ThreadLocalRandom.current().nextLong(0, max) }, prefix)
/**
*
@@ -48,8 +47,7 @@ class PartitionKeyGenerator(
fun sequence(prefix: String = "test"): PartitionKeyGenerator {
var current = 0L
return PartitionKeyGenerator(
- {
- max ->
+ { max ->
if (current > max) {
current = 0
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/PopulateOption.kt
b/src/main/kotlin/org/apache/cassandra/easystress/PopulateOption.kt
index b97ef82..2030758 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/PopulateOption.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/PopulateOption.kt
@@ -20,5 +20,8 @@ package org.apache.cassandra.easystress
sealed class PopulateOption {
class Standard : PopulateOption()
- class Custom(val rows: Long, val deletes: Boolean = true) :
PopulateOption()
+ class Custom(
+ val rows: Long,
+ val deletes: Boolean = true,
+ ) : PopulateOption()
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizer.kt
b/src/main/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizer.kt
index b12f0f3..d6d30e1 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizer.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizer.kt
@@ -150,16 +150,13 @@ class RateLimiterOptimizer(
/**
* Added to prevent the rate limiter from acting when queries aren't
running, generally during populate phase
*/
- fun getTotalOperations(): Long {
- return metrics.mutations.count + metrics.selects.count
- }
+ fun getTotalOperations(): Long = metrics.mutations.count +
metrics.selects.count
- fun getCurrentTotalThroughput(): Double {
- return metrics.getSelectThroughput() +
+ fun getCurrentTotalThroughput(): Double =
+ metrics.getSelectThroughput() +
metrics.getMutationThroughput() +
metrics.getDeletionThroughput() +
metrics.getPopulateThroughput()
- }
/**
* Determines which latency metric is most critical and returns it with
its target.
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/SchemaBuilder.kt
b/src/main/kotlin/org/apache/cassandra/easystress/SchemaBuilder.kt
index 231b604..e7041fc 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/SchemaBuilder.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/SchemaBuilder.kt
@@ -32,7 +32,9 @@ fun MutableMap<String, String?>.putInt(
return this
}
-class SchemaBuilder(var baseStatement: String) {
+class SchemaBuilder(
+ var baseStatement: String,
+) {
private var ttl: Long = 0
private var compaction = ""
private var compression = ""
@@ -46,7 +48,9 @@ class SchemaBuilder(var baseStatement: String) {
val compactionShortcutRegex =
"""^(stcs|lcs|twcs|ucs)((?:,[0-9a-zA-Z]+)*)$""".toRegex()
- enum class WindowUnit(val s: String) {
+ enum class WindowUnit(
+ val s: String,
+ ) {
MINUTES("MINUTES"),
HOURS("HOURS"),
DAYS("DAYS"),
@@ -103,11 +107,12 @@ class SchemaBuilder(var baseStatement: String) {
mutableMapOf<String, String?>(
"class" to "TimeWindowCompactionStrategy",
"compaction_window_unit" to (windowUnit?.s ?: ""),
- )
- .putInt("compaction_window_size", windowSize)
+ ).putInt("compaction_window_size", windowSize)
}
- data class UCS(val scalingParameters: String) : Compaction() {
+ data class UCS(
+ val scalingParameters: String,
+ ) : Compaction() {
override fun getOptions() =
mutableMapOf<String, String?>(
"class" to "UnifiedCompactionStrategy",
@@ -115,7 +120,9 @@ class SchemaBuilder(var baseStatement: String) {
)
}
- data class Unknown(val raw: String) : Compaction() {
+ data class Unknown(
+ val raw: String,
+ ) : Compaction() {
override fun getOptions() = mapOf<String, String?>()
override fun toCQL() = raw.trim().replace("\"", "'")
@@ -138,9 +145,7 @@ class SchemaBuilder(var baseStatement: String) {
}
companion object {
- fun create(baseStatement: String): SchemaBuilder {
- return SchemaBuilder(baseStatement)
- }
+ fun create(baseStatement: String): SchemaBuilder =
SchemaBuilder(baseStatement)
}
fun withCompaction(compaction: String): SchemaBuilder {
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/SingleLineConsoleReporter.kt
b/src/main/kotlin/org/apache/cassandra/easystress/SingleLineConsoleReporter.kt
index bd5abeb..ac1ab56 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/SingleLineConsoleReporter.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/SingleLineConsoleReporter.kt
@@ -32,13 +32,15 @@ import java.util.SortedMap
import java.util.concurrent.TimeUnit
import java.util.concurrent.atomic.AtomicInteger
-class SingleLineConsoleReporter(registry: MetricRegistry) : ScheduledReporter(
- registry,
- "single-line-console-reporter",
- MetricFilter.ALL,
- TimeUnit.SECONDS,
- TimeUnit.MILLISECONDS,
-) {
+class SingleLineConsoleReporter(
+ registry: MetricRegistry,
+) : ScheduledReporter(
+ registry,
+ "single-line-console-reporter",
+ MetricFilter.ALL,
+ TimeUnit.SECONDS,
+ TimeUnit.MILLISECONDS,
+ ) {
val logger = logger()
var lines = 0L
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/ThroughputTracker.kt
b/src/main/kotlin/org/apache/cassandra/easystress/ThroughputTracker.kt
index 4027b8f..35a5457 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/ThroughputTracker.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/ThroughputTracker.kt
@@ -259,5 +259,8 @@ class ThroughputTracker(
@VisibleForTesting
fun getSample(index: Int) = Sample(buffer[index][0], buffer[index][1])
- data class Sample(val time: Long, val value: Long)
+ data class Sample(
+ val time: Long,
+ val value: Long,
+ )
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/Util.kt
b/src/main/kotlin/org/apache/cassandra/easystress/Util.kt
index cd39b35..03fdbcf 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/Util.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/Util.kt
@@ -33,6 +33,4 @@ fun randomString(length: Int): String {
return generator.generate(length)
}
-fun round(num: Double): Double {
- return DecimalFormat("##.##").format(num).toDouble()
-}
+fun round(num: Double): Double = DecimalFormat("##.##").format(num).toDouble()
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/Workload.kt
b/src/main/kotlin/org/apache/cassandra/easystress/Workload.kt
index 25e1116..f56c51f 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/Workload.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/Workload.kt
@@ -56,8 +56,8 @@ data class Workload(
* Parses a Cassandra version string into a comparable pair of (major,
minor).
* Examples: "5.0" -> (5, 0), "4.1" -> (4, 1), "trunk" -> (99, 99)
*/
- private fun parseVersion(version: String): Pair<Int, Int> {
- return when {
+ private fun parseVersion(version: String): Pair<Int, Int> =
+ when {
version == "trunk" || version == "latest" -> Pair(99, 99)
else -> {
val parts = version.split(".")
@@ -66,7 +66,6 @@ data class Workload(
Pair(major, minor)
}
}
- }
/**
* Compares two version strings.
@@ -133,7 +132,8 @@ data class Workload(
// AND
// - It meets the minimum version requirement
meetsVersionRequirement &&
- (!requiresDSE || testDSE) && (!requiresAccord ||
testAccord)
+ (!requiresDSE || testDSE) &&
+ (!requiresAccord || testAccord)
}
}
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/WorkloadParameter.kt
b/src/main/kotlin/org/apache/cassandra/easystress/WorkloadParameter.kt
index 238ee4e..999a9ca 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/WorkloadParameter.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/WorkloadParameter.kt
@@ -17,4 +17,6 @@
*/
package org.apache.cassandra.easystress
-annotation class WorkloadParameter(val description: String)
+annotation class WorkloadParameter(
+ val description: String,
+)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/FunctionLoader.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/FunctionLoader.kt
index 50c4b8d..52ca656 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/generators/FunctionLoader.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/generators/FunctionLoader.kt
@@ -25,7 +25,9 @@ data class FunctionDescription(
val description: String,
)
-class AnnotationMissingException(val name: Class<out FieldGenerator>) :
Exception()
+class AnnotationMissingException(
+ val name: Class<out FieldGenerator>,
+) : Exception()
/**
* Finds all the available functions and tracks them by name
@@ -46,7 +48,9 @@ class FunctionLoader : Iterable<FunctionDescription> {
}
}
- class FunctionNotFound(val name: String) : Exception()
+ class FunctionNotFound(
+ val name: String,
+ ) : Exception()
val map: MutableMap<String, Class<out FieldGenerator>> = mutableMapOf()
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/ParsedFieldFunction.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/ParsedFieldFunction.kt
index 37073b1..1804919 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/generators/ParsedFieldFunction.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/generators/ParsedFieldFunction.kt
@@ -23,7 +23,9 @@ import org.apache.logging.log4j.kotlin.logger
* Helper class that parses the field function spec
* Example: book(), random(10), random(10, 20)
*/
-class ParsedFieldFunction(function: String) {
+class ParsedFieldFunction(
+ function: String,
+) {
val name: String
val args: List<String>
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/Registry.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/Registry.kt
index a888d60..3b6d926 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/generators/Registry.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/generators/Registry.kt
@@ -19,9 +19,14 @@ package org.apache.cassandra.easystress.generators
import org.apache.logging.log4j.kotlin.logger
-data class Field(val table: String, val field: String)
+data class Field(
+ val table: String,
+ val field: String,
+)
-class FieldFactory(private val table: String) {
+class FieldFactory(
+ private val table: String,
+) {
fun getField(field: String): Field = Field(table, field)
}
@@ -44,13 +49,9 @@ class Registry(
val functionLoader = FunctionLoader()
- fun create(defaults: MutableMap<Field, FieldGenerator>): Registry {
- return Registry(defaults)
- }
+ fun create(defaults: MutableMap<Field, FieldGenerator>): Registry =
Registry(defaults)
- fun create(): Registry {
- return Registry()
- }
+ fun create(): Registry = Registry()
}
fun getFunctions(): Iterator<FunctionDescription> =
functionLoader.iterator()
@@ -123,4 +124,6 @@ class Registry(
}
}
-class FieldNotFoundException(message: String) : Throwable(message)
+class FieldNotFoundException(
+ message: String,
+) : Throwable(message)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/FirstName.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/FirstName.kt
index 8d96ac0..d92caf7 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/FirstName.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/FirstName.kt
@@ -41,7 +41,8 @@ class FirstName : FieldGenerator {
for (s in arrayListOf("female", "male")) {
val tmp =
- this::class.java.getResource("/names/female.txt")
+ this::class.java
+ .getResource("/names/female.txt")
.readText()
.split("\n")
.map { it.split(" ").first() }
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/LastName.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/LastName.kt
index 28db324..40a6cd3 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/LastName.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/LastName.kt
@@ -30,7 +30,8 @@ class LastName : FieldGenerator {
init {
val tmp =
- this::class.java.getResource("/names/last.txt")
+ this::class.java
+ .getResource("/names/last.txt")
.readText()
.split("\n")
.map { it.split(" ").first() }
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/USCities.kt
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/USCities.kt
index e5a4f22..49fb02f 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/USCities.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/generators/functions/USCities.kt
@@ -22,10 +22,13 @@ import org.apache.cassandra.easystress.generators.Function
import java.util.concurrent.ThreadLocalRandom
import kotlin.streams.toList
-data class City(val name: String, val stateShort: String, val stateFull:
String, val cityAlias: String) {
- override fun toString(): String {
- return "$name, $stateShort"
- }
+data class City(
+ val name: String,
+ val stateShort: String,
+ val stateFull: String,
+ val cityAlias: String,
+) {
+ override fun toString(): String = "$name, $stateShort"
}
@Function(
@@ -39,7 +42,14 @@ class USCities : FieldGenerator {
init {
val reader =
this.javaClass.getResourceAsStream("/us_cities_states_counties.csv").bufferedReader()
- cities = reader.lines().skip(1).map { it.split("|") }.filter { it.size
> 4 }.map { City(it[0], it[1], it[2], it[3]) }.toList()
+ cities =
+ reader
+ .lines()
+ .skip(1)
+ .map { it.split("|") }
+ .filter { it.size > 4 }
+ .map { City(it[0], it[1], it[2], it[3]) }
+ .toList()
size = cities.count()
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/server/ToolInputSchemaGenerator.kt
b/src/main/kotlin/org/apache/cassandra/easystress/server/ToolInputSchemaGenerator.kt
index b58c90b..259724f 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/server/ToolInputSchemaGenerator.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/server/ToolInputSchemaGenerator.kt
@@ -108,8 +108,8 @@ class ToolInputSchemaGenerator(
)
}
- private fun createInstance(): IStressCommand {
- return try {
+ private fun createInstance(): IStressCommand =
+ try {
// Find the primary constructor (not the synthetic serialization
constructor)
// The serialization constructor has a
SerializationConstructorMarker parameter
val constructor =
@@ -122,7 +122,6 @@ class ToolInputSchemaGenerator(
} catch (e: Exception) {
throw IllegalArgumentException("Cannot instantiate
${commandClass.simpleName}: ${e.message}", e)
}
- }
private fun mapTypeToJsonSchema(type: Class<*>): String =
when {
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/FieldsTool.kt
b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/FieldsTool.kt
index 1a0c750..ebf0462 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/FieldsTool.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/FieldsTool.kt
@@ -72,8 +72,8 @@ val FieldsTool =
handler = ::handleFields,
)
-private suspend fun handleFields(request: CallToolRequest): CallToolResult {
- return try {
+private suspend fun handleFields(request: CallToolRequest): CallToolResult =
+ try {
val functions =
withContext(Dispatchers.IO) {
val registry = Registry.create()
@@ -111,4 +111,3 @@ private suspend fun handleFields(request: CallToolRequest):
CallToolResult {
isError = true,
)
}
-}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/ListWorkloadsTool.kt
b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/ListWorkloadsTool.kt
index 26bf13b..03c2ae7 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/ListWorkloadsTool.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/ListWorkloadsTool.kt
@@ -70,8 +70,8 @@ val ListWorkloadsTool =
handler = ::handleListWorkloads,
)
-private suspend fun handleListWorkloads(request: CallToolRequest):
CallToolResult {
- return try {
+private suspend fun handleListWorkloads(request: CallToolRequest):
CallToolResult =
+ try {
val workloads =
withContext(Dispatchers.IO) {
Workload.getWorkloads()
@@ -107,4 +107,3 @@ private suspend fun handleListWorkloads(request:
CallToolRequest): CallToolResul
isError = true,
)
}
-}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/WorkloadInfoTool.kt
b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/WorkloadInfoTool.kt
index 6b4b051..200016d 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/server/tools/WorkloadInfoTool.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/server/tools/WorkloadInfoTool.kt
@@ -101,8 +101,8 @@ val WorkloadInfoTool =
handler = ::handleWorkloadInfo,
)
-private suspend fun handleWorkloadInfo(request: CallToolRequest):
CallToolResult {
- return try {
+private suspend fun handleWorkloadInfo(request: CallToolRequest):
CallToolResult =
+ try {
val workloadName =
Json.decodeFromJsonElement<WorkloadInfoRequest>(request.arguments).workload
logger.info { "Info request for $workloadName" }
@@ -171,4 +171,3 @@ private suspend fun handleWorkloadInfo(request:
CallToolRequest): CallToolResult
isError = true,
)
}
-}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/AllowFiltering.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/AllowFiltering.kt
index 4ee3977..0f82e33 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/AllowFiltering.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/AllowFiltering.kt
@@ -45,8 +45,8 @@ class AllowFiltering : IStressWorkload {
delete = session.prepare("DELETE from allow_filtering WHERE
partition_id = ? and row_id = ?")
}
- override fun schema(): List<String> {
- return listOf(
+ override fun schema(): List<String> =
+ listOf(
"""CREATE TABLE IF NOT EXISTS allow_filtering (
|partition_id text,
|row_id int,
@@ -56,7 +56,6 @@ class AllowFiltering : IStressWorkload {
|)
""".trimMargin(),
)
- }
override fun getRunner(context: StressContext): IStressRunner {
val payload = context.registry.getGenerator("allow_filtering",
"payload")
@@ -68,7 +67,8 @@ class AllowFiltering : IStressWorkload {
val value = random.nextInt(0, maxValue)
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, rowId)
.setInt(2, value)
@@ -79,7 +79,8 @@ class AllowFiltering : IStressWorkload {
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val value = random.nextInt(0, maxValue)
val bound =
- select.bind()
+ select
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, value)
return Operation.SelectStatement(bound)
@@ -88,7 +89,8 @@ class AllowFiltering : IStressWorkload {
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val rowId = random.nextInt(0, rows)
val bound =
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, rowId)
return Operation.Deletion(bound)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/BasicTimeSeries.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/BasicTimeSeries.kt
index 906dba2..de839ef 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/BasicTimeSeries.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/BasicTimeSeries.kt
@@ -89,7 +89,8 @@ class BasicTimeSeries : IStressWorkload {
return object : IStressRunner {
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val bound =
- getPartitionHead.bind()
+ getPartitionHead
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, limit)
return Operation.SelectStatement(bound)
@@ -99,7 +100,8 @@ class BasicTimeSeries : IStressWorkload {
val data = dataField.getText()
val timestamp = Uuids.timeBased()
val bound =
- prepared.bind()
+ prepared
+ .bind()
.setString(0, partitionKey.getText())
.setUuid(1, timestamp)
.setString(2, data)
@@ -109,7 +111,8 @@ class BasicTimeSeries : IStressWorkload {
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val deleteTime =
LocalDateTime.now().minusSeconds(deleteDepth.toLong())
val bound =
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
.setInstant(1,
deleteTime.toInstant(java.time.ZoneOffset.UTC))
return Operation.Deletion(bound)
@@ -117,13 +120,12 @@ class BasicTimeSeries : IStressWorkload {
}
}
- override fun getFieldGenerators(): Map<Field, FieldGenerator> {
- return mapOf(
+ override fun getFieldGenerators(): Map<Field, FieldGenerator> =
+ mapOf(
Field("sensor_data", "data") to
Random().apply {
min = 100
max = 200
},
)
- }
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/CountersWide.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/CountersWide.kt
index 002ee55..0e86d12 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/CountersWide.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/CountersWide.kt
@@ -41,8 +41,8 @@ class CountersWide : IStressWorkload {
deleteOne = session.prepare("DELETE from counter_wide WHERE key = ?
AND cluster = ?")
}
- override fun schema(): List<String> {
- return listOf(
+ override fun schema(): List<String> =
+ listOf(
"""CREATE TABLE IF NOT EXISTS counter_wide (
| key text,
| cluster bigint,
@@ -50,7 +50,6 @@ class CountersWide : IStressWorkload {
| primary key(key, cluster))
""".trimMargin(),
)
- }
override fun getRunner(context: StressContext): IStressRunner {
// for now i'm just going to hardcode this at 10K items
@@ -62,7 +61,8 @@ class CountersWide : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val clusteringKey =
(ThreadLocalRandom.current().nextGaussian() *
rowsPerPartition.toDouble()).roundToLong()
val tmp =
- increment.bind()
+ increment
+ .bind()
.setString(0, partitionKey.getText())
.setLong(1, clusteringKey)
return Operation.Mutation(tmp)
@@ -74,14 +74,16 @@ class CountersWide : IStressWorkload {
if (iterations % 2 == 0L) {
val clusteringKey =
(ThreadLocalRandom.current().nextGaussian() *
rowsPerPartition.toDouble()).roundToLong()
return Operation.SelectStatement(
- selectOne.bind()
+ selectOne
+ .bind()
.setString(0, partitionKey.getText())
.setLong(1, clusteringKey),
)
}
return Operation.SelectStatement(
- selectAll.bind()
+ selectAll
+ .bind()
.setString(0, partitionKey.getText()),
)
}
@@ -89,7 +91,8 @@ class CountersWide : IStressWorkload {
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val clusteringKey =
(ThreadLocalRandom.current().nextGaussian() *
rowsPerPartition.toDouble()).roundToLong()
return Operation.Deletion(
- deleteOne.bind()
+ deleteOne
+ .bind()
.setString(0, partitionKey.getText())
.setLong(1, clusteringKey),
)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/CreateDrop.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/CreateDrop.kt
index fc571b9..94edbe6 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/CreateDrop.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/CreateDrop.kt
@@ -53,9 +53,7 @@ class CreateDrop : IStressWorkload {
override fun prepare(session: CqlSession) {
}
- override fun schema(): List<String> {
- return listOf()
- }
+ override fun schema(): List<String> = listOf()
override fun getDefaultReadRate() = 0.0
@@ -153,19 +151,21 @@ class CreateDrop : IStressWorkload {
return Operation.Mutation(bound)
}
- override fun getNextSelect(partitionKey: PartitionKey): Operation {
- return Operation.SelectStatement(
- getRandomTable().select.bind()
+ override fun getNextSelect(partitionKey: PartitionKey): Operation =
+ Operation.SelectStatement(
+ getRandomTable()
+ .select
+ .bind()
.setString(0, partitionKey.getText()),
)
- }
- override fun getNextDelete(partitionKey: PartitionKey): Operation {
- return Operation.Deletion(
- getRandomTable().delete.bind()
+ override fun getNextDelete(partitionKey: PartitionKey): Operation =
+ Operation.Deletion(
+ getRandomTable()
+ .delete
+ .bind()
.setString(0, partitionKey.getText()),
)
- }
}
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/DSESearch.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/DSESearch.kt
index cce3a85..72779f8 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/DSESearch.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/DSESearch.kt
@@ -56,8 +56,8 @@ class DSESearch : IStressWorkload {
delete = session.prepare("DELETE from $table WHERE key = ? and c = ?")
}
- override fun schema(): List<String> {
- return listOf(
+ override fun schema(): List<String> =
+ listOf(
"""
CREATE TABLE IF NOT EXISTS $table (
key text,
@@ -70,7 +70,6 @@ class DSESearch : IStressWorkload {
CREATE SEARCH INDEX IF NOT EXISTS ON $table WITH COLUMNS value_text
""".trimIndent(),
)
- }
override fun getRunner(context: StressContext): IStressRunner {
val value = context.registry.getGenerator(table, "value_text")
@@ -88,7 +87,8 @@ class DSESearch : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, nextRowId)
.setString(2, value.getText())
@@ -97,7 +97,9 @@ class DSESearch : IStressWorkload {
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val valueValue =
- value.getText().substringBeforeLast(" ")
+ value
+ .getText()
+ .substringBeforeLast(" ")
.replace(regex, " ")
.trim()
@@ -110,14 +112,16 @@ class DSESearch : IStressWorkload {
val queryString = mapper.writeValueAsString(query)
val bound =
- select.bind()
+ select
+ .bind()
.setString(0, queryString)
return Operation.SelectStatement(bound)
}
override fun getNextDelete(partitionKey: PartitionKey) =
Operation.Deletion(
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, nextRowId),
)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/KeyValue.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/KeyValue.kt
index f679a1f..353424a 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/KeyValue.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/KeyValue.kt
@@ -48,9 +48,7 @@ class KeyValue : IStressWorkload {
return listOf(table)
}
- override fun getDefaultReadRate(): Double {
- return 0.5
- }
+ override fun getDefaultReadRate(): Double = 0.5
override fun getRunner(context: StressContext): IStressRunner {
val value = context.registry.getGenerator("keyvalue", "value")
@@ -64,7 +62,8 @@ class KeyValue : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val data = value.getText()
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setString(1, data)
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/workloads/LWT.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/LWT.kt
index 4bceec2..ae377d4 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/LWT.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/LWT.kt
@@ -30,9 +30,7 @@ class LWT : IStressWorkload {
lateinit var delete: PreparedStatement
lateinit var deletePartition: PreparedStatement
- override fun schema(): List<String> {
- return arrayListOf("""CREATE TABLE IF NOT EXISTS lwt (id text primary
key, value int) """)
- }
+ override fun schema(): List<String> = arrayListOf("""CREATE TABLE IF NOT
EXISTS lwt (id text primary key, value int) """)
override fun prepare(session: CqlSession) {
insert = session.prepare("INSERT INTO lwt (id, value) VALUES (?, ?) IF
NOT EXISTS")
@@ -43,7 +41,10 @@ class LWT : IStressWorkload {
}
override fun getRunner(context: StressContext): IStressRunner {
- data class CallbackPayload(val id: String, val value: Int)
+ data class CallbackPayload(
+ val id: String,
+ val value: Int,
+ )
return object : IStressRunner {
val state = mutableMapOf<String, Int>()
@@ -55,13 +56,15 @@ class LWT : IStressWorkload {
val mutation =
if (currentValue != null) {
newValue = currentValue + 1
- update.bind()
+ update
+ .bind()
.setInt(0, newValue)
.setString(1, partitionKey.getText())
.setInt(2, currentValue)
} else {
newValue = 0
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, newValue)
}
@@ -69,23 +72,25 @@ class LWT : IStressWorkload {
return Operation.Mutation(mutation, payload)
}
- override fun getNextSelect(partitionKey: PartitionKey): Operation {
- return Operation.SelectStatement(
- select.bind()
+ override fun getNextSelect(partitionKey: PartitionKey): Operation =
+ Operation.SelectStatement(
+ select
+ .bind()
.setString(0, partitionKey.getText()),
)
- }
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val currentValue = state[partitionKey.getText()]
val deletion =
if (currentValue != null) {
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, currentValue)
} else {
- deletePartition.bind()
+ deletePartition
+ .bind()
.setString(0, partitionKey.getText())
}
return Operation.Deletion(deletion)
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Locking.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Locking.kt
index eb5ea15..73e919d 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Locking.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Locking.kt
@@ -70,9 +70,7 @@ class Locking : IStressWorkload {
override fun getPopulateOption(args: Run): PopulateOption =
PopulateOption.Custom(args.partitionCount, deletes = false)
- override fun getPopulatePartitionKeyGenerator():
Optional<PartitionKeyGenerator> {
- return Optional.of(PartitionKeyGenerator.sequence("test"))
- }
+ override fun getPopulatePartitionKeyGenerator():
Optional<PartitionKeyGenerator> =
Optional.of(PartitionKeyGenerator.sequence("test"))
override fun getRunner(context: StressContext): IStressRunner {
return object : IStressRunner {
@@ -92,7 +90,8 @@ class Locking : IStressWorkload {
log.trace { "Updating ${partitionKey.getText()} to $newState" }
val bound =
- update.bind()
+ update
+ .bind()
.setInt(0, newState)
.setString(1, partitionKey.getText())
.setInt(2, newState)
@@ -102,21 +101,24 @@ class Locking : IStressWorkload {
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val bound =
- select.bind()
+ select
+ .bind()
.setString(0, partitionKey.getText())
return Operation.SelectStatement(bound)
}
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val bound =
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
return Operation.Deletion(bound)
}
override fun getNextPopulate(partitionKey: PartitionKey):
Operation {
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setString(1, "test")
return Operation.Mutation(bound)
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Maps.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Maps.kt
index f3c5488..24a77da 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Maps.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Maps.kt
@@ -40,25 +40,27 @@ class Maps : IStressWorkload {
override fun getRunner(context: StressContext): IStressRunner {
return object : IStressRunner {
- override fun getNextMutation(partitionKey: PartitionKey):
Operation {
- return Operation.Mutation(
- insert.bind()
+ override fun getNextMutation(partitionKey: PartitionKey):
Operation =
+ Operation.Mutation(
+ insert
+ .bind()
.setString(0, "key")
.setString(1, "value")
.setString(2, partitionKey.getText()),
)
- }
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val b =
- select.bind()
+ select
+ .bind()
.setString(0, partitionKey.getText())
return Operation.SelectStatement(b)
}
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val b =
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
return Operation.Deletion(b)
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/MaterializedViews.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/MaterializedViews.kt
index 987829c..f59e3b8 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/MaterializedViews.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/MaterializedViews.kt
@@ -66,7 +66,8 @@ class MaterializedViews : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val num = ThreadLocalRandom.current().nextInt(1, 110)
return Operation.Mutation(
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, num)
.setString(2, cities.getText()),
@@ -79,12 +80,14 @@ class MaterializedViews : IStressWorkload {
when (selectCount % 2L) {
0L ->
Operation.SelectStatement(
- selectByAge.bind()
+ selectByAge
+ .bind()
.setInt(0, num),
)
else ->
Operation.SelectStatement(
- selectByCity.bind()
+ selectByCity
+ .bind()
.setString(0, "test"),
)
}
@@ -92,12 +95,12 @@ class MaterializedViews : IStressWorkload {
return result
}
- override fun getNextDelete(partitionKey: PartitionKey): Operation {
- return Operation.Deletion(
- deleteBase.bind()
+ override fun getNextDelete(partitionKey: PartitionKey): Operation =
+ Operation.Deletion(
+ deleteBase
+ .bind()
.setString(0, partitionKey.getText()),
)
- }
}
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/RandomPartitionAccess.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/RandomPartitionAccess.kt
index c66fcd6..becd98f 100644
---
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/RandomPartitionAccess.kt
+++
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/RandomPartitionAccess.kt
@@ -74,8 +74,8 @@ class RandomPartitionAccess : IStressWorkload {
}
}
- override fun schema(): List<String> {
- return listOf(
+ override fun schema(): List<String> =
+ listOf(
"""CREATE TABLE IF NOT EXISTS random_access (
partition_id text,
row_id int,
@@ -83,7 +83,6 @@ class RandomPartitionAccess : IStressWorkload {
primary key (partition_id, row_id)
)""",
)
- }
override fun getRunner(context: StressContext): IStressRunner {
println("Using $rows rows per partition")
@@ -95,7 +94,8 @@ class RandomPartitionAccess : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val rowId = random.nextInt(0, rows)
val bound =
- insertQuery.bind()
+ insertQuery
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, rowId)
.setString(2, value.getText())
@@ -106,11 +106,13 @@ class RandomPartitionAccess : IStressWorkload {
val bound =
when (select) {
"partition" ->
- selectQuery.bind()
+ selectQuery
+ .bind()
.setString(0, partitionKey.getText())
"row" -> {
val rowId = random.nextInt(0, rows)
- selectQuery.bind()
+ selectQuery
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, rowId)
}
@@ -123,11 +125,13 @@ class RandomPartitionAccess : IStressWorkload {
val bound =
when (delete) {
"partition" ->
- deleteQuery.bind()
+ deleteQuery
+ .bind()
.setString(0, partitionKey.getText())
"row" -> {
val rowId = random.nextInt(0, rows)
- deleteQuery.bind()
+ deleteQuery
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, rowId)
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/RangeScan.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/RangeScan.kt
index 0c1248e..134d6d8 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/RangeScan.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/RangeScan.kt
@@ -63,11 +63,13 @@ class RangeScan : IStressWorkload {
ranges = splitRanges
val tmp = table.split(".")
var partitionKeys =
- metadata.getKeyspace(tmp[0]).flatMap { ks ->
- ks.getTable(tmp[1]).map { table ->
- table.partitionKey.map { col ->
col.name.asInternal() }.joinToString(", ")
- }
- }.orElseThrow { RuntimeException("Table not found") }
+ metadata
+ .getKeyspace(tmp[0])
+ .flatMap { ks ->
+ ks.getTable(tmp[1]).map { table ->
+ table.partitionKey.map { col ->
col.name.asInternal() }.joinToString(", ")
+ }
+ }.orElseThrow { RuntimeException("Table not found") }
logger.info("Using splits on $partitionKeys")
" WHERE token($partitionKeys) > ? AND token($partitionKeys) <
?"
} else {
@@ -80,38 +82,33 @@ class RangeScan : IStressWorkload {
select = session.prepare(s)
}
- override fun schema(): List<String> {
- return listOf()
- }
+ override fun schema(): List<String> = listOf()
- override fun getDefaultReadRate(): Double {
- return 1.0
- }
+ override fun getDefaultReadRate(): Double = 1.0
- override fun getRunner(context: StressContext): IStressRunner {
- return object : IStressRunner {
+ override fun getRunner(context: StressContext): IStressRunner =
+ object : IStressRunner {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
// we need the ability to say a workload doesn't support
mutations
TODO("Not yet implemented")
}
- override fun getNextSelect(partitionKey: PartitionKey): Operation {
- return if (splits > 1) {
+ override fun getNextSelect(partitionKey: PartitionKey): Operation =
+ if (splits > 1) {
val tmp = ranges.random()
val bound =
- select.bind()
+ select
+ .bind()
.setToken(0, tmp.start)
.setToken(1, tmp.end)
Operation.SelectStatement(bound)
} else {
Operation.SelectStatement(select.bind())
}
- }
override fun getNextDelete(partitionKey: PartitionKey): Operation {
// we need the ability to say a workload doesn't support
deletes
TODO("Not yet implemented")
}
}
- }
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/workloads/SAI.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/SAI.kt
index 73bb8e6..7d5dca7 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/SAI.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/SAI.kt
@@ -140,7 +140,8 @@ class SAI : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, nextRowId)
.setString(2, value_text.getText())
@@ -170,15 +171,16 @@ class SAI : IStressWorkload {
override fun getNextDelete(partitionKey: PartitionKey) =
Operation.Deletion(
- delete.bind()
+ delete
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, nextRowId),
)
}
}
- override fun getFieldGenerators(): Map<Field, FieldGenerator> {
- return mapOf(
+ override fun getFieldGenerators(): Map<Field, FieldGenerator> =
+ mapOf(
Field(TABLE, "value_text") to LastName(),
Field(TABLE, "value_int") to
Random().apply {
@@ -186,5 +188,4 @@ class SAI : IStressWorkload {
max = 10000
},
)
- }
}
diff --git a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Sets.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Sets.kt
index eae9e79..af96b95 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/Sets.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/Sets.kt
@@ -38,8 +38,8 @@ class Sets : IStressWorkload {
deleteElement = session.prepare("UPDATE sets SET values = values - ?
WHERE key = ?")
}
- override fun schema(): List<String> {
- return listOf(
+ override fun schema(): List<String> =
+ listOf(
"""
CREATE TABLE IF NOT EXISTS sets (
|key text primary key,
@@ -47,7 +47,6 @@ class Sets : IStressWorkload {
|)
""".trimMargin(),
)
- }
override fun getRunner(context: StressContext): IStressRunner {
val payload = context.registry.getGenerator("sets", "values")
@@ -69,7 +68,8 @@ class Sets : IStressWorkload {
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val bound =
- select.bind()
+ select
+ .bind()
.setString(0, partitionKey.getText())
return Operation.SelectStatement(bound)
}
@@ -87,13 +87,12 @@ class Sets : IStressWorkload {
}
}
- override fun getFieldGenerators(): Map<Field, FieldGenerator> {
- return mapOf(
+ override fun getFieldGenerators(): Map<Field, FieldGenerator> =
+ mapOf(
Field("sets", "values") to
Random().apply {
min = 6
max = 16
},
)
- }
}
diff --git
a/src/main/kotlin/org/apache/cassandra/easystress/workloads/UdtTimeSeries.kt
b/src/main/kotlin/org/apache/cassandra/easystress/workloads/UdtTimeSeries.kt
index c8ad246..8824d11 100644
--- a/src/main/kotlin/org/apache/cassandra/easystress/workloads/UdtTimeSeries.kt
+++ b/src/main/kotlin/org/apache/cassandra/easystress/workloads/UdtTimeSeries.kt
@@ -77,13 +77,17 @@ class UdtTimeSeries : IStressWorkload {
return object : IStressRunner {
val keyspace = context.session.getKeyspace().orElse(null) ?: throw
RuntimeException("No keyspace selected")
val udt =
- context.session.getMetadata().getKeyspace(keyspace).flatMap {
- it.getUserDefinedType("sensor_data_details")
- }.orElseThrow { RuntimeException("UDT not found") }
+ context.session
+ .getMetadata()
+ .getKeyspace(keyspace)
+ .flatMap {
+ it.getUserDefinedType("sensor_data_details")
+ }.orElseThrow { RuntimeException("UDT not found") }
override fun getNextSelect(partitionKey: PartitionKey): Operation {
val bound =
- getPartitionHead.bind()
+ getPartitionHead
+ .bind()
.setString(0, partitionKey.getText())
.setInt(1, limit)
return Operation.SelectStatement(bound)
@@ -92,10 +96,16 @@ class UdtTimeSeries : IStressWorkload {
override fun getNextMutation(partitionKey: PartitionKey):
Operation {
val data = dataField.getText()
val chunks = data.chunked(data.length / 3)
- val udtValue = udt.newValue().setString("data1",
chunks[0]).setString("data2", chunks[1]).setString("data3", chunks[2])
+ val udtValue =
+ udt
+ .newValue()
+ .setString("data1", chunks[0])
+ .setString("data2", chunks[1])
+ .setString("data3", chunks[2])
val timestamp = Uuids.timeBased()
val bound =
- insert.bind()
+ insert
+ .bind()
.setString(0, partitionKey.getText())
.setUuid(1, timestamp)
.setUdtValue(2, udtValue)
@@ -104,20 +114,20 @@ class UdtTimeSeries : IStressWorkload {
override fun getNextDelete(partitionKey: PartitionKey): Operation {
val bound =
- deletePartitionHead.bind()
+ deletePartitionHead
+ .bind()
.setString(0, partitionKey.getText())
return Operation.Deletion(bound)
}
}
}
- override fun getFieldGenerators(): Map<Field, FieldGenerator> {
- return mapOf(
+ override fun getFieldGenerators(): Map<Field, FieldGenerator> =
+ mapOf(
Field("sensor_data", "data") to
Random().apply {
min = 100
max = 200
},
)
- }
}
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/PartitionKeyGeneratorTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/PartitionKeyGeneratorTest.kt
index 2df7ab0..aa5f44d 100644
---
a/src/test/kotlin/org/apache/cassandra/easystress/PartitionKeyGeneratorTest.kt
+++
b/src/test/kotlin/org/apache/cassandra/easystress/PartitionKeyGeneratorTest.kt
@@ -39,7 +39,12 @@ internal class PartitionKeyGeneratorTest {
@Test
fun testRepeatingSequence() {
val p = PartitionKeyGenerator.sequence("test")
- val data = p.generateKey(10, 2).take(5).toList().map { it.id.toInt() }
+ val data =
+ p
+ .generateKey(10, 2)
+ .take(5)
+ .toList()
+ .map { it.id.toInt() }
assertThat(data).isEqualTo(listOf(0, 1, 2, 0, 1))
}
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizerTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizerTest.kt
index 53248f2..0c800c4 100644
---
a/src/test/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizerTest.kt
+++
b/src/test/kotlin/org/apache/cassandra/easystress/RateLimiterOptimizerTest.kt
@@ -35,9 +35,7 @@ class RateLimiterOptimizerTest {
fun pair(
current: Double,
max: Long,
- ): Optional<Pair<Double, Long>> {
- return Optional.of(Pair(current, max))
- }
+ ): Optional<Pair<Double, Long>> = Optional.of(Pair(current, max))
@Test
fun testSimpleReadLimitRaise() {
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/SchemaBuilderTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/SchemaBuilderTest.kt
index 057e08d..b520026 100644
--- a/src/test/kotlin/org/apache/cassandra/easystress/SchemaBuilderTest.kt
+++ b/src/test/kotlin/org/apache/cassandra/easystress/SchemaBuilderTest.kt
@@ -70,7 +70,8 @@ internal class SchemaBuilderTest {
""".trimMargin()
val query =
- SchemaBuilder.create(base)
+ SchemaBuilder
+ .create(base)
.withCompression("{'enabled':enabled}")
.build()
@@ -86,7 +87,8 @@ internal class SchemaBuilderTest {
)"""
val result =
- SchemaBuilder.create(query)
+ SchemaBuilder
+ .create(query)
.withKeyCache("NONE")
.build()
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/generators/RegistryTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/generators/RegistryTest.kt
index 964505e..61384e2 100644
--- a/src/test/kotlin/org/apache/cassandra/easystress/generators/RegistryTest.kt
+++ b/src/test/kotlin/org/apache/cassandra/easystress/generators/RegistryTest.kt
@@ -29,10 +29,12 @@ internal class RegistryTest {
@BeforeEach
fun setUp() {
registry =
- Registry.create()
+ Registry
+ .create()
.setDefault("test", "city", USCities())
.setDefault(
- "test", "age",
+ "test",
+ "age",
Random().apply {
min = 10
max = 100
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/generators/USCitiesTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/generators/USCitiesTest.kt
index 9b7027a..335dd14 100644
--- a/src/test/kotlin/org/apache/cassandra/easystress/generators/USCitiesTest.kt
+++ b/src/test/kotlin/org/apache/cassandra/easystress/generators/USCitiesTest.kt
@@ -24,7 +24,8 @@ internal class USCitiesTest {
@Test
fun getText() {
val cities = USCities()
- for (i in 0..100000)
+ for (i in 0..100000) {
cities.getText()
+ }
}
}
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/integration/AllWorkloadsBasicTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/integration/AllWorkloadsBasicTest.kt
index 4cd7223..81198de 100644
---
a/src/test/kotlin/org/apache/cassandra/easystress/integration/AllWorkloadsBasicTest.kt
+++
b/src/test/kotlin/org/apache/cassandra/easystress/integration/AllWorkloadsBasicTest.kt
@@ -59,18 +59,19 @@ class AllWorkloadsBasicTest : CassandraTestBase() {
@AllWorkloads
@ParameterizedTest(name = "run test {0}")
fun runEachTest(workload: Workload) {
- run.apply {
- host = ip
- cqlPort = port
- this.workload = workload.name
- duration = 10
- rate = 50L
- partitionCount = 1000
- prometheusPort = 0
- threads = 2
- useOptimizer = false
- replication = "{'class': 'SimpleStrategy', 'replication_factor':1
}"
- dc = localDc // Use the datacenter from the base class
- }.execute()
+ run
+ .apply {
+ host = ip
+ cqlPort = port
+ this.workload = workload.name
+ duration = 10
+ rate = 50L
+ partitionCount = 1000
+ prometheusPort = 0
+ threads = 2
+ useOptimizer = false
+ replication = "{'class': 'SimpleStrategy',
'replication_factor':1 }"
+ dc = localDc // Use the datacenter from the base class
+ }.execute()
}
}
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/integration/CassandraTestBase.kt
b/src/test/kotlin/org/apache/cassandra/easystress/integration/CassandraTestBase.kt
index 5a2fd97..a6fb898 100644
---
a/src/test/kotlin/org/apache/cassandra/easystress/integration/CassandraTestBase.kt
+++
b/src/test/kotlin/org/apache/cassandra/easystress/integration/CassandraTestBase.kt
@@ -67,7 +67,8 @@ abstract class CassandraTestBase {
* These values are optimized for test stability over performance.
*/
fun createConfigLoader(): DriverConfigLoader =
- DriverConfigLoader.programmaticBuilder()
+ DriverConfigLoader
+ .programmaticBuilder()
.withString(DefaultDriverOption.REQUEST_TIMEOUT,
"${REQUEST_TIMEOUT_SECONDS}s")
.withString(DefaultDriverOption.CONTROL_CONNECTION_TIMEOUT,
"${CONTROL_CONNECTION_TIMEOUT_SECONDS}s")
.withString(DefaultDriverOption.METADATA_SCHEMA_REQUEST_TIMEOUT,
"${METADATA_SCHEMA_TIMEOUT_SECONDS}s")
@@ -121,13 +122,12 @@ abstract class CassandraTestBase {
GenericContainer(
ImageFromDockerfile()
.withDockerfile(dockerfilePath.resolve("Dockerfile")),
- )
- .withExposedPorts(CASSANDRA_PORT)
+ ).withExposedPorts(CASSANDRA_PORT)
.waitingFor(
- Wait.forLogMessage(".*Startup complete.*", 1)
+ Wait
+ .forLogMessage(".*Startup complete.*", 1)
.withStartupTimeout(Duration.ofSeconds(CONTAINER_STARTUP_TIMEOUT_SECONDS)),
- )
-
.withStartupTimeout(Duration.ofSeconds(CONTAINER_STARTUP_TIMEOUT_SECONDS))
+
).withStartupTimeout(Duration.ofSeconds(CONTAINER_STARTUP_TIMEOUT_SECONDS))
// Start the container
logger.info("Starting Cassandra container...")
@@ -152,7 +152,8 @@ abstract class CassandraTestBase {
try {
logger.debug("Connection attempt {}/3", attempt)
connection =
- CqlSession.builder()
+ CqlSession
+ .builder()
.addContactPoint(InetSocketAddress(ip, port))
.withLocalDatacenter(localDc)
.withConfigLoader(createConfigLoader())
diff --git
a/src/test/kotlin/org/apache/cassandra/easystress/integration/FlagsTest.kt
b/src/test/kotlin/org/apache/cassandra/easystress/integration/FlagsTest.kt
index f1c975e..4d6444f 100644
--- a/src/test/kotlin/org/apache/cassandra/easystress/integration/FlagsTest.kt
+++ b/src/test/kotlin/org/apache/cassandra/easystress/integration/FlagsTest.kt
@@ -45,8 +45,9 @@ class FlagsTest : CassandraTestBase() {
@Test
fun csvTest() {
- keyvalue.apply {
- csvFile = "test.csv"
- }.execute()
+ keyvalue
+ .apply {
+ csvFile = "test.csv"
+ }.execute()
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]