Merge "Ignore exceptions when investigating failure reasons" into rvc-dev

This commit is contained in:
TreeHugger Robot
2020-04-21 22:22:37 +00:00
committed by Android (Google) Code Review

View File

@@ -228,6 +228,10 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
} catch (SQLiteCantOpenDatabaseException e) { } catch (SQLiteCantOpenDatabaseException e) {
String message = String.format("Cannot open database '%s'", file); String message = String.format("Cannot open database '%s'", file);
try {
// Try to diagnose for common reasons. If something fails in here, that's fine;
// just swallow the exception.
final Path path = FileSystems.getDefault().getPath(file); final Path path = FileSystems.getDefault().getPath(file);
final Path dir = path.getParent(); final Path dir = path.getParent();
@@ -242,6 +246,9 @@ public final class SQLiteConnection implements CancellationSignal.OnCancelListen
} else { } else {
message += ": Unknown reason"; message += ": Unknown reason";
} }
} catch (Throwable th) {
message += ": Unknown reason; cannot examine filesystem: " + th.getMessage();
}
throw new SQLiteCantOpenDatabaseException(message, e); throw new SQLiteCantOpenDatabaseException(message, e);
} finally { } finally {
mRecentOperations.endOperation(cookie); mRecentOperations.endOperation(cookie);