)]}'
{
  "commit": "bd12527c90d55eefa657e6a71cfdd287ecdb4ab3",
  "tree": "eae5018191d2e8f4132237acaa0ec7d4ef7e030a",
  "parents": [
    "743d42d2990bd30195045a256f863d0ce6f51d79"
  ],
  "author": {
    "name": "David Chen",
    "email": "dwchen@google.com",
    "time": "Wed Apr 04 19:02:50 2018 -0700"
  },
  "committer": {
    "name": "David Chen",
    "email": "dwchen@google.com",
    "time": "Thu Apr 05 16:15:01 2018 -0700"
  },
  "message": "Fix uid map to be simpler and fix partial bucket.\n\nThe previous scheme captured periodic snapshots for each config with\ncomplex logic that\u0027s unnecessary and wasted memory. We actually don\u0027t\nneed to store any snapshots since we just convert the current state\ninto a snapshot and also include the deltas (change events) since the\nprevious report until now.\n\nTo make the system more robust, we also include up to 100 of the\ndeleted apps in the uid map.\n\nAlso, fix the wiring of the partial buckets so the metric producers\nform partial buckets on both app upgrade and removal, but not on\ninstallation of a new app.\n\nAlso, we update StatsCompanionService to also include disabled apps.\n\nBug: 77607583\nTest: Verified unit-tests pass and added new e2e tests.\nChange-Id: I98e1f544d6e6571545ae1581c4cebab807596f51\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bc1c51ad29a79ab037fe15f3c9e02300e06b6c8e",
      "old_mode": 33188,
      "old_path": "cmds/statsd/Android.mk",
      "new_id": "8e46714abbd060d0bd27c29426583e1ee7efc537",
      "new_mode": 33188,
      "new_path": "cmds/statsd/Android.mk"
    },
    {
      "type": "modify",
      "old_id": "de8dfe47a6efb50f4a7094a87867494aa024998a",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/StatsLogProcessor.cpp",
      "new_id": "cf97e546e90b3c2fb080a7b581fc45b4b8a97d66",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/StatsLogProcessor.cpp"
    },
    {
      "type": "modify",
      "old_id": "adc2664b94c386756d2bb7a8c4328fa5b70392f9",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/StatsService.cpp",
      "new_id": "dac73ef8cb01cca1d40ca3f15592d9ef6a497c80",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/StatsService.cpp"
    },
    {
      "type": "modify",
      "old_id": "8d2fd33c7beb993229960948359ad5976085ff68",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/StatsService.h",
      "new_id": "a4552e14f2055f5bd3737096dc737cb46e398f21",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/StatsService.h"
    },
    {
      "type": "modify",
      "old_id": "0c076e95dfd553d84b048bb8780c86d6501582cb",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/guardrail/StatsdStats.cpp",
      "new_id": "f501fd465150d5387bde78b15b8e6f698da272bd",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/guardrail/StatsdStats.cpp"
    },
    {
      "type": "modify",
      "old_id": "00bef7560e3862589655c8bf5db3a0bade829d91",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/guardrail/StatsdStats.h",
      "new_id": "13e35dd09fdf3748486fe035b03e9f08ebeaa778",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/guardrail/StatsdStats.h"
    },
    {
      "type": "modify",
      "old_id": "139a407dc09dc6e9056ea06e77dbae508390c595",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/metrics/MetricProducer.h",
      "new_id": "db5d32cfc1cf5ff98fa1d0ed2d1fbeca22479fd2",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/metrics/MetricProducer.h"
    },
    {
      "type": "modify",
      "old_id": "b7c5795d17fd8a6b644b68da7f6c08b354806553",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/metrics/metrics_manager_util.cpp",
      "new_id": "566d34e0df0d00a244dd972f347aee371eb9938b",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/metrics/metrics_manager_util.cpp"
    },
    {
      "type": "modify",
      "old_id": "3754ae01b8fcf7b55cb2d9109bb673f568cc7280",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/metrics/metrics_manager_util.h",
      "new_id": "0ebdcf9d08eeedec34b89e0394c98e13991304cc",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/metrics/metrics_manager_util.h"
    },
    {
      "type": "modify",
      "old_id": "8c8152da51ecea74c7a7dcec480befe4fb9cd446",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/packages/UidMap.cpp",
      "new_id": "b3425a4d7a8f05957cdb75b69d5d3c20825b4bb5",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/packages/UidMap.cpp"
    },
    {
      "type": "modify",
      "old_id": "a3632d2187246f1bd75280dbdfc739ab21d8e614",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/packages/UidMap.h",
      "new_id": "7222e85ffd2160e355405c8b8f93c2b534f34abe",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/packages/UidMap.h"
    },
    {
      "type": "modify",
      "old_id": "4aa3c9738a41b5ec9a0eca9f4736047a21651011",
      "old_mode": 33188,
      "old_path": "cmds/statsd/src/stats_log.proto",
      "new_id": "931c2d59244751bd7729870619576a0d7b3aaa1b",
      "new_mode": 33188,
      "new_path": "cmds/statsd/src/stats_log.proto"
    },
    {
      "type": "modify",
      "old_id": "b0da07bb7f29cd3f6219c24e1c0fe87a109f3e2a",
      "old_mode": 33188,
      "old_path": "cmds/statsd/tests/LogEntryMatcher_test.cpp",
      "new_id": "4c6671dcd6632ed95478c6199c334ace82f0dd75",
      "new_mode": 33188,
      "new_path": "cmds/statsd/tests/LogEntryMatcher_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "e6fe3d8d3059ff0ff65e02ddd1cf3522b75147e1",
      "old_mode": 33188,
      "old_path": "cmds/statsd/tests/StatsLogProcessor_test.cpp",
      "new_id": "09daf7563796f3cf07099b3fd085b7db94ece1dd",
      "new_mode": 33188,
      "new_path": "cmds/statsd/tests/StatsLogProcessor_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "a9b67e01d88c3339c76483b17e3c9bb6e2b3da69",
      "old_mode": 33188,
      "old_path": "cmds/statsd/tests/UidMap_test.cpp",
      "new_id": "2fab9750314c140861dc577bea60ed805b0f7312",
      "new_mode": 33188,
      "new_path": "cmds/statsd/tests/UidMap_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "a04a6f91463372c00f1d166f008f82247ca3d594",
      "old_mode": 33188,
      "old_path": "cmds/statsd/tests/e2e/Attribution_e2e_test.cpp",
      "new_id": "a97bc4122bafc087e858fc07df220dace36f603f",
      "new_mode": 33188,
      "new_path": "cmds/statsd/tests/e2e/Attribution_e2e_test.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d4892edc1fd71e0d68372fee9025a5cd6a69e4a6",
      "new_mode": 33188,
      "new_path": "cmds/statsd/tests/e2e/PartialBucket_e2e_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "d4625e91c47f4ab58ce76239d83df8615eb9e28d",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/stats/StatsCompanionService.java",
      "new_id": "5f2ac4fee103552b702be15ea8f53f9cdea8a2e6",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/stats/StatsCompanionService.java"
    }
  ]
}
