summaryrefslogtreecommitdiff
path: root/opendc-trace/opendc-trace-opendc/src/test
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-09-16 12:34:53 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-09-19 14:02:52 +0200
commit474044649a67cfcc857615b6a0f8387a2954abbd (patch)
tree5bb6bf9b0ca0978a47ac50ced85c245588465daa /opendc-trace/opendc-trace-opendc/src/test
parent9b25eef67911d0aec6a36c82a34cd0e39b13b073 (diff)
feat(trace): Update OpenDC VM trace format
This change optimizes the OpenDC VM trace format by removing unnecessary columns as well as optimizing the writer settings. The new implementation still supports reading the old trace format in case users run OpenDC with older workload traces.
Diffstat (limited to 'opendc-trace/opendc-trace-opendc/src/test')
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt26
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/meta.parquet (renamed from opendc-trace/opendc-trace-opendc/src/test/resources/trace/meta.parquet)bin1582 -> 1582 bytes
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/trace.parquet (renamed from opendc-trace/opendc-trace-opendc/src/test/resources/trace/trace.parquet)bin83524 -> 83524 bytes
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/meta.parquetbin0 -> 1679 bytes
-rw-r--r--opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/trace.parquetbin0 -> 65174 bytes
5 files changed, 15 insertions, 11 deletions
diff --git a/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt b/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
index 21f1174c..42eb369e 100644
--- a/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
+++ b/opendc-trace/opendc-trace-opendc/src/test/kotlin/org/opendc/trace/opendc/OdcVmTraceFormatTest.kt
@@ -26,6 +26,8 @@ import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.assertDoesNotThrow
import org.junit.jupiter.api.assertThrows
+import org.junit.jupiter.params.ParameterizedTest
+import org.junit.jupiter.params.provider.ValueSource
import org.opendc.trace.*
import java.io.File
import java.net.URL
@@ -38,13 +40,13 @@ internal class OdcVmTraceFormatTest {
@Test
fun testTraceExists() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ val url = File("src/test/resources/trace-v2.1").toURI().toURL()
assertDoesNotThrow { format.open(url) }
}
@Test
fun testTraceDoesNotExists() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ val url = File("src/test/resources/trace-v2.1").toURI().toURL()
assertThrows<IllegalArgumentException> {
format.open(URL(url.toString() + "help"))
}
@@ -52,7 +54,7 @@ internal class OdcVmTraceFormatTest {
@Test
fun testTables() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ val url = File("src/test/resources/trace-v2.1").toURI().toURL()
val trace = format.open(url)
assertEquals(listOf(TABLE_RESOURCES, TABLE_RESOURCE_STATES), trace.tables)
@@ -60,7 +62,7 @@ internal class OdcVmTraceFormatTest {
@Test
fun testTableExists() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ val url = File("src/test/resources/trace-v2.1").toURI().toURL()
val table = format.open(url).getTable(TABLE_RESOURCE_STATES)
assertNotNull(table)
@@ -69,16 +71,17 @@ internal class OdcVmTraceFormatTest {
@Test
fun testTableDoesNotExist() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ val url = File("src/test/resources/trace-v2.1").toURI().toURL()
val trace = format.open(url)
assertFalse(trace.containsTable("test"))
assertNull(trace.getTable("test"))
}
- @Test
- fun testResources() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ @ParameterizedTest
+ @ValueSource(strings = ["trace-v2.0", "trace-v2.1"])
+ fun testResources(name: String) {
+ val url = File("src/test/resources/$name").toURI().toURL()
val trace = format.open(url)
val reader = trace.getTable(TABLE_RESOURCES)!!.newReader()
@@ -98,9 +101,10 @@ internal class OdcVmTraceFormatTest {
reader.close()
}
- @Test
- fun testSmoke() {
- val url = File("src/test/resources/trace").toURI().toURL()
+ @ParameterizedTest
+ @ValueSource(strings = ["trace-v2.0", "trace-v2.1"])
+ fun testSmoke(name: String) {
+ val url = File("src/test/resources/$name").toURI().toURL()
val trace = format.open(url)
val reader = trace.getTable(TABLE_RESOURCE_STATES)!!.newReader()
diff --git a/opendc-trace/opendc-trace-opendc/src/test/resources/trace/meta.parquet b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/meta.parquet
index d6ff09d8..d6ff09d8 100644
--- a/opendc-trace/opendc-trace-opendc/src/test/resources/trace/meta.parquet
+++ b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/meta.parquet
Binary files differ
diff --git a/opendc-trace/opendc-trace-opendc/src/test/resources/trace/trace.parquet b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/trace.parquet
index 5b6fa6b7..5b6fa6b7 100644
--- a/opendc-trace/opendc-trace-opendc/src/test/resources/trace/trace.parquet
+++ b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.0/trace.parquet
Binary files differ
diff --git a/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/meta.parquet b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/meta.parquet
new file mode 100644
index 00000000..d8184945
--- /dev/null
+++ b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/meta.parquet
Binary files differ
diff --git a/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/trace.parquet b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/trace.parquet
new file mode 100644
index 00000000..00ab5835
--- /dev/null
+++ b/opendc-trace/opendc-trace-opendc/src/test/resources/trace-v2.1/trace.parquet
Binary files differ