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

Issue 651411 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Dec 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 650258

Blocking:
issue 646653



Sign in to add a comment

Add policies to pick local sync backend and specify its location on disk

Project Member Reported by pastarmovj@chromium.org, Sep 29 2016

Issue description

Add a new enterprise policy (backed by a command line flag for consumer testing) to select the local sync backend.

A second policy should dictate where the local sync db is to be placed.

 
Blockedon: 657810
Project Member

Comment 2 by bugdroid1@chromium.org, Nov 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a

commit d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a
Author: pastarmovj <pastarmovj@chromium.org>
Date: Wed Nov 02 14:57:47 2016

Adds a new switch for enabling the new local server backend.

Actually two flags which play in tandem:

--enable-local-sync-backend and --local-sync-backend-dir

The second is respected only if the first one is specified.
Eventually those will be controlled by policy but the flags will allow
easier testing and potentially unlock the feature for advanced users.

For now sign-in is needed to kick the sync logic on but the data
is only stored locally when this flag is specified.

BUG= 651411 
TEST=unit_tests/manual.

Review-Url: https://codereview.chromium.org/2442453002
Cr-Commit-Position: refs/heads/master@{#429280}

[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/browser_sync/browser_sync_switches.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/browser_sync/browser_sync_switches.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_mock.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/driver/glue/sync_backend_host_mock.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/engine/sync_manager.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/engine/sync_manager.h
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/engine_impl/loopback_server/loopback_server.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/engine_impl/sync_manager_impl.cc
[modify] https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a/components/sync/engine_impl/sync_manager_impl.h

Project Member

Comment 3 by bugdroid1@chromium.org, Nov 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/78dd9909be3e5dc00573387ba54e79010624d198

commit 78dd9909be3e5dc00573387ba54e79010624d198
Author: rouslan <rouslan@chromium.org>
Date: Wed Nov 02 15:46:10 2016

Revert of [Sync] Adds a new switch for enabling the new local server backend. (patchset #6 id:100001 of https://codereview.chromium.org/2442453002/ )

Reason for revert:
Speculative revert to fix "sizes" on "Linux x64" bot.

Failed build:
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/27974

Error message:
FAILED linux-release-64/sizes/chrome-si/initializers: actual 8, expected 7, better lower

Most likely due to using:

    const base::FilePath::StringType kLoopbackServerBackendFilename

instead of

    static const base::FilePath::CharType kLoopbackServerBackendFilename[]

as on line 153 in profile_sync_service.cc.

Original issue's description:
> Adds a new switch for enabling the new local server backend.
>
> Actually two flags which play in tandem:
>
> --enable-local-sync-backend and --local-sync-backend-dir
>
> The second is respected only if the first one is specified.
> Eventually those will be controlled by policy but the flags will allow
> easier testing and potentially unlock the feature for advanced users.
>
> For now sign-in is needed to kick the sync logic on but the data
> is only stored locally when this flag is specified.
>
> BUG= 651411 
> TEST=unit_tests/manual.
>
> Committed: https://crrev.com/d69772aa33ea1ad4e53b5236bb66fc92c1e7cc0a
> Cr-Commit-Position: refs/heads/master@{#429280}

TBR=pavely@chromium.org,pastarmovj@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 651411 

Review-Url: https://codereview.chromium.org/2470153002
Cr-Commit-Position: refs/heads/master@{#429284}

[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/browser_sync/browser_sync_switches.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/browser_sync/browser_sync_switches.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_mock.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/driver/glue/sync_backend_host_mock.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/engine/sync_manager.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/engine/sync_manager.h
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/engine_impl/loopback_server/loopback_server.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/engine_impl/sync_manager_impl.cc
[modify] https://crrev.com/78dd9909be3e5dc00573387ba54e79010624d198/components/sync/engine_impl/sync_manager_impl.h

Project Member

Comment 4 by bugdroid1@chromium.org, Nov 3 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18

commit 43c6f026f1f50ed3e656f9c96f1b49b78afbfb18
Author: pastarmovj <pastarmovj@chromium.org>
Date: Thu Nov 03 13:23:41 2016

Adds a new switch for enabling the new local server backend.

Actually two flags which play in tandem:

--enable-local-sync-backend and --local-sync-backend-dir

The second is respected only if the first one is specified.
Eventually those will be controlled by policy but the flags will allow
easier testing and potentially unlock the feature for advanced users.

For now sign-in is needed to kick the sync logic on but the data
is only stored locally when this flag is specified.

This CL is identical to https://codereview.chromium.org/2442453002/
with only a changed type of the kLoopbackServerBackendFilename
constant according to the size bot recommendation.

BUG= 651411 
TEST=unit_tests/manual.
TBR=pavely

Review-Url: https://codereview.chromium.org/2473613003
Cr-Commit-Position: refs/heads/master@{#429558}

[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/browser_sync/browser_sync_switches.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/browser_sync/browser_sync_switches.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_mock.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/driver/glue/sync_backend_host_mock.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/engine/sync_manager.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/engine/sync_manager.h
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/engine_impl/loopback_server/loopback_server.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/engine_impl/sync_manager_impl.cc
[modify] https://crrev.com/43c6f026f1f50ed3e656f9c96f1b49b78afbfb18/components/sync/engine_impl/sync_manager_impl.h

Status: Started (was: Assigned)
Project Member

Comment 7 by bugdroid1@chromium.org, Dec 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6c8750f1522c8c67c16d40de5d7c91ecb181b8f9

commit 6c8750f1522c8c67c16d40de5d7c91ecb181b8f9
Author: pastarmovj <pastarmovj@chromium.org>
Date: Thu Dec 22 15:43:25 2016

Add policies for controlling the roaming profile status and location.

Introduces two new policies:

RoamingProfileSupportEnabled which is tied to the the
kLocalSyncBackendEnabled pref and starts or stops the roaming profile
support.

RoamingProfileLocation which specifies the location for the roaming
profile file and is tied to the kLocalSyncBackendLocation pref.

BUG= 651411 
TEST=browser_tests

Review-Url: https://codereview.chromium.org/2588423005
Cr-Commit-Position: refs/heads/master@{#440427}

[modify] https://crrev.com/6c8750f1522c8c67c16d40de5d7c91ecb181b8f9/chrome/browser/policy/configuration_policy_handler_list_factory.cc
[modify] https://crrev.com/6c8750f1522c8c67c16d40de5d7c91ecb181b8f9/chrome/test/data/policy/policy_test_cases.json
[modify] https://crrev.com/6c8750f1522c8c67c16d40de5d7c91ecb181b8f9/components/policy/resources/policy_templates.json
[modify] https://crrev.com/6c8750f1522c8c67c16d40de5d7c91ecb181b8f9/tools/metrics/histograms/histograms.xml

Status: Fixed (was: Started)
Blockedon: -657810

Sign in to add a comment