Status Update
Comments
sa...@squareup.com <sa...@squareup.com> #2
Project: platform/frameworks/support
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
https://android-review.googlesource.com/1123258
https://goto.google.com/android-sha1/b90079595f33f58fece04026a97faa0d243acdb1
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
[Deleted User] <[Deleted User]> #3
cs...@google.com <cs...@google.com>
jp...@google.com <jp...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically ( b/140759491 ).
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
https://android-review.googlesource.com/1288456
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically (
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
sa...@squareup.com <sa...@squareup.com> #5
Hmm are you sure? 270034824
suggests that this is a month old regression, but I'm fairly confident I've seen my emulator perform badly for many months. It also only mentions M1, but a few Linux users have confirmed their emulators are defaulting to SW acceleration as well.
jp...@google.com <jp...@google.com>
ya...@google.com <ya...@google.com> #6
Hi,
This bug has been there for multiple canary release versions, but is recently dropped to stable. If you use canary emulator you might have seen it for a while.
If you know anyone who encounters the same issue on Linux, please ask them if they have some interesting configuration (remote desktop? linux within an VM? etc), and if they could help to run the command "glxinfo | grep OpenGL" and send us the output.
This bug has been there for multiple canary release versions, but is recently dropped to stable. If you use canary emulator you might have seen it for a while.
If you know anyone who encounters the same issue on Linux, please ask them if they have some interesting configuration (remote desktop? linux within an VM? etc), and if they could help to run the command "glxinfo | grep OpenGL" and send us the output.
ev...@tatarka.me <ev...@tatarka.me> #7
Nothing that interesting? archlinux with the propitiatory nvidia driver.
glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 525.89.02
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 525.89.02
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 525.89.02
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 525.89.02
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 525.89.02
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 525.89.02
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
ya...@google.com <ya...@google.com> #8
Ranjit,
do we have anything similar to #7 that could try to see if we could repro the issue? (Linux machine with NVIDIA GeForce GPU, emulator version 33.1.2, check if "-gpu auto" picks up the hardware or software rendering)
do we have anything similar to #7 that could try to see if we could repro the issue? (Linux machine with NVIDIA GeForce GPU, emulator version 33.1.2, check if "-gpu auto" picks up the hardware or software rendering)
ra...@google.com <ra...@google.com> #9
Yahan, I have asked the team but it seems no one has the Linux machine with NVIDIA GeForce GPU.
sa...@squareup.com <sa...@squareup.com> #10
This bug has been there for multiple canary release versions, but is recently dropped to stable. If you use canary emulator you might have seen it for a while
Yea that sounds about right. I've been using canaries for some time.
ya...@google.com <ya...@google.com> #11
Let's keep this bug for Mac and move the linux discussion to the following:
issuetracker.google.com/issues/272771924
If you are experiencing similar issues on linux, would you help to run the emulator from command line with -verbose tag and send us the logs? Your command will look like:
/path/to/emulator -avd your_avd_name -verbose
Please post them inissuetracker.google.com/issues/272771924
Thanks!
If you are experiencing similar issues on linux, would you help to run the emulator from command line with -verbose tag and send us the logs? Your command will look like:
/path/to/emulator -avd your_avd_name -verbose
Please post them in
Thanks!
Description
I'm not sure when this started, but emulators are no longer HW accelerated on macOS Ventura 13.2.1. There's a massive performance drop in emulators that seems to have gone unnoticed for a while.
Android Studio prints this line every time an emulator is started with vanilla config:
When the acceleration mode is manually changed to hardware, Android Studio displays a warning message:
Considering that SW acceleration is terrible, can we also show a warning message in the future if HW can't be used? It's sad that this problem has gone unnoticed for so long.