objectbox / objectbox/objectbox-java
Improve DataObserver reference holding
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 4.6k
- Forks
- 311
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
I'm trying to use obervable queries to detect when the user is logged in my application in order to start fetching data in background with correct authorization token.
...
userBox.query().build().subscribe().observe(users -> fetchUserData());
...
boxStore.subscribe(User.class).observe(class -> fetchUserData());
First "live" query doesn't work whilst the second works fine whenever I put(user) a new user in the userBox.
Is this correct? I'm not sure from which thread the user is being inserted, might this be an issue?
Does it make sense to use a "live" query to observe the insertion of new objects or is it just for changes in existing objects?
Live queries would be great, for my application and are the main feature that made me pick ObjectBox, hope I can get it working.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, DataObserver und die im Bericht beschriebenen Pfade für live-query-Abonnements nachzuverfolgen, und vergleiche sie anschließend mit boxStore.subscribe(User.class). Prüfe, wie Abfragereferenzen gehalten werden und welcher Thread Inserts verarbeitet. Erledigt ist die Aufgabe, wenn die live query neu eingefügte Benutzer zuverlässig beobachtet und das Verhalten geklärt oder durch einen passenden Test abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- databases, mobile-dev
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 30/100