From 410170d6d6771d6fabdce63bcfb76ee3cd8c0a31 Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 28 Jul 2019 18:13:13 +0200 Subject: [PATCH] Retry on compute exception --- .../java/androidx/room/RoomTrackingLiveData.java | 6 ++++-- patches/room.patch | 12 +++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/androidx/room/RoomTrackingLiveData.java b/app/src/main/java/androidx/room/RoomTrackingLiveData.java index 4d520517f8..2f7f5c4c19 100644 --- a/app/src/main/java/androidx/room/RoomTrackingLiveData.java +++ b/app/src/main/java/androidx/room/RoomTrackingLiveData.java @@ -93,8 +93,10 @@ class RoomTrackingLiveData extends LiveData { //throw new RuntimeException("Exception while computing database" // + " live data.", e); computed = false; - mInvalid.set(false); - break; + try { + Thread.sleep(5000L); + } catch (InterruptedException ignored) { + } } } if (computed) { diff --git a/patches/room.patch b/patches/room.patch index 822445743f..e9bd199f9c 100644 --- a/patches/room.patch +++ b/patches/room.patch @@ -1,6 +1,6 @@ --- /home/marcel/support/room/runtime/src/main/java/androidx/room/RoomTrackingLiveData.java 2019-07-27 12:47:44.950985792 +0200 -+++ app/src/main/java/androidx/room/RoomTrackingLiveData.java 2019-07-28 15:50:45.670936158 +0200 -@@ -89,8 +89,12 @@ class RoomTrackingLiveData extends Li ++++ app/src/main/java/androidx/room/RoomTrackingLiveData.java 2019-07-28 18:06:23.373936158 +0200 +@@ -89,8 +89,14 @@ class RoomTrackingLiveData extends Li try { value = mComputeFunction.call(); } catch (Exception e) { @@ -10,12 +10,14 @@ + //throw new RuntimeException("Exception while computing database" + // + " live data.", e); + computed = false; -+ mInvalid.set(false); -+ break; ++ try { ++ Thread.sleep(5000L); ++ } catch (InterruptedException ignored) { ++ } } } if (computed) { -@@ -125,6 +129,7 @@ class RoomTrackingLiveData extends Li +@@ -125,6 +131,7 @@ class RoomTrackingLiveData extends Li } } };