Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ComputeUsagesTask taking 30+ minutes to execute when it used to take 30 seconds for the same project #1136

Open
kyhule opened this issue Feb 20, 2024 · 8 comments

Comments

@kyhule
Copy link

kyhule commented Feb 20, 2024

Build scan link
I have buildscans on company's internal instance if need info.
CleanShot 2024-02-20 at 12 55 05@2x
CleanShot 2024-02-20 at 12 55 27@2x

Plugin version
Seeing in 1.29.0 and 1.30.0

Gradle version
8.6

JDK version
17

(Optional) Kotlin and Kotlin Gradle Plugin (KGP) version
1.9.20

(Optional) Android Gradle Plugin (AGP) version
8.1.4

Describe the bug
When running projectHealth, ComputeUsagesTask increased from ~30s to ~40m after upgrading to version 1.29.0 on our main app module.

To Reproduce
Steps to reproduce the behavior:

  1. ...

Expected behavior

Additional context

@autonomousapps
Copy link
Owner

Are you using the configuration cache?

@kyhule
Copy link
Author

kyhule commented Feb 23, 2024

No, configuration cache was not enabled for either run. No, configuration cache was not enabled for either run.

@autonomousapps
Copy link
Owner

Can you try 1.30.0?

If you get the same results, I'd like to see CPU and memory profiles to investigate. The biggest change between 28 and 29 is using the new AGP APIs. 30 makes further improvements in this vein. If you're not already doing it, I would suggest disabling auto-apply behavior and instead manually applying DAGP to each module.

@kyhule
Copy link
Author

kyhule commented Feb 24, 2024

I saw the same results using 1.30.0 which is where I first noticed it. I dropped back to 1.29.0 first and then 1.28.0 before the regression went away. I am relying on the auto apply; I'll try running without it. I am upgrading to AGP 8.2.2 right now so I'll see if that makes any difference. If none of that proves to help, I'll get cpu and memory usage on it.

@autonomousapps
Copy link
Owner

I wonder if memory usage went up and you're GC thrashing. Could you take a look in the performance tab of your build scans and see what's happening with your memory?

@kyhule
Copy link
Author

kyhule commented Feb 24, 2024

I wonder if memory usage went up and you're GC thrashing. Could you take a look in the performance tab of your build scans and see what's happening with your memory?

Nope, doesn't seem to be a GC issue.
CleanShot 2024-02-24 at 15 16 32@2x

@kyhule
Copy link
Author

kyhule commented Feb 24, 2024

I wonder if it is due to the fact that we have nonTransitiveRClass disabled (set to false). Did a heap dump and seeing a ton of instances of AndroidRes objects.
CleanShot 2024-02-24 at 15 26 19@2x

@autonomousapps
Copy link
Owner

I wonder if it is due to the fact that we have nonTransitiveRClass disabled (set to false). Did a heap dump and seeing a ton of instances of AndroidRes objects. CleanShot 2024-02-24 at 15 26 19@2x

maybe. the plugin can't even give accurate advice relating to Android resources with that disabled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants