[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Possible Bug in Maven Debian Helper



On Sun, Jun 28, 2020 at 11:03:37PM -0400, Olek Wojnar wrote:
> Hi tony,
> 
> On Sun, Jun 28, 2020 at 9:48 PM tony mancill <tmancill@debian.org> wrote:
> 
> >
> > I attempted to reproduce this but the package depends on
> > libchecker-framework-java and the sources checked into the Salsa repo
> > [3] don't match what I see uploaded NEW [4].  Do you mind pushing the
> > branch you used for the upload?
> >
> 
> Of course, sorry about that! I pushed the "master" branch which contains
> the upload I plan to make to unstable once the package clears NEW. I also
> pushed the "experimental" branch which adds an ephemeral experimental
> commit on top of "master." The "experimental" branch is presently in NEW.
> Please let me know if there's anything else that you need to examine this.
> Thanks!
> 
Hi Olek,

Thank you!  I was able to reproduce the problem you are experiencing and
used jmc to grab some stack traces while it is stuck spinning.  They
all are some variant of this - the common bit being that we're always in
somewhere in POMReader:

"main" #1 prio=5 os_prio=0 cpu=133878.15ms elapsed=135.64s tid=0x00007f7224015000 nid=0x20a26 runnable  [0x00007f722b037000]
   java.lang.Thread.State: RUNNABLE
	at java.util.TreeMap.getEntry(java.base@11.0.7/TreeMap.java:357)
	at java.util.TreeMap.get(java.base@11.0.7/TreeMap.java:277)
	at org.debian.maven.repo.POMReader.expandString(POMReader.java:255)
	at org.debian.maven.repo.POMReader.expandProperties(POMReader.java:239)
	at org.debian.maven.repo.POMReader.readPom(POMReader.java:207)
	at org.debian.maven.repo.POMReader.readPom(POMReader.java:57)
	at org.debian.maven.repo.POMTransformer.keepPomVersion(POMTransformer.java:171)
	at org.debian.maven.repo.POMTransformer$2.handlePOM(POMTransformer.java:162)
	at org.debian.maven.repo.ListOfPOMs.foreachPoms(ListOfPOMs.java:102)
	at org.debian.maven.repo.POMTransformer.keepPomVersions(POMTransformer.java:159)
	at org.debian.maven.repo.POMTransformer.main(POMTransformer.java:770)

So we're definitely in the maven-repo-helper code, entering via [1] and
stuck in [2].  Specifically, my guess is that we're looping in [3].

However, I haven't found a fix yet.  I'm still picking through the pom files
in the patch to see if I can figure out why we're getting stuck.  It
seems like the code expands the pom, it refers to itself (or otherwise
creates a cycle).

We can probably add some more debugging to maven-repo-helper too... :)

Cheers,
tony

[1] https://salsa.debian.org/java-team/maven-repo-helper/-/blob/debian/1.9.4/src/main/java/org/debian/maven/repo/POMTransformer.java
[2] https://salsa.debian.org/java-team/maven-repo-helper/-/blob/debian/1.9.4/src/main/java/org/debian/maven/repo/POMReader.java
[3] https://salsa.debian.org/java-team/maven-repo-helper/-/blob/debian/1.9.4/src/main/java/org/debian/maven/repo/POMReader.java#L247-259

Attachment: signature.asc
Description: PGP signature


Reply to: