[Buildbot] #3024: logfilewatcher is not synchronously finished at the end of the command

Buildbot trac trac at buildbot.net
Wed Dec 3 15:27:19 UTC 2014


#3024: logfilewatcher is not synchronously finished at the end of the command
---------------------+-----------------------
Reporter:  tardyp    |       Owner:  dustin
    Type:  defect    |      Status:  assigned
Priority:  critical  |   Milestone:  0.9.+
 Version:  0.8.9     |  Resolution:
Keywords:            |
---------------------+-----------------------

Comment (by tardyp):

 This is probably a design flaw of buildslave here.
 With buildbot <0.9, all the update calls were synchronous in master, so
 only the order matter, as they all run in the master thread.

 Now, we have some update_calls that are deferred, so not only the order
 matters. Their deferred must be serialized as well.

 Here is an attempt at drawing what happens:

 https://www.websequencediagrams.com/
 title trac 3024

 Slave->Master: appendStdout1
 Slave->Master: appendStdout2
 Slave->Master: endCommand

 Master->Master: appendStdout1:getLogLock
 Master->Dbthread1: appendStdout
 Master->Master: appendStdout2:getLogLock
 Master->Dbthread2: endCommand:closeLog
 Dbthread1->Master: appendStdout1:Done
 Master->Master: callLogObservers1
 Master->Dbthread1: appendStdout
 Dbthread2->Master: closeLogDone
 Master->Master: evaluateCommand
 Master->Master: ComputeLogObserversBasedResults
 Dbthread1->Master: appendStdout2:Done
 Master->Master: callLogObservers2

--
Ticket URL: <http://trac.buildbot.net/ticket/3024#comment:9>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation


More information about the bugs mailing list