java.lang.OutOfMemoryError: Java heap space when scanning python project

Template for a good new topic, formatted with Markdown:

  • ALM used (GitHub, Bitbucket Cloud, Azure DevOps)
    Bitbucket Cloud
  • CI system used (Bitbucket Cloud, Azure DevOps, Travis CI, Circle CI
    Bitbucket Cloud
  • Scanner command used when applicable (private details masked)
    sonar-scanner -X -Dsonar.token=$SONAR_CLOUD_TOKEN -Dsonar.host.url=https://sonarcloud.io -Dsonar.projectKey=$proj_key -Dsonar.organization=$org_name
  • Languages of the repository
    Python
  • Only if the SonarCloud project is public, the URL
    • And if you need help with pull request decoration, then the URL to the PR too
  • Error observed (wrap logs/code around with triple quotes ``` for proper formatting)
12:21:11.762 INFO: Java 17.0.10 Alpine (64-bit)
12:21:11.762 INFO: Linux 6.2.0-1017-aws amd64
12:21:44.149 INFO: 144/254 files analyzed, current file: es/framework/report.py
12:21:54.713 INFO: 144/254 files analyzed, current file: es/framework/report.py
12:22:01.348 DEBUG: Cleanup org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda$283/0x00007f5b732f6648@78b41097 during JVM shutdown
12:22:01.349 INFO: ------------------------------------------------------------------------
12:22:01.349 INFO: EXECUTION FAILURE
12:22:01.349 INFO: ------------------------------------------------------------------------
12:22:01.349 INFO: Total time: 49.632s
12:22:01.412 INFO: Final Memory: 96M/330M
12:22:01.412 INFO: ------------------------------------------------------------------------
12:22:01.412 ERROR: Error during SonarScanner execution
java.lang.OutOfMemoryError: Java heap space
	at com.sonarsource.A.A.C$_M.Ⴌ(na:7180)
	at com.sonarsource.A.A.C$_M.Ⴊ(na:7521)
	at com.sonarsource.dbd.A.P.A(na:3273)
	at com.sonarsource.dbd.A.P.A(na:2993)
	at com.sonarsource.dbd.A.P$$Lambda$1519/0x00007f5b73721488.apply(Unknown Source)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575)
	at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260)
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616)
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
	at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
	at com.sonarsource.dbd.A.P.A(na:3017)
	at com.sonarsource.dbd.A.P$$Lambda$1518/0x00007f5b7371faa8.apply(Unknown Source)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575)
	at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260)
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616)
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
	at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
	at com.sonarsource.dbd.A.P.A(na:2037)
	at com.sonarsource.dbd.A.B.A(na:3013)
	at com.sonarsource.dbd.A.B.A(na:2571)
	at com.sonarsource.dbd.A.B.A(na:1261)
	at com.sonarsource.dbd.A.Y.B(na:2567)
	at com.sonarsource.dbd.frontend.python.rules.A.scanFile(na:2252)
	at org.sonar.plugins.python.PythonScanner.scanFile(PythonScanner.java:133)
12:22:01.413 DEBUG: Cleanup org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda$283/0x00007f5b732f6648@78b41097 during JVM shutdown```
* Steps to reproduce
* Potential workaround
Excluding the two python files

**Do not share screenshots of logs -- share the text itself (bonus points for being well-formatted)!**