Commit 8becf02c by tonihei Committed by Oliver Woodman

Replace all database.beginTransaction with beginTransactionNonExclusive

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

PiperOrigin-RevId: 281520758
parent 704bd8af
......@@ -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);
......
......@@ -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});
......
......@@ -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);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment