Thread kill button freezes ui

Bug #467733 reported by Rob Oakes
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Time Drive
Fix Released
Critical
Philippe Delodder

Bug Description

Pressing the stop button during the initial program start up sequence causes the user interface to freeze. No specific errors or thrown. Necessary to kill the process to exit.

Rob Oakes (robertsoakes)
Changed in time-drive:
importance: Undecided → Critical
milestone: none → 0.4
Revision history for this message
Philippe Delodder (lodder) wrote : Re: [Bug 467733] [NEW] Thread kill button freezes ui

The treading is indeed a problem to stop as I pointed out. we could build in
a loop stop that checks before processing each folder
--
Philippe Delodder
<email address hidden>
http://www.delodder.be

2009/11/1 Rob Oakes <email address hidden>

> Public bug reported:
>
> Pressing the stop button during the initial program start up sequence
> causes the user interface to freeze. No specific errors or thrown.
> Necessary to kill the process to exit.
>
> ** Affects: time-drive
> Importance: Critical
> Status: New
>
> ** Changed in: time-drive
> Importance: Undecided => Critical
>
> ** Changed in: time-drive
> Milestone: None => 0.4
>
> --
> Thread kill button freezes ui
> https://bugs.launchpad.net/bugs/467733
> You received this bug notification because you are a member of Time
> Drive - Devel, which is subscribed to Time Drive.
>
> Status in Time Drive: New
>
> Bug description:
> Pressing the stop button during the initial program start up sequence
> causes the user interface to freeze. No specific errors or thrown.
> Necessary to kill the process to exit.
>

Changed in time-drive:
status: New → Confirmed
Revision history for this message
Rob Oakes (robertsoakes) wrote :

I've been looking at the docs and trying to think about how we might solve this problem. Wouldn't it just be easiest to couch the main run() method in a while loop? As long as do_stuff = true, then it continues to the end. We could then write a slot method so that do_stuff = false. If the do_stuff switch gets flipped, then we clean things up on a per thread basis?

I'm just now really starting to dig into how you've set up the threading, and wasn't able to see how you're currently terminating threads. (Granted, I only looked at loadsnapshots.py)

This might be a bit of work, but it would allow us to clean up after ourselves. Thoughts?

Revision history for this message
Philippe Delodder (lodder) wrote :

it would be then easier to do for example with backupjob: http://paste.pocoo.org/show/148840/

and we set the self._stop_thread when the stop button is pressed. I think this is what you mean?

Revision history for this message
Philippe Delodder (lodder) wrote :

Needs testing, Rob please you do I have implemented if for:
backupjob, loadarchive and restorefiles

Changed in time-drive:
status: Confirmed → Fix Committed
assignee: nobody → Philippe Delodder (lodder)
Changed in time-drive:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.