Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-28432

Debugging the unit test of `TestHplsqlLocal` in IntelliJ IDEA will throw `OutOfMemoryError`

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      sdk install java 8.0.422-tem
      sdk use java 8.0.422-tem
      sdk install maven
      git clone git@github.com:apache/hive.git
      cd ./hive/
      mvn clean install -DskipTests
      
      • Then I tried to start the unit test of org.apache.hive.hplsql.TestHplsqlLocal directly in the IDE. At this time, IntelliJ IDEA will throw the following exception to terminate the execution of the unit test.
      • The log is as follows. It seems that ASF JIRA does not support markdown's html-like folding blocks.
      • java: java.lang.OutOfMemoryError: Java heap space
        java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
            at com.sun.tools.javac.main.Main.compile(Main.java:559)
            at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:129)
            at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:138)
            at org.jetbrains.jps.javac.JavacMain.compile(JavacMain.java:239)
            at org.jetbrains.jps.javac.ExternalJavacProcess.compile(ExternalJavacProcess.java:189)
            at org.jetbrains.jps.javac.ExternalJavacProcess.access$400(ExternalJavacProcess.java:28)
            at org.jetbrains.jps.javac.ExternalJavacProcess$CompilationRequestsHandler$1.run(ExternalJavacProcess.java:262)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
            at java.lang.Thread.run(Thread.java:750)
        Caused by: java.lang.OutOfMemoryError: Java heap space
            at java.util.Arrays.copyOfRange(Arrays.java:3664)
            at java.lang.String.<init>(String.java:207)
            at java.lang.String.substring(String.java:1969)
            at java.net.URI$Parser.substring(URI.java:2868)
            at java.net.URI$Parser.parse(URI.java:3064)
            at java.net.URI.<init>(URI.java:673)
            at java.net.URI.<init>(URI.java:774)
            at com.intellij.openapi.util.io.FileUtilRt.fileToUri(FileUtilRt.java:1068)
            at org.jetbrains.jps.javac.InputFileObject.<init>(InputFileObject.java:18)
            at org.jetbrains.jps.javac.JpsJavacFileManager$3.fun(JpsJavacFileManager.java:62)
            at org.jetbrains.jps.javac.JpsJavacFileManager$3.fun(JpsJavacFileManager.java:59)
            at org.jetbrains.jps.javac.Iterators$10.next(Iterators.java:235)
            at org.jetbrains.jps.javac.Iterators$6.next(Iterators.java:160)
            at com.sun.tools.javac.api.ClientCodeWrapper.wrapJavaFileObjects(ClientCodeWrapper.java:140)
            at com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager.list(ClientCodeWrapper.java:231)
            at com.sun.tools.javac.jvm.ClassReader.fillIn(ClassReader.java:2803)
            at com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:2446)
            at com.sun.tools.javac.jvm.ClassReader.access$000(ClassReader.java:76)
            at com.sun.tools.javac.jvm.ClassReader$1.complete(ClassReader.java:240)
            at com.sun.tools.javac.code.Symbol.complete(Symbol.java:574)
            at com.sun.tools.javac.code.Symbol$PackageSymbol.flags(Symbol.java:863)
            at com.sun.tools.javac.comp.Attr.visitSelect(Attr.java:3347)
            at com.sun.tools.javac.tree.JCTree$JCFieldAccess.accept(JCTree.java:1897)
            at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:576)
            at com.sun.tools.javac.comp.Attr.visitSelect(Attr.java:3250)
            at com.sun.tools.javac.tree.JCTree$JCFieldAccess.accept(JCTree.java:1897)
            at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:576)
            at com.sun.tools.javac.comp.Attr.attribImportQualifier(Attr.java:410)
            at com.sun.tools.javac.comp.MemberEnter.visitImport(MemberEnter.java:544)
            at com.sun.tools.javac.tree.JCTree$JCImport.accept(JCTree.java:571)
            at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:437)
            at com.sun.tools.javac.comp.MemberEnter.memberEnter(MemberEnter.java:449) 
        
      • This is not reasonable behavior from my perspective. Earlier investigations are at https://github.com/apache/hive/pull/5375 and https://github.com/apache/logging-log4j2/issues/2794 .

      Attachments

        Activity

          People

            Unassigned Unassigned
            linghengqian Qiheng He
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: