1
0
Fork 0
mirror of https://github.com/openstf/stf synced 2025-10-04 10:19:30 +02:00

Since minicap is quite complicated and gets restarted often, perhaps it's best if we let changes fully propagate before restarting it again. There was a problem with someone changing rotation so quickly that pid retrieval failed, which means that stopping was sort of iffy, which then caused various problems. The pid retrieval process was improved in 5a77d300dc.

This commit is contained in:
Simo Kinnunen 2015-07-21 15:38:07 +09:00
parent 5a77d300dc
commit 1d15e8e3d7

View file

@ -40,7 +40,6 @@ module.exports = syrup.serial()
this.frameConfig = config this.frameConfig = config
this.readable = false this.readable = false
this.needsReadable = false this.needsReadable = false
this.starter = Promise.resolve(true)
this.failCounter = new FailCounter(3, 10000) this.failCounter = new FailCounter(3, 10000)
this.failCounter.on('exceedLimit', this._failLimitExceeded.bind(this)) this.failCounter.on('exceedLimit', this._failLimitExceeded.bind(this))
this.failed = false this.failed = false
@ -72,7 +71,7 @@ module.exports = syrup.serial()
case FrameProducer.STATE_STOPPED: case FrameProducer.STATE_STOPPED:
if (this.desiredState.next() === FrameProducer.STATE_STARTED) { if (this.desiredState.next() === FrameProducer.STATE_STARTED) {
this.runningState = FrameProducer.STATE_STARTING this.runningState = FrameProducer.STATE_STARTING
this.starter = this._startService().bind(this) this._startService().bind(this)
.then(function(out) { .then(function(out) {
this.output = new RiskyStream(out) this.output = new RiskyStream(out)
.on('unexpectedEnd', this._outputEnded.bind(this)) .on('unexpectedEnd', this._outputEnded.bind(this))
@ -145,7 +144,6 @@ module.exports = syrup.serial()
switch (this.runningState) { switch (this.runningState) {
case FrameProducer.STATE_STARTED: case FrameProducer.STATE_STARTED:
case FrameProducer.STATE_STARTING: case FrameProducer.STATE_STARTING:
this.starter.cancel()
this.desiredState.push(FrameProducer.STATE_STOPPED) this.desiredState.push(FrameProducer.STATE_STOPPED)
this.desiredState.push(FrameProducer.STATE_STARTED) this.desiredState.push(FrameProducer.STATE_STARTED)
this._ensureState() this._ensureState()