sonatype/nexus — pull request #131 by cstamas (2011-12-07 14:14:59+00:00)
Title: NEXUS-4640: The Parent-O-Matic device

As Peter's testing against generated snapshot repository with 13000 artifacts revealed an interesting results (snapshot removal using 1.9.2.3 takes 3(!) minutes, but the "post processing" is 20 minutes, hence to complete the task you need to wait cca 23 minutes), the need for a special device emerged.

And here it is: Parent-O-Matic!

The problem with Snapshot remover was actually a lame "optimization" added in there, that seemed correct in "laboratory" circumstances (and ITs), but resulted in "anti-optimization" in real life: there was a Map that gathered which paths need to have "rebuild maven metadata" regeneration applied. On large repositories, this path ended up with all the existing paths in repository, and even OOMed Nexus.

Finally, this change does not makes previous (already merged) pull request also related to NEXUS-4640 obsolete. While it also fixed major issues, it's fix covered so to tell just 10% of the problem, while this fix covers the rest of it, and even OOM related issue (the one linked to NEXUS-4640).