Updating lib from hibernate 6.2.8 to 6.3.0 or 6.3.1 cause stackoverflow issue on compile
it is working with all other previous version of hibernate before 6.3.0
here a simple test case just run
PS : we are using java 21
we have this issue
[DEBUG] incrementalBuildHelper#beforeRebuildExecution [INFO] Compiling 15 source files with javac [forked debug optimize deprecation release 21] to target/classes [DEBUG] incrementalBuildHelper#afterRebuildExecution [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] java.lang.StackOverflowError at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:140) at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144) at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133) at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939) 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 org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:159) at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144) at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133) at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939) 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 org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:159) at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144) at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
Just to mention we raised several times this issue, and often on a new release it happens again
Activity
Show:
leclerc cyril October 2, 2023 at 9:15 AM
So we noticed that this error ws already with previous migration and each time you made a fix, it is related to generic objects
Updating lib from hibernate 6.2.8 to 6.3.0 or 6.3.1 cause stackoverflow issue on compile
it is working with all other previous version of hibernate before 6.3.0
here a simple test case just run
PS : we are using java 21
we have this issue
[DEBUG] incrementalBuildHelper#beforeRebuildExecution
[INFO] Compiling 15 source files with javac [forked debug optimize deprecation release 21] to target/classes
[DEBUG] incrementalBuildHelper#afterRebuildExecution
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] java.lang.StackOverflowError
at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:140)
at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144)
at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939)
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 org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:159)
at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144)
at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939)
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 org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:159)
at org.hibernate.jpamodelgen.util.TypeUtils.extractClosestRealType(TypeUtils.java:144)
at org.hibernate.jpamodelgen.util.TypeUtils.lambda$extractClosestRealType$0(TypeUtils.java:158)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
Just to mention we raised several times this issue, and often on a new release it happens again