Skip to content

Build hangs sometimes #14

@fabapp2

Description

@fabapp2

Sometimes build fails when parser parity is tested.
When some dependency can't be found the parsing hangs in MavenMojoProjectParser.
Retries work without changes.

https://github.com/spring-projects/spring-rewrite-commons/actions/runs/7285956189/job/19853786780?pr=11

[INFO] Running org.springframework.rewrite.parsers.CompareParserRecipeRunTest
2023-12-21T08:59:55.533Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Parsing module /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/pom.xml
2023-12-21T08:59:55.533Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Processing main sources in module 'com.example:app'
2023-12-21T08:59:55.533Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : [com.example:app] Parsing main source files
2023-12-21T09:00:00.499Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Dependencies on main classpath: [/Users/runner/.m2/repository/org/springframework/boot/spring-boot-starter-data-jpa/2.7.16/spring-boot-starter-data-jpa-2.7.16.jar, /Users/runner/.m2/repository/org/springframework/boot/spring-boot-starter-aop/2.7.16/spring-boot-starter-aop-2.7.16.jar, /Users/runner/.m2/repository/org/springframework/boot/spring-boot-starter-jdbc/2.7.16/spring-boot-starter-jdbc-2.7.16.jar, /Users/runner/.m2/repository/jakarta/transaction/jakarta.transaction-api/1.3.3/jakarta.transaction-api-1.3.3.jar, /Users/runner/.m2/repository/jakarta/persistence/jakarta.persistence-api/2.2.3/jakarta.persistence-api-2.2.3.jar, /Users/runner/.m2/repository/org/hibernate/hibernate-core/5.6.15.Final/hibernate-core-5.6.15.Final.jar, /Users/runner/.m2/repository/org/springframework/data/spring-data-jpa/2.7.16/spring-data-jpa-2.7.16.jar, /Users/runner/.m2/repository/org/springframework/spring-aspects/5.3.30/spring-...
2023-12-21T09:00:00.499Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Parsing main Java sources.
2023-12-21T09:00:02.738Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Parsed 3 main Java source files.
2023-12-21T09:00:02.739Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Parsing main resources
2023-12-21T09:00:02.803Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Parsed 0 main resources
2023-12-21T09:00:02.803Z  INFO 2101 --- [ool-40-thread-1] o.s.r.parsers.maven.MavenModuleParser    : Processing test sources in module 'com.example:app'
2023-12-21T09:00:03.308Z ERROR 2101 --- [ool-40-thread-1] o.s.r.test.util.ParserExecutionHelper    : Failure while parsing with org.springframework.rewrite.parsers.RewriteProjectParser
java.lang.RuntimeException: java.lang.RuntimeException: java.nio.file.NoSuchFileException: /Users/runner/.m2/repository/org/assertj/assertj-core/3.22.0/assertj-core-3.22.0.jar
	at org.springframework.rewrite.parsers.RewriteParserConfiguration.lambda$artifactDownloaderErrorConsumer$0(RewriteParserConfiguration.java:78) ~[classes/:na]
	at org.openrewrite.maven.cache.MavenArtifactCache.computeArtifact(MavenArtifactCache.java:62) ~[rewrite-maven-8.5.1.jar:8.5.1]
	at org.openrewrite.maven.utilities.MavenArtifactDownloader.downloadArtifact(MavenArtifactDownloader.java:92) ~[rewrite-maven-8.5.1.jar:8.5.1]
	at org.springframework.rewrite.parsers.MavenProject.lambda$getClasspathElements$1(MavenProject.java:198) ~[classes/:na]
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[na:na]
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[na:na]
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) ~[na:na]
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[na:na]
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[na:na]
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575) ~[na:na]
	at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260) ~[na:na]
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616) ~[na:na]
	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622) ~[na:na]
	at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627) ~[na:na]
	at org.springframework.rewrite.parsers.MavenProject.getClasspathElements(MavenProject.java:201) ~[classes/:na]
	at org.springframework.rewrite.parsers.MavenProject.getTestClasspathElements(MavenProject.java:185) ~[classes/:na]
	at org.springframework.rewrite.parsers.maven.MavenModuleParser.processTestSources(MavenModuleParser.java:331) ~[classes/:na]
	at org.springframework.rewrite.parsers.maven.MavenModuleParser.parseModuleSourceFiles(MavenModuleParser.java:108) ~[classes/:na]
	at org.springframework.rewrite.parsers.SourceFileParser.lambda$parseOtherSourceFiles$0(SourceFileParser.java:56) ~[classes/:na]
	at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]
	at org.springframework.rewrite.parsers.SourceFileParser.parseOtherSourceFiles(SourceFileParser.java:49) ~[classes/:na]
	at org.springframework.rewrite.parsers.RewriteProjectParser.parse(RewriteProjectParser.java:160) ~[classes/:na]
	at org.springframework.rewrite.parsers.RewriteProjectParser.parse(RewriteProjectParser.java:121) ~[classes/:na]
	at org.springframework.rewrite.test.util.ParserExecutionHelper.lambda$parseWithRewriteProjectParser$5(ParserExecutionHelper.java:118) ~[test-classes/:na]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.accept(AbstractApplicationContextRunner.java:434) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.consumeAssertableContext(AbstractApplicationContextRunner.java:363) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.lambda$run$0(AbstractApplicationContextRunner.java:341) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.util.TestPropertyValues.lambda$applyToSystemProperties$1(TestPropertyValues.java:174) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.util.TestPropertyValues.applyToSystemProperties(TestPropertyValues.java:188) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.util.TestPropertyValues.applyToSystemProperties(TestPropertyValues.java:173) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.lambda$run$1(AbstractApplicationContextRunner.java:341) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.withContextClassLoader(AbstractApplicationContextRunner.java:369) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.run(AbstractApplicationContextRunner.java:340) ~[spring-boot-test-3.1.3.jar:3.1.3]
	at org.springframework.rewrite.test.util.ParserExecutionHelper.parseWithRewriteProjectParser(ParserExecutionHelper.java:115) ~[test-classes/:na]
	at org.springframework.rewrite.test.util.ParserExecutionHelper.lambda$parseParallel$2(ParserExecutionHelper.java:70) ~[test-classes/:na]
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[na:na]
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na]
	at java.base/java.lang.Thread.run(Thread.java:840) ~[na:na]
