Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[MRRESOURCES-106] ProcessRemoteResourcesMojo#getProjects() can end up consuming a lot of memory for big projects

Aperta
#233 8 commenti 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@hboutemy ci sta già lavorando.

Dal 19/6/2025.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

bug priority:major

Thomas Mortagne opened MRRESOURCES-106 and commented

At XWiki we are using the remote resource plugin to generate a NOTICE files we put in the META-INF of all jars. The file can be found on https://github.com/xwiki/xwiki-commons/blob/master/xwiki-commons-tools/xwiki-commons-tool-license-resources/src/main/resources/META-INF/NOTICE.vm.

We have a lot of memory issues and we kept increasing the max memory but it was starting to be a bit insane (we now get a OOM with -Xmx2500m) so I finally took a profiler to try to figure out where all this memory goes.

We did noticed for a while that remote resource plugin is taking longer and longer to execute during the build so I had my doubts already.
What Yourkit is telling me is that almost half of the memory (400MB here because I reduced the max memory for it to fail earlier) is retained by an ArrayList of MavenProject instances located in ProcessRemoteResourcesMojo#getProjects().

It can be reproduced by building https://github.com/xwiki/xwiki-platform (you will need to add some repositories in your settings.xml, you can find them on http://dev.xwiki.org/xwiki/bin/view/Community/Building/#HInstallingMaven).

Also I can probably put the memory dump I have somewhere if someone wants to download it.


Affects: 1.5

Issue Links:

  • MRRESOURCES-94 Performance issue in ProcessRemoteResourcesMojo.configureVelocityContext(...)
Lingua principale
Java
Stelle
17
Fork
20
Merge medio
12h 3m
PR unite (30g)
22

Preparare l'ambiente

  • Nessun Dockerfile né file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/maven-remote-resources-plugin

Tutte le issue di apache/maven-remote-resources-plugin

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.