Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 49c1527c authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Drop DEV network stats to save RAM." into lmp-mr1-dev

parents 4c2e3491 5274dcc8
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -3017,7 +3017,6 @@ public final class Settings {
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_ENABLED);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_GLOBAL_ALERT_BYTES);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_POLL_INTERVAL);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_REPORT_XT_OVER_DEV);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_SAMPLE_ENABLED);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_TIME_CACHE_MAX_AGE);
            MOVED_TO_GLOBAL.add(Settings.Global.NETSTATS_UID_BUCKET_DURATION);
@@ -5462,8 +5461,6 @@ public final class Settings {
       public static final String NETSTATS_GLOBAL_ALERT_BYTES = "netstats_global_alert_bytes";
       /** {@hide} */
       public static final String NETSTATS_SAMPLE_ENABLED = "netstats_sample_enabled";
       /** {@hide} */
       public static final String NETSTATS_REPORT_XT_OVER_DEV = "netstats_report_xt_over_dev";

       /** {@hide} */
       public static final String NETSTATS_DEV_BUCKET_DURATION = "netstats_dev_bucket_duration";
+10 −44
Original line number Diff line number Diff line
@@ -45,7 +45,6 @@ import static android.provider.Settings.Global.NETSTATS_DEV_PERSIST_BYTES;
import static android.provider.Settings.Global.NETSTATS_DEV_ROTATE_AGE;
import static android.provider.Settings.Global.NETSTATS_GLOBAL_ALERT_BYTES;
import static android.provider.Settings.Global.NETSTATS_POLL_INTERVAL;
import static android.provider.Settings.Global.NETSTATS_REPORT_XT_OVER_DEV;
import static android.provider.Settings.Global.NETSTATS_SAMPLE_ENABLED;
import static android.provider.Settings.Global.NETSTATS_TIME_CACHE_MAX_AGE;
import static android.provider.Settings.Global.NETSTATS_UID_BUCKET_DURATION;
@@ -184,7 +183,6 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
        public long getPollInterval();
        public long getTimeCacheMaxAge();
        public boolean getSampleEnabled();
        public boolean getReportXtOverDev();

        public static class Config {
            public final long bucketDuration;
@@ -229,8 +227,6 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
    private NetworkStatsRecorder mUidRecorder;
    private NetworkStatsRecorder mUidTagRecorder;

    /** Cached {@link #mDevRecorder} stats. */
    private NetworkStatsCollection mDevStatsCached;
    /** Cached {@link #mXtRecorder} stats. */
    private NetworkStatsCollection mXtStatsCached;

@@ -305,7 +301,6 @@ public class NetworkStatsService extends INetworkStatsService.Stub {

            // read historical network stats from disk, since policy service
            // might need them right away.
            mDevStatsCached = mDevRecorder.getOrLoadCompleteLocked();
            mXtStatsCached = mXtRecorder.getOrLoadCompleteLocked();

            // bootstrap initial stats to prevent double-counting later
@@ -386,7 +381,6 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
        mUidRecorder = null;
        mUidTagRecorder = null;

        mDevStatsCached = null;
        mXtStatsCached = null;

        mSystemReady = false;
@@ -523,48 +517,24 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
    }

    /**
     * Return network summary, splicing between {@link #mDevStatsCached}
     * and {@link #mXtStatsCached} when appropriate.
     * Return network summary, splicing between DEV and XT stats when
     * appropriate.
     */
    private NetworkStats internalGetSummaryForNetwork(
            NetworkTemplate template, long start, long end) {
        if (!mSettings.getReportXtOverDev()) {
            // shortcut when XT reporting disabled
            return mDevStatsCached.getSummary(template, start, end);
        }

        // splice stats between DEV and XT, switching over from DEV to XT at
        // first atomic bucket.
        final long firstAtomicBucket = mXtStatsCached.getFirstAtomicBucketMillis();
        final NetworkStats dev = mDevStatsCached.getSummary(
                template, Math.min(start, firstAtomicBucket), Math.min(end, firstAtomicBucket));
        final NetworkStats xt = mXtStatsCached.getSummary(
                template, Math.max(start, firstAtomicBucket), Math.max(end, firstAtomicBucket));

        xt.combineAllValues(dev);
        return xt;
        // We've been using pure XT stats long enough that we no longer need to
        // splice DEV and XT together.
        return mXtStatsCached.getSummary(template, start, end);
    }

    /**
     * Return network history, splicing between {@link #mDevStatsCached}
     * and {@link #mXtStatsCached} when appropriate.
     * Return network history, splicing between DEV and XT stats when
     * appropriate.
     */
    private NetworkStatsHistory internalGetHistoryForNetwork(NetworkTemplate template, int fields) {
        if (!mSettings.getReportXtOverDev()) {
            // shortcut when XT reporting disabled
            return mDevStatsCached.getHistory(template, UID_ALL, SET_ALL, TAG_NONE, fields);
        }

        // splice stats between DEV and XT, switching over from DEV to XT at
        // first atomic bucket.
        final long firstAtomicBucket = mXtStatsCached.getFirstAtomicBucketMillis();
        final NetworkStatsHistory dev = mDevStatsCached.getHistory(
                template, UID_ALL, SET_ALL, TAG_NONE, fields, Long.MIN_VALUE, firstAtomicBucket);
        final NetworkStatsHistory xt = mXtStatsCached.getHistory(
                template, UID_ALL, SET_ALL, TAG_NONE, fields, firstAtomicBucket, Long.MAX_VALUE);

        xt.recordEntireHistory(dev);
        return xt;
        // We've been using pure XT stats long enough that we no longer need to
        // splice DEV and XT together.
        return mXtStatsCached.getHistory(template, UID_ALL, SET_ALL, TAG_NONE, fields);
    }

    @Override
@@ -1329,10 +1299,6 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
            return getGlobalBoolean(NETSTATS_SAMPLE_ENABLED, true);
        }
        @Override
        public boolean getReportXtOverDev() {
            return getGlobalBoolean(NETSTATS_REPORT_XT_OVER_DEV, true);
        }
        @Override
        public Config getDevConfig() {
            return new Config(getGlobalLong(NETSTATS_DEV_BUCKET_DURATION, HOUR_IN_MILLIS),
                    getGlobalLong(NETSTATS_DEV_ROTATE_AGE, 15 * DAY_IN_MILLIS),