From a9be33f7cf015a2d47f569f7e59e619d35194530 Mon Sep 17 00:00:00 2001 From: Makoto Onuki Date: Fri, 31 May 2019 16:03:50 -0700 Subject: [PATCH] Fix slow query log. SQLiteDebug.Const isn't supposed to be preloaded. Fix: 134176355 Test: "setprop db.log.slow_query_threshold.10045 0" and make sure ... it works for UID 10045 Change-Id: I06ca1531e968faa2378d0cb7f627e2c6a87cf502 --- config/preloaded-classes | 1 - core/java/android/database/sqlite/SQLiteConnection.java | 8 ++++---- core/java/android/database/sqlite/SQLiteDebug.java | 7 ++++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/config/preloaded-classes b/config/preloaded-classes index 91cb47bd02009..b4fd031bf5a27 100644 --- a/config/preloaded-classes +++ b/config/preloaded-classes @@ -1105,7 +1105,6 @@ android.database.sqlite.SQLiteDatabase android.database.sqlite.SQLiteDatabaseConfiguration android.database.sqlite.SQLiteDatabaseCorruptException android.database.sqlite.SQLiteDatabaseLockedException -android.database.sqlite.SQLiteDebug$Consts android.database.sqlite.SQLiteDebug$DbStats android.database.sqlite.SQLiteDebug$PagerStats android.database.sqlite.SQLiteDebug diff --git a/core/java/android/database/sqlite/SQLiteConnection.java b/core/java/android/database/sqlite/SQLiteConnection.java index 3844794da980c..f7222750b89b3 100644 --- a/core/java/android/database/sqlite/SQLiteConnection.java +++ b/core/java/android/database/sqlite/SQLiteConnection.java @@ -19,8 +19,8 @@ package android.database.sqlite; import android.database.Cursor; import android.database.CursorWindow; import android.database.DatabaseUtils; -import android.database.sqlite.SQLiteDebug.Consts; import android.database.sqlite.SQLiteDebug.DbStats; +import android.database.sqlite.SQLiteDebug.NoPreloadHolder; import android.os.CancellationSignal; import android.os.OperationCanceledException; import android.os.ParcelFileDescriptor; @@ -214,7 +214,7 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen try { mConnectionPtr = nativeOpen(mConfiguration.path, mConfiguration.openFlags, mConfiguration.label, - SQLiteDebug.Consts.DEBUG_SQL_STATEMENTS, SQLiteDebug.Consts.DEBUG_SQL_TIME, + NoPreloadHolder.DEBUG_SQL_STATEMENTS, NoPreloadHolder.DEBUG_SQL_TIME, mConfiguration.lookasideSlotSize, mConfiguration.lookasideSlotCount); } finally { mRecentOperations.endOperation(cookie); @@ -1500,7 +1500,7 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen operation.mFinished = true; final long execTime = operation.mEndTime - operation.mStartTime; mPool.onStatementExecuted(execTime); - return SQLiteDebug.Consts.DEBUG_LOG_SLOW_QUERIES && SQLiteDebug.shouldLogSlowQuery( + return NoPreloadHolder.DEBUG_LOG_SLOW_QUERIES && SQLiteDebug.shouldLogSlowQuery( execTime); } return false; @@ -1608,7 +1608,7 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen if (mSql != null) { msg.append(", sql=\"").append(trimSqlForDisplay(mSql)).append("\""); } - final boolean dumpDetails = allowDetailedLog && Consts.DEBUG_LOG_DETAILED + final boolean dumpDetails = allowDetailedLog && NoPreloadHolder.DEBUG_LOG_DETAILED && mBindArgs != null && mBindArgs.size() != 0; if (dumpDetails) { msg.append(", bindArgs=["); diff --git a/core/java/android/database/sqlite/SQLiteDebug.java b/core/java/android/database/sqlite/SQLiteDebug.java index 4fc7f5d257a95..a231a920a29b0 100644 --- a/core/java/android/database/sqlite/SQLiteDebug.java +++ b/core/java/android/database/sqlite/SQLiteDebug.java @@ -39,7 +39,7 @@ public final class SQLiteDebug { * * {@hide} */ - public static final class Consts { + public static final class NoPreloadHolder { /** * Controls the printing of informational SQL log messages. * @@ -103,8 +103,9 @@ public final class SQLiteDebug { */ public static boolean shouldLogSlowQuery(long elapsedTimeMillis) { final int slowQueryMillis = Math.min( - SystemProperties.getInt(Consts.SLOW_QUERY_THRESHOLD_PROP, Integer.MAX_VALUE), - SystemProperties.getInt(Consts.SLOW_QUERY_THRESHOLD_UID_PROP, + SystemProperties.getInt(NoPreloadHolder.SLOW_QUERY_THRESHOLD_PROP, + Integer.MAX_VALUE), + SystemProperties.getInt(NoPreloadHolder.SLOW_QUERY_THRESHOLD_UID_PROP, Integer.MAX_VALUE)); return elapsedTimeMillis >= slowQueryMillis; }