Caused by: java.lang.RuntimeException: java.nio.file.NoSuchFileException: /Users/runner/.m2/repository/org/assertj/assertj-core/3.22.0/assertj-core-3.22.0.jar
	at org.springframework.rewrite.parsers.RewriteParserConfiguration.lambda$artifactDownloaderErrorConsumer$0(RewriteParserConfiguration.java:78) ~[classes/:na]
	at org.openrewrite.maven.utilities.MavenArtifactDownloader.lambda$downloadArtifact$0(MavenArtifactDownloader.java:127) ~[rewrite-maven-8.5.1.jar:8.5.1]
	at org.openrewrite.maven.cache.MavenArtifactCache.computeArtifact(MavenArtifactCache.java:59) ~[rewrite-maven-8.5.1.jar:8.5.1]
	... 38 common frames omitted
Caused by: java.nio.file.NoSuchFileException: /Users/runner/.m2/repository/org/assertj/assertj-core/3.22.0/assertj-core-3.22.0.jar
	at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92) ~[na:na]
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) ~[na:na]
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[na:na]
	at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:218) ~[na:na]
	at java.base/java.nio.file.Files.newByteChannel(Files.java:380) ~[na:na]
	at java.base/java.nio.file.Files.newByteChannel(Files.java:432) ~[na:na]
	at java.base/java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:422) ~[na:na]
	at java.base/java.nio.file.Files.newInputStream(Files.java:160) ~[na:na]
	at org.openrewrite.maven.utilities.MavenArtifactDownloader.lambda$downloadArtifact$0(MavenArtifactDownloader.java:106) ~[rewrite-maven-8.5.1.jar:8.5.1]
	... 39 common frames omitted
2023-12-21T09:00:09.839Z  INFO 2101 --- [ool-40-thread-2] o.e.a.i.impl.DefaultArtifactResolver     : Artifact org.ow2.asm:asm:jar:9.3 is present in the local repository, but cached from a remote repository ID that is unavailable in current build context, verifying that is downloadable from [central (https://repo.maven.apache.org/maven2, default, releases)]
2023-12-21T09:00:10.048Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: clean
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] skip non existing resourceDirectory /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/src/main/resources
[INFO] skip non existing resourceDirectory /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/src/main/resources
2023-12-21T09:00:11.035Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: resources
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 3 source files to /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/target/classes
2023-12-21T09:00:11.402Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: compile
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] skip non existing resourceDirectory /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/src/test/resources
2023-12-21T09:00:11.406Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: testResources
[INFO] No sources to compile
2023-12-21T09:00:11.410Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: testCompile
2023-12-21T09:00:11.896Z  WARN 2101 --- [ool-40-thread-2] .m.p.i.DeprecatedCoreExpressionValidator : Parameter 'localRepository' is deprecated core expression; Avoid use of ArtifactRepository type. If you need access to local repository, switch to '${repositorySystemSession}' expression and get LRM from it instead.
[INFO] Tests are skipped.
2023-12-21T09:00:11.910Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: test
[INFO] Building jar: /Users/runner/work/spring-rewrite-commons/spring-rewrite-commons/spring-rewrite-commons-launcher/testcode/maven-projects/parser-recipe-run/target/app-0.0.1-SNAPSHOT.jar
2023-12-21T09:00:12.924Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: jar
[INFO] Replacing main artifact with repackaged archive
2023-12-21T09:00:13.846Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Mojo succeeded: repackage
2023-12-21T09:00:13.846Z  INFO 2101 --- [ool-40-thread-2] o.s.rewrite.parsers.maven.MavenExecutor  : Maven successfully processed project: app
2023-12-21T09:00:13.848Z  INFO 2101 --- [ool-40-thread-2] o.o.maven.MavenMojoProjectParser         : Project [app] Resolving Poms...
2023-12-21T09:00:13.961Z  INFO 2101 --- [ool-40-thread-2] o.o.maven.MavenMojoProjectParser         : Project [app] Parsing source files

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions