release-request-957cd691-fb71-4770-8ff7-a3b9602655a5-for-git_oc-mr1-release-4314464 snap-temp-L54400000099147910
Change-Id: I450a704da703474dffdcfd9ae697fc2df7508d37
diff --git a/src/com/android/providers/contacts/CallLogDatabaseHelper.java b/src/com/android/providers/contacts/CallLogDatabaseHelper.java
index d4ed930..736d665 100644
--- a/src/com/android/providers/contacts/CallLogDatabaseHelper.java
+++ b/src/com/android/providers/contacts/CallLogDatabaseHelper.java
@@ -47,6 +47,8 @@
private static final String SHADOW_DATABASE_NAME = "calllog_shadow.db";
+ private static final int IDLE_CONNECTION_TIMEOUT_MS = 30000;
+
private static CallLogDatabaseHelper sInstance;
/** Instance for the "shadow" provider. */
@@ -87,6 +89,8 @@
public OpenHelper(Context context, String name, SQLiteDatabase.CursorFactory factory,
int version) {
super(context, name, factory, version);
+ // Memory optimization - close idle connections after 30s of inactivity
+ setIdleConnectionTimeout(IDLE_CONNECTION_TIMEOUT_MS);
}
@Override
diff --git a/src/com/android/providers/contacts/ContactsDatabaseHelper.java b/src/com/android/providers/contacts/ContactsDatabaseHelper.java
index c45c63e..76fe173 100644
--- a/src/com/android/providers/contacts/ContactsDatabaseHelper.java
+++ b/src/com/android/providers/contacts/ContactsDatabaseHelper.java
@@ -144,6 +144,8 @@
@VisibleForTesting
static final boolean DISALLOW_SUB_QUERIES = false;
+ private static final int IDLE_CONNECTION_TIMEOUT_MS = 30000;
+
public interface Tables {
public static final String CONTACTS = "contacts";
public static final String DELETED_CONTACTS = "deleted_contacts";
@@ -1064,6 +1066,8 @@
enableWal = false;
}
setWriteAheadLoggingEnabled(enableWal);
+ // Memory optimization - close idle connections after 30s of inactivity
+ setIdleConnectionTimeout(IDLE_CONNECTION_TIMEOUT_MS);
mDatabaseOptimizationEnabled = optimizationEnabled;
mIsTestInstance = isTestInstance;
Resources resources = context.getResources();