e9a988caca733d2f292991a52a0047685a69812f |
|
28-May-2016 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #28942589: Tune job scheduler We now have a new settings key that provides all of the existing tuning parameters, plus some newly redone ones for dealing with different memory levels. Changed the minimum batching for overall jobs from 2 to 1, so we will never get in the way of immediately scheduling jobs when the developer asks for this. We should now be able to rely on the doze modes to do better batching of jobs for us when it is really important. Also work on issue #28981330: Excessive JobScheduler wakeup alarms. Use a work source with scheduled alarms to blame them on the app whose job they are being scheduled for, and add a check for whether a job's timing constraint has been satisfied before considering it a possible candidate for the next alarm. (If it is satisified, the time is in the past, so we should not schedule an alarm for it.) Finally clean up a bunch of the dumpsys output to make it easier to understand. Change-Id: I06cf2c1310448f47cf386f393e9b267335fabaeb
/frameworks/base/services/core/java/com/android/server/job/JobPackageTracker.java
|
5a969aa1391203e09dee3146fc31b395de36344e |
|
05-May-2016 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #28602068: Add count to job scheduler stats Also increase the event buffer size to 100, and implement it as a real ring buffer. And put that implementation in a generic class for use in other places. Change-Id: I06936984e2c253fb5f0eb5d15faf0019ec73d4e2
/frameworks/base/services/core/java/com/android/server/job/JobPackageTracker.java
|
ef3aa6ee53c5e4f1c50dd5a9b5821c54e449d4b3 |
|
30-Apr-2016 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #28477006: Add small event log to job scheduler Added. Also fixed dumpsys output when filtering, to apply the filter to (almost) all of the output. Change-Id: Iafb446599ad8fddbe8a766784deff618a6cfdbb7
/frameworks/base/services/core/java/com/android/server/job/JobPackageTracker.java
|
807de78c072c5a40be7b12c656d641d9e73741d2 |
|
08-Apr-2016 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #28035090: Disallow abuse of JobScheduler We now keep track of how long each app has been running a job for, in 30 minute batches. If it is running jobs frequently, we will bump down the priority its jobs run at to allow other jobs to run before it. Currently we count both pending and active as the job running, which means that an app that has jobs waiting in the pending queue will count against its abuse prevention. This could allow starvation -- if we bump down the priority of an app's jobs and the system is so busy continually that they sit in the pending queue a lot -- it could never recover. But I think that is okay... if we are really in a state where we are continually running as many jobs as possible, we probably have other larger issues. Change-Id: I838aa4b5840e91df49a1e17b53188d6e4a66a6d1
/frameworks/base/services/core/java/com/android/server/job/JobPackageTracker.java
|