[tor-bugs] #27308 [Core Tor/Tor]: report bootstrap phase when we actually start, not just unblock something (was: add completion milestones to bootstrap)

Tor Bug Tracker & Wiki blackhole at torproject.org
Fri Dec 21 18:15:40 UTC 2018


#27308: report bootstrap phase when we actually start, not just unblock something
-------------------------------------------------+-------------------------
 Reporter:  catalyst                             |          Owner:
                                                 |  catalyst
     Type:  enhancement                          |         Status:
                                                 |  assigned
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.4.0.x-final
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  usability, ux, ux-team, bootstrap,   |  Actual Points:
  035-roadmap-subtask, 035-triaged-in-20180711,  |
  s8-bootstrap                                   |
Parent ID:  #28018                               |         Points:
 Reviewer:                                       |        Sponsor:
                                                 |  Sponsor8-can
-------------------------------------------------+-------------------------

Old description:

> Right now many bootstrap events get reported when the preceding task has
> completed.  This makes it somewhat harder to tell what has gone wrong if
> bootstrap progress stalls.
>
> We should add completion milestones to bootstrap reporting.  This makes
> bootstrap reporting more future-proof.  If in the future we add a time-
> consuming task with (no bootstrap reporting) between two existing
> bootstrap tasks, it will be a little more obvious what's going on.
>
> For example, say we have task X followed by task Z, but then we add a
> lengthy task Y without adding bootstrap reporting to it.  In the old
> scheme without completion milestones, if Y stalls, the user sees:
> * starting X
> * starting Z
> * [hang]
> The user thinks Z has already started when no such thing has happened
> because Y is still in progress.  If we add completion milestones, the
> user will see:
> * starting X
> * finished X
> * starting Z
> * finishing Z
> in a normal bootstrap.  If something gets stuck in task Y, the user will
> see:
> * starting X
> * finished X
> * [hang]
> This will make it more clear that something got stuck in between tasks.
>
> In a one-line display like Tor Launcher, the completion milestones will
> normally flash by quickly and not be very visible to users.  Completion
> milestones might make the NOTICE logs a bit more verbose.

New description:

 Right now many bootstrap events get reported when the preceding task has
 completed.  This makes it somewhat harder to tell what has gone wrong if
 bootstrap progress stalls.

 [edit: The following isn't necessarily the best way to fix this.  It might
 be better to figure out how to report starting something when actually
 starting it.]

 We should add completion milestones to bootstrap reporting.  This makes
 bootstrap reporting more future-proof.  If in the future we add a time-
 consuming task with (no bootstrap reporting) between two existing
 bootstrap tasks, it will be a little more obvious what's going on.

 For example, say we have task X followed by task Z, but then we add a
 lengthy task Y without adding bootstrap reporting to it.  In the old
 scheme without completion milestones, if Y stalls, the user sees:
 * starting X
 * starting Z
 * [hang]
 The user thinks Z has already started when no such thing has happened
 because Y is still in progress.  If we add completion milestones, the user
 will see:
 * starting X
 * finished X
 * starting Z
 * finishing Z
 in a normal bootstrap.  If something gets stuck in task Y, the user will
 see:
 * starting X
 * finished X
 * [hang]
 This will make it more clear that something got stuck in between tasks.

 In a one-line display like Tor Launcher, the completion milestones will
 normally flash by quickly and not be very visible to users.  Completion
 milestones might make the NOTICE logs a bit more verbose.

--

Comment (by catalyst):

 I'm no longer convinced that adding completion milestones is the best way
 to fix this class of problems.  I think we want to report starting
 something when we've actually started it, not when we think we've
 unblocked it from starting.

 I've been functionally using this as a ticket for tracking where we report
 misleading implicit progress in bootstrap phases.

 Edited the summary and description accordingly.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/27308#comment:9>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list