Edgewall Software
Modify

Opened 17 years ago

Closed 17 years ago

#193 closed defect (fixed)

invalidating running builds corrupts the build and crashes the slave

Reported by: ole Owned by: cmlenz
Priority: major Milestone: 0.6
Component: Build master Version: dev
Keywords: invalidate, slave Cc:
Operating System: Linux

Description

When a still running build gets "Invalidated" via the web interface, the slave continues the build but quits with the following exception on completion:

[WARNING ] Server returned error 500: Internal Server Error
Traceback (most recent call last):
  File "/usr/bin/bitten-slave", line 7, in ?
    sys.exit(
  File "/usr/lib/python2.4/site-packages/Bitten-0.6dev_r510-py2.4.egg/bitten/slave.py", line 360, in main
    slave.run()
  File "/usr/lib/python2.4/site-packages/Bitten-0.6dev_r510-py2.4.egg/bitten/slave.py", line 145, in run
    if isinstance(e.reason, socket.error) and \
AttributeError: HTTPError instance has no attribute 'reason'

The trac log shows the following exception:

2007-10-19 01:28:09,121 Trac[master] INFO: Slave  completed build 215 ("fvl" as of [602])
2007-10-19 01:28:09,125 Trac[main] ERROR:
Traceback (most recent call last):
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 387, in dispatch_request
    dispatcher.dispatch(req)
  File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 237, in dispatch
    resp = chosen_handler.process_request(req)
  File "/usr/lib/python2.4/site-packages/Bitten-0.6dev_r510-py2.4.egg/bitten/master.py", line 87, in process_request
    return self._process_build_step(req, config, build)
  File "/usr/lib/python2.4/site-packages/Bitten-0.6dev_r510-py2.4.egg/bitten/master.py", line 262, in _process_build_step
    build.update(db=db)
  File "/usr/lib/python2.4/site-packages/Bitten-0.6dev_r510-py2.4.egg/bitten/model.py", line 445, in update
    assert self.status == self.PENDING
AssertionError

Obviously the invalidation sets a build state conflicting with the afforementioned assertion self.status == self.PENDING. Consequently, the slave cannot successfully be restarted until a new revision has been committed and a new build has been scheduled.

Attachments (0)

Change History (1)

comment:1 Changed 17 years ago by wbell

  • Resolution set to fixed
  • Status changed from new to closed

Fixed in [526]

Add Comment

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain cmlenz.
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.