Fixed
Status Update
Comments
yb...@google.com <yb...@google.com> #2
Thanks for reporting this - Looks like Room is trying to give you a warning, possibly POJO & query result column mismatch, but it fails format the message. I guess safeFormat() is not very safe after all. >.>
Could you please provide your full method signature for the failing query method case? If the return type is a data class it would be nice if you could also provide it.
Could you please provide your full method signature for the failing query method case? If the return type is a data class it would be nice if you could also provide it.
an...@gmail.com <an...@gmail.com> #3
What is the alarm sounds that every seems to know about but me it's like I'm being tracked everywhere I go
an...@gmail.com <an...@gmail.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit c08fa5ad19b227e73cfcf9fd8e0994ec32273bce
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Wed Nov 14 13:38:50 2018
Make RLog's safeFormat() truly safe by catching all exceptions.
Bug: 119520136
Test: RLogTest
Change-Id: I81c8a4ed9e03b64d6762a9976d2dfcd12ea8327b
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
A room/compiler/src/test/kotlin/androidx/room/log/RLogTest.kt
https://android-review.googlesource.com/826949
https://goto.google.com/android-sha1/c08fa5ad19b227e73cfcf9fd8e0994ec32273bce
Branch: androidx-master-dev
commit c08fa5ad19b227e73cfcf9fd8e0994ec32273bce
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Wed Nov 14 13:38:50 2018
Make RLog's safeFormat() truly safe by catching all exceptions.
Bug: 119520136
Test: RLogTest
Change-Id: I81c8a4ed9e03b64d6762a9976d2dfcd12ea8327b
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
A room/compiler/src/test/kotlin/androidx/room/log/RLogTest.kt
an...@gmail.com <an...@gmail.com> #5
A fix for this will be available in Room 2.1.0-alpha03
an...@gmail.com <an...@gmail.com> #6
Great news -- thank you for fast turnaround!
an...@gmail.com <an...@gmail.com> #7
Above comment is NOT TRUE, it seems I did not do a code change after commenting out apply google-services plugin. That's why the build passed.
da...@google.com <da...@google.com> #8
Thanks for the sample app. I haven't gotten to the bottom of the issue yet but I wanted to give you an update and it does seem indeed that Room is taking a very long time to parse and understand your queries via the ANTLR generated parser that Room uses. I'm not sure what is so special about your queries that is causing this, but I'll comment back with an update once I find out. Sadly for now I don't have a recommendation on a workaround.
da...@google.com <da...@google.com> #9
Alright, I've drill down the problem to being the various "OR <col_name> LIKE '%' : text '%'" in your queries. Specifically they cause the SQLiteParser in Room to go down a path with poor performance as described in https://github.com/antlr/antlr4/issues/1398 . A fix for this involves updating Room's ANTRL runtime library and generated parser code with the latest version. This update will likely be available in Room 2.1.0-alpha02.
an...@gmail.com <an...@gmail.com> #10
Thanks for the update. Is 2.1.0-alpha02 around the corner?
ap...@google.com <ap...@google.com> #11
Project: platform/frameworks/support
Branch: androidx-master-dev
commit 8e46b9ca1f55b040a18dd86833880b5106d103b2
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Wed Oct 10 19:17:50 2018
Update Room's ANTLR Parser to 4.7.1
Updating to the latest ANTLR version fixes the performance issue
described inhttps://github.com/antlr/antlr4/issues/1398 which affects
Room's SQL Parser since it contains left-recursive rules. Specifically
SQLite.g4 has multiple recursions to describe an expression as defined
inhttps://www.sqlite.org/lang_expr.html , meaning if a user has certain
queries that causes the parser to use the adaptivePredict algorithm
then the build time increases significantly due to Room's query
parsing.
Also bumped Room's version to 2.1.0-alpha02
Bug: 117401230
Test: ./gradlew room:integration-tests:testapp:cC
Change-Id: I4d0799a11ccee816ab209cbf74e7dcf2b2ce1a18
M buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
M buildSrc/src/main/kotlin/androidx/build/dependencies/Dependencies.kt
M room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/dao/UserDao.java
https://android-review.googlesource.com/786077
https://goto.google.com/android-sha1/8e46b9ca1f55b040a18dd86833880b5106d103b2
Branch: androidx-master-dev
commit 8e46b9ca1f55b040a18dd86833880b5106d103b2
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Wed Oct 10 19:17:50 2018
Update Room's ANTLR Parser to 4.7.1
Updating to the latest ANTLR version fixes the performance issue
described in
Room's SQL Parser since it contains left-recursive rules. Specifically
SQLite.g4 has multiple recursions to describe an expression as defined
in
queries that causes the parser to use the adaptivePredict algorithm
then the build time increases significantly due to Room's query
parsing.
Also bumped Room's version to 2.1.0-alpha02
Bug: 117401230
Test: ./gradlew room:integration-tests:testapp:cC
Change-Id: I4d0799a11ccee816ab209cbf74e7dcf2b2ce1a18
M buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
M buildSrc/src/main/kotlin/androidx/build/dependencies/Dependencies.kt
M room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/dao/UserDao.java
da...@google.com <da...@google.com> #12
No concrete date on 2.1.0-alpha02, I want to get a few more bugs in before making the next alpha release. So maybe by the end of the month.
an...@gmail.com <an...@gmail.com> #13
--
- Ankit
- Ankit
Description
Version used: 1.1.1
Devices/Android versions reproduced on: Latest android emulator on Mac OS running Oreo image, Lenovo K6 Power
Also tried with Android studio 3.2 stable and Android 3.3 Preview version as well.
Building my project takes 15 min. If I comment out below line
annotationProcessor "android.arch.persistence.room:compiler:$ROOM_VERSION"
from my app's build.gradle, it takes only a minute to build the project. It's not a very big project (entity count wise) and I did not try reproducing the issue in a sample project. However, I can reproduce the
I have tried:
1. Cleaning. Rebuilding...
2. Invalidate caches/Restart.
3. Even tried migration to using all the androidx artifacts.
It seems like a bug in Room's annotationProcessor but I don't have a sample project to share.