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

High RAM usage for app:koverXmlReport command in multi-module Android project on Azure CI #712

Open
CazimirRoman opened this issue Dec 12, 2024 · 3 comments
Assignees
Labels
Question Support request issue type S: untriaged Status: issue reported but unprocessed

Comments

@CazimirRoman
Copy link

We are using Kover in a multi-module Android project written in Kotlin and running our CI on Azure. We've observed a significant increase in RAM usage when running the app:koverXmlReport command. The CI is currently showing a peak RAM usage of 24GB, which is approximately 10GB higher compared to when we don't run the Kover report generation.

We have already attempted to exclude specific classes that are not relevant for code coverage analysis, but the RAM consumption remains the same.

Has anyone experienced similar high RAM usage with app:koverXmlReport in multi-module Android projects?

  • What are some potential causes for this high memory consumption?

  • What strategies can we use to reduce the RAM usage of the app:koverXmlReport command?

  • Are there any specific configurations or optimizations within Kover that can be applied to address this issue?

Any guidance or suggestions would be greatly appreciated. Thank you!

@CazimirRoman CazimirRoman added Question Support request issue type S: untriaged Status: issue reported but unprocessed labels Dec 12, 2024
@shanshin
Copy link
Collaborator

shanshin commented Dec 12, 2024

Hi, could you please specify which command is running koverXmlReport? What does the Gradle command look like?
like gradlew koverXmlReport or gradlew :app:koverXmlReport

@CazimirRoman
Copy link
Author

CazimirRoman commented Dec 12, 2024

We are running it like this tasks: ./gradlew clean assembleDebug app:koverXmlReport

@shanshin
Copy link
Collaborator

Do you have any observations at what stage exactly is the peak of memory consumption?

The fact is that the app:koverXmlReport command runs the building of all build variants in all modules, and then calls all unit tests for them (both for release and debug).

Also, please double-check that the koverXmlReport (without a colon) command is not accidentally called anywhere. This causes the generation of a local report for each module, which, due to specific of Gradle, may increase memory consumption.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Question Support request issue type S: untriaged Status: issue reported but unprocessed
Projects
None yet
Development

No branches or pull requests

2 participants