New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 749906 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Proj-Servicification

Blocking:
issue 753012



Sign in to add a comment

mash: Make user profile switch and active user pref service switch atomic

Project Member Reported by jamescook@chromium.org, Jul 28 2017

Issue description

Right now mash connects to the wrong pref service on startup (the temporary login profile) and doesn't change pref services on multiprofile switch. I'm fixing that with a suggestion from sammc with https://chromium-review.googlesource.com/c/590356/

However, it's not best solution. With that CL if you switch users with multiprofile there is a time window between when ash has been informed of the switched (and fired SessionObserver::OnActiveUserSessionChanged) and when ash has connected to the new user's profile pref service.

This makes the code more complex -- code that modifies prefs has to check for null PrefService* and it's not clear what to do if you want to write a pref during the null time window.

It would be easier to reason about things if the user switch and pref service switch were atomic.

Suggestions on how to do this? Maybe someone more familiar than me with pref service and/or session state could take this on?

 
Owner: jamescook@chromium.org
Status: Assigned (was: Untriaged)
This adds enough awkwardness that I think we need to handle it now-ish.

See also  issue 751143  mash: Defer ash::Shell init until local state prefs are ready

Blocking: 753012
Components: -Internals>MUS Internals>Services>WindowService
Components: -Internals>Services>WindowService Internals>Services>Ash
Labels: -Proj-Mustash-Mash

Comment 5 by dxie@google.com, May 30 2018

Labels: Hotlist-KnownIssue

Sign in to add a comment