Merge "DO NOT MERGE: Merge Oreo MR1 into master"
diff --git a/src/com/android/providers/userdictionary/UserDictionaryProvider.java b/src/com/android/providers/userdictionary/UserDictionaryProvider.java
index a7a1971..c0f67e9 100644
--- a/src/com/android/providers/userdictionary/UserDictionaryProvider.java
+++ b/src/com/android/providers/userdictionary/UserDictionaryProvider.java
@@ -71,6 +71,8 @@
 
     private static final String USERDICT_TABLE_NAME = "words";
 
+    private static final int IDLE_CONNECTION_TIMEOUT_MS = 30000;
+
     private static ArrayMap<String, String> sDictProjectionMap;
 
     private static final UriMatcher sUriMatcher;
@@ -104,6 +106,8 @@
 
         DatabaseHelper(Context context) {
             super(context, DATABASE_NAME, null, DATABASE_VERSION);
+            // Memory optimization - close idle connections after 30s of inactivity
+            setIdleConnectionTimeout(IDLE_CONNECTION_TIMEOUT_MS);
         }
 
         @Override