Merge "Frameworks/base: Compile-time optimize SQLiteConnection"
This commit is contained in:
@@ -91,8 +91,6 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
|
|||||||
private static final String[] EMPTY_STRING_ARRAY = new String[0];
|
private static final String[] EMPTY_STRING_ARRAY = new String[0];
|
||||||
private static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
|
private static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
|
||||||
|
|
||||||
private static final Pattern TRIM_SQL_PATTERN = Pattern.compile("[\\s]*\\n+[\\s]*");
|
|
||||||
|
|
||||||
private final CloseGuard mCloseGuard = CloseGuard.get();
|
private final CloseGuard mCloseGuard = CloseGuard.get();
|
||||||
|
|
||||||
private final SQLiteConnectionPool mPool;
|
private final SQLiteConnectionPool mPool;
|
||||||
@@ -1203,7 +1201,11 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static String trimSqlForDisplay(String sql) {
|
private static String trimSqlForDisplay(String sql) {
|
||||||
return TRIM_SQL_PATTERN.matcher(sql).replaceAll(" ");
|
// Note: Creating and caching a regular expression is expensive at preload-time
|
||||||
|
// and stops compile-time initialization. This pattern is only used when
|
||||||
|
// dumping the connection, which is a rare (mainly error) case. So:
|
||||||
|
// DO NOT CACHE.
|
||||||
|
return sql.replaceAll("[\\s]*\\n+[\\s]*", " ");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1437,9 +1439,6 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static final class Operation {
|
private static final class Operation {
|
||||||
private static final SimpleDateFormat sDateFormat =
|
|
||||||
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
|
|
||||||
|
|
||||||
public long mStartTime;
|
public long mStartTime;
|
||||||
public long mEndTime;
|
public long mEndTime;
|
||||||
public String mKind;
|
public String mKind;
|
||||||
@@ -1494,7 +1493,11 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
|
|||||||
}
|
}
|
||||||
|
|
||||||
private String getFormattedStartTime() {
|
private String getFormattedStartTime() {
|
||||||
return sDateFormat.format(new Date(mStartTime));
|
// Note: SimpleDateFormat is not thread-safe, cannot be compile-time created, and is
|
||||||
|
// relatively expensive to create during preloading. This method is only used
|
||||||
|
// when dumping a connection, which is a rare (mainly error) case. So:
|
||||||
|
// DO NOT CACHE.
|
||||||
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(new Date(mStartTime));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user