| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
- only pass the authtoken through from the authenticator to the client
for getAuthToken() and strip it out from the other calls, like
addAccount(). http://b/2332762
- beef up the documentation to indicate what calls are allowed to be made
from the main thread and which are not allowed. http://b/2384961
- wait a bit before retrying syncs that failed because one was already
in progress. http://b/2414235
|
| |
|
|
|
|
| |
instead create one if one doesn't exist yet
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- make the sync dump handle the case where there are no accounts
- fix a bug that caused the SyncManager to burn up CPU in the system process
The following was implemented:
scheduler offers:
- settings to disable sync
- retries of certain errors
- backoffs
want a way to control these when scheduling a sync
- "ignore_settings"
- "ignore initial backoff"
- "manual" : ignore settings, ignore initial backoff
- "do not retry"
- need to change the default behavior of not retrying manual syncs to retry regardless
|
|
|
|
|
|
|
|
|
| |
- added the ability to specify that a sync (of account/authority/extras)
should occur at a given frequency
- the existing daily poll code was replaced with seeding each
account/authority with a 24 hour periodic sync
- enhanced the "adb shell dumpsys content" output to show the
periodic syncs and when they will next run
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
while the system is running bug http://b/issue?id=2360782" into eclair
Merge commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5'
* commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5':
initialize sync adapters that get installed while the system is running
|
| |
| |
| |
| | |
bug http://b/issue?id=2360782
|
| |
| |
| |
| |
| |
| |
| | |
moved SyncQueue and SyncOperation into their own top-level classes
to ease maintainability and testing6
removed some dead code
|
| |
| |
| |
| | |
Change-Id: I61bdb05a2526523700c2833154d5a4133881ef10
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a new flag for bindService that tells the system to not bring the
target service's process in to the foreground scheduling class. This is
used by the sync system to not cause the current sync adapter to come to
the foreground as it is running.
Also some small improvements to the debug output of the process list
of oom adj and scheduling info.
|
|\ \
| |/
| |
| |
| |
| |
| | |
Merge commit '0ce8431c15078e095a22a123dbabcd91049a9652' into eclair-mr2
* commit '0ce8431c15078e095a22a123dbabcd91049a9652':
don't reschedule syncs that failed with a tooManyRetries error
|
| | |
|
|\ \
| |/
| |
| |
| |
| |
| | |
Merge commit '5e5eb393729630800079206498f283de8f02f3a7' into eclair-mr2
* commit '5e5eb393729630800079206498f283de8f02f3a7':
don't throw an exception when we can't find a pending sync operation in the database
|
| |
| |
| |
| | |
database
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
which will allow syncs to be scheduled during bootup. The
providers need this so that they can potentially schedule
syncs while they are starting up.
- make the SyncManager message handler wait until boot
has completed to start dispatching messages
|
|
|
|
| |
Internal Bug: 2138733
|
|
|
|
| |
when the setting is enabled
|
| |
|
|
|
|
|
| |
Add an account field to the sync event, which is the java hash of the
account name. (A hash is used for privacy reasons.)
|
| |
|
| |
|
|
|
|
|
|
| |
This will be used elsewhere.
Change-Id: Id561fa7fed5eb65446312cb697813483903d33a6
|
|
|
|
|
|
|
|
|
|
| |
This makes the system a little more careful to not start third party
code until it is ready to.
Also fix a little bug in SyncManager that would cause it to crash
during boot if sync was in a failure state.
Change-Id: Ib2d287d8441d155d393fe740a5f98690895fd358
|
| |
|
|
|
|
| |
- expedite the INITIALIZATION sync
|
|
|
|
| |
This reverts commit fae7ff106b3ed791e324ddcec17226c3fe1cd809.
|
|
|
|
| |
- expedite the INITIALIZATION sync
|
| |
|
|
|
|
| |
the SyncManager
|
| |
|
|
|
|
|
| |
indicates whether or not syncs should be attempted for it.
- add public methods to get and set this parameter
|
|
|
|
| |
master branch
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(get|set)SyncAutomatically
(get|set)MasterSyncAutomatically
- change SYNC_EXTRAS_FORCE to SYNC_EXTRAS_MANUAL to mace clear that
this overrides the .*SyncAutomatically settings
- make ContentResolver methods that call the sync controls methods
in IContentService so that SDK users can use them
- rename startSync to requestSync to reinforce the fact that a sync
is not immediately or always started when this method is called
- add an Account parameter to all the sync settings and control methods
- change the sync control methods to take a String authority rather than a Uri uri
|
| |
|
| |
|
|\
| |
| |
| | |
Merge commit '55280a9'
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This introduces a new class in the base platform for performing a clean
shutdown (which was copied from the classes in the policies). It
includes new features to send a shutdown broadcast for applications
to do cleanup, and ot have the activity manager pause the current
activity before proceeding with the shutdown. These facilities are
also use to write at the most recent stat files for sync, battery
and user activity.
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.
There are now 4 files associated with this class, holding various pieces of its state that
should be consistent. These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time. Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.
Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database. This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it. Other changes in other projects are required to update to the
new API.
The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|