summaryrefslogtreecommitdiff
path: root/services/java/com/android/server/content/SyncManager.java
AgeCommit message (Collapse)Author
2013-12-19Move some system services to separate directoriesAmith Yamasani
Refactored the directory structure so that services can be optionally excluded. This is step 1. Will be followed by another change that makes it possible to remove services from the build. Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
2013-10-11Fix infinite boot-loop bug in SM.Matthew Williams
Bug:11064918 If the ContentResolver sync API is used with the empty ("") string as a provider, the ContentService will throw an RTE. This cl addresses all the entry points of the API that could allow this, as well as adds an ifEmpty check at the point of failure. Also removed RTE throws from public functions(no point in crashing the phone). Change-Id: I57427d12a6cafb3e6d7a32ca0c10b05315b20580
2013-09-30Remove blocking from SM before boot completed.Matthew Williams
Bug: 10916655 Add a stash where the SyncHandler can copy and place msgs rather than run them. After boot is complete we iterate through the stash in order and send the messages off. Change-Id: I9c175ee79fe60952346003a29225b8687979b44e
2013-09-20fix deadlock caused by clearAllBackoffs in SSEMatthew Williams
ordering of locks in SyncStorageEngine#clearAllBackoffs() introduced deadlocks. Bug: 10751759 Bug: 10680330 Change-Id: Ief118830b6b249de0e7618b6186b4181b4f12f82
2013-08-30DO NOT MERGE. Remove service component for KLP.Matthew Williams
1) As discussed, lack of internal clients -> remove SyncService component from KLP. This CL reverts that addition. 2) Also includes javadoc cleanup of existing API. 3) Fix naming of allowMetered() -> disallowMetered() in API 4) Removed one-off sync in the future, as it doesn't make sense for sync adapters. Change-Id: I1b17094e6edafb2955cdfb99f39b44274fbe86f9
2013-08-16Use pending.xml to persist sync ops.Matthew Williams
Support pending ops by producing badly formed xml. fixed bug that stopped alarm manager from updating if the next alarm time is in the past. Use new AlarmManager API for old AM behaviour - to set exact alarms. Change-Id: I57090f9c7155996298be7ec968a88f17ac1938a7
2013-07-24AnonymousSyncService & SyncRequest.Matthew Williams
Changes to the way bundles are parcelled broke SM, this update writes out the bundle as xml. This circumvents the need for parcel, and makes it easier to debug whats happening. Change-Id: I6cd5d3a2eb80bfa5b3ae0c7f2d2ff91a65daaa34
2013-07-15Minor Formating FixAlon Albert
Put a space between the period and the bundle of a periodic sync. Change-Id: If6cd7ae2b3faf59d2c8fd760983eb4650d62aca9
2013-06-26Merge "Add new ActivityManager.isLowRamDevice()."Dianne Hackborn
2013-06-26Add new ActivityManager.isLowRamDevice().Dianne Hackborn
This and the old isHighEndGfx() is set up through a device configuration, rather than trying to compute it automatically. Change-Id: Ibc95c05791023a7ae6c88555b75bb61f2b613991
2013-06-26Merge "Bugfix 9373708 JBMR2 runtime restart (system process crash in the ↵Georgi Nikolov
sync manager) during setup"
2013-06-26Bugfix 9373708Georgi Nikolov
JBMR2 runtime restart (system process crash in the sync manager) during setup The fix is to ensure that all access to SyncStatusInfo and related objects happens while holding the mAuthority lock or is on a per-thread copy of the objects Also, includes an unrelated fix for a bug I just noticed in the way dumpSyncState() prints the periodic sync info Change-Id: Id9e4dff41029412e133bdabc843d555434d9a12f (cherry picked from commit 182ff3acbad9850b40d37ad1c23106be6eda8476)
2013-06-26Update procstats to start collecting/reporting pss.Dianne Hackborn
Completely reworked how it manages its data, since trying to keep track of all of the possible pss data with the old data structures would have made it huge. Now we have a sparse data structure for pss and process times. (Will switch service times over to it soon.) Currently the only thing that collects pss data is running "dumpsys meminfo". More will be added later. Modified checkin output to also scale better as more distinct data categories are added, and added output of pss data. Now instead of dumping every possible entry as a comma-separated list, it dumps a comma-separated list of only the entries with data, tagged with the state they go with. Also fixed some problems in the checkin reporting of batterystats (it needs to escape commas), added checkin reporting of the history list, fixed parsing of kernel wake locks to strip quotes, fixed wake lock name that the sync manager generates to be more sane. Change-Id: Ibf4010838a9f685ebe1d93aff86c064ccc52b861
2013-06-10Do not allow 0 or smaller periodicity for syncs.Ashish Sharma
b/9295383 Change-Id: I5f758f4a033d74e42a04b214a6b70b94d394280d
2013-05-02Start combining threads in system process.Dianne Hackborn
This introduces four generic thread that services can use in the system process: - Background: part of the framework for all processes, for work that is purely background (no timing constraint). - UI: for time-critical display of UI. - Foreground: normal foreground work. - IO: performing IO operations. I went through and moved services into these threads in the places I felt relatively comfortable about understanding what they are doing. There are still a bunch more we need to look at -- lots of networking stuff left, 3 or so different native daemon connectors which I didn't know how much would block, audio stuff, etc. Also updated Watchdog to be aware of and check these new threads, with a new API for other threads to also participate in this checking. Change-Id: Ie2f11061cebde5f018d7383b3a910fbbd11d5e11
2013-04-10Don't sync from adapters that haven't opted in to restricted accountsAmith Yamasani
SyncManager should not allow syncing of data from apps that haven't opted in to viewing restricted accounts in limited users. Override getIsSyncable() to check if the sync adapter has the manifest entry to enable restricted accounts of that account type. Return the default isSyncable state if the adapter has opted in, otherwise return 0 for false. Bug: 8566533 Change-Id: I3777f1e4fdb8debe1724ab083272e2d9bd2e63f2
2013-01-16Rename bindService to bindServiceAsUser to follow convention.Amith Yamasani
This is for the multi-user version of bindService, not the original. Change-Id: Ib2de35941196accf387b1a276a77e6f9af805ec0
2012-12-11Move lingering services to services.jar.Jeff Sharkey
This helps reduce the pressure on framework.jar, and makes it clear that it should only be used by the system_server. Bug: 7333397 Change-Id: I0858904239535380fbf30562b793e277d8c3f054