summaryrefslogtreecommitdiff
path: root/opendc-model-odc/core
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2018-02-13 14:27:15 +0100
committerFabian Mastenbroek <mail.fabianm@gmail.com>2018-02-13 14:27:15 +0100
commit2e819d59934b5308bc58d6c69709112e2a6af402 (patch)
tree320532fb50b0f20ac8bb4976b2825f8003aa3f85 /opendc-model-odc/core
parent407877ff24d3c54747c8b15bba73b93b38c8b6e7 (diff)
refactor(#18): Fix OpenDC model deployment
This change fixes the deployment of the OpenDC simulation model.
Diffstat (limited to 'opendc-model-odc/core')
-rw-r--r--opendc-model-odc/core/src/main/kotlin/com/atlarge/opendc/model/odc/topology/container/Datacenter.kt5
1 files changed, 5 insertions, 0 deletions
diff --git a/opendc-model-odc/core/src/main/kotlin/com/atlarge/opendc/model/odc/topology/container/Datacenter.kt b/opendc-model-odc/core/src/main/kotlin/com/atlarge/opendc/model/odc/topology/container/Datacenter.kt
index b9b804d3..7293d9f7 100644
--- a/opendc-model-odc/core/src/main/kotlin/com/atlarge/opendc/model/odc/topology/container/Datacenter.kt
+++ b/opendc-model-odc/core/src/main/kotlin/com/atlarge/opendc/model/odc/topology/container/Datacenter.kt
@@ -26,6 +26,7 @@ package com.atlarge.opendc.model.odc.topology.container
import com.atlarge.opendc.model.odc.platform.scheduler.Scheduler
import com.atlarge.opendc.model.odc.platform.workload.Task
+import com.atlarge.opendc.model.odc.platform.workload.TaskState
import com.atlarge.opendc.model.odc.topology.machine.Machine
import com.atlarge.opendc.model.topology.Topology
import com.atlarge.opendc.model.topology.destinations
@@ -88,6 +89,10 @@ interface Datacenter : Process<Unit, Topology> {
while (queue.isNotEmpty()) {
val msg = queue.poll()
if (msg is Task) {
+ if (msg.state != TaskState.Underway) {
+ logger.warn { "Received invalid task $msg"}
+ continue
+ }
msg.arrive(time)
scheduler.submit(msg)
}