Replace all database.beginTransaction with beginTransactionNonExclusive

This ensures other database readers can continue reading while we do our
write transaction.

PiperOrigin-RevId: 281520758
This commit is contained in:
tonihei 2019-11-20 16:01:45 +00:00 committed by Oliver Woodman
parent 704bd8af09
commit 8becf02c30
3 changed files with 8 additions and 8 deletions

View File

@ -285,7 +285,7 @@ public final class DefaultDownloadIndex implements WritableDownloadIndex {
int version = VersionTable.getVersion(readableDatabase, VersionTable.FEATURE_OFFLINE, name);
if (version != TABLE_VERSION) {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
VersionTable.setVersion(
writableDatabase, VersionTable.FEATURE_OFFLINE, name, TABLE_VERSION);

View File

@ -78,7 +78,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
try {
String tableName = getTableName(hexUid);
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
VersionTable.removeVersion(
writableDatabase, VersionTable.FEATURE_CACHE_FILE_METADATA, hexUid);
@ -116,7 +116,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
readableDatabase, VersionTable.FEATURE_CACHE_FILE_METADATA, hexUid);
if (version != TABLE_VERSION) {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
VersionTable.setVersion(
writableDatabase, VersionTable.FEATURE_CACHE_FILE_METADATA, hexUid, TABLE_VERSION);
@ -214,7 +214,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
Assertions.checkNotNull(tableName);
try {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
for (String name : names) {
writableDatabase.delete(tableName, WHERE_NAME_EQUALS, new String[] {name});

View File

@ -797,7 +797,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
hexUid);
if (version != TABLE_VERSION) {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
initializeTable(writableDatabase);
writableDatabase.setTransactionSuccessful();
@ -832,7 +832,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
public void storeFully(HashMap<String, CachedContent> content) throws IOException {
try {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
initializeTable(writableDatabase);
for (CachedContent cachedContent : content.values()) {
@ -855,7 +855,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
}
try {
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
for (int i = 0; i < pendingUpdates.size(); i++) {
CachedContent cachedContent = pendingUpdates.valueAt(i);
@ -931,7 +931,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
try {
String tableName = getTableName(hexUid);
SQLiteDatabase writableDatabase = databaseProvider.getWritableDatabase();
writableDatabase.beginTransaction();
writableDatabase.beginTransactionNonExclusive();
try {
VersionTable.removeVersion(
writableDatabase, VersionTable.FEATURE_CACHE_CONTENT_METADATA, hexUid);