panbingkun commented on PR #46288: URL: https://github.com/apache/spark/pull/46288#issuecomment-2095480361
@dongjoon-hyun @LuciferYang Based on the detailed explanation of https://github.com/scala/bug/issues/12994, <img width="923" alt="image" src="https://github.com/apache/spark/assets/15246973/a82ecc14-a736-4895-8d40-706d14dfd9c5"> and `double-check` by `debug jline` on local env. The verification process is as follows: 1.Based on this pr upgrade (the version of `scala` is `2.13.14` , the version of `jline` is `3.25.1`) compile spark by commands: ``` ./build/mvn -Pyarn -Pkubernetes -Pvolcano -Phive -Phive-thriftserver -Phadoop-cloud -Pspark-ganglia-lgpl -Pkinesis-asl clean package -DskipTests ``` <img width="664" alt="image" src="https://github.com/apache/spark/assets/15246973/fa7275c3-818e-4665-ad6a-4bcd263d8fe6"> 2.When open `spark-shell` with `the debug mode` on local , and we will see the following run `thread stack` ``` export SPARK_SUBMIT_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8888 ``` 3.The code logic of `org.jline:jline:3.25.1` is as follows: https://github.com/jline/jline3/blob/jline-parent-3.25.1/terminal/src/main/java/org/jline/terminal/TerminalBuilder.java#L654-L675 <img width="721" alt="image" src="https://github.com/apache/spark/assets/15246973/f1be4fb5-1541-478d-bb92-b4b2ce7e20e1"> When loading `org.jline.terminal.ffm`, it will automatically `skip` because of the exception ``` java.lang.UnsupportedClassVersionError: org/jline/terminal/impl/ffm/FfmTerminalProvider has been compiled by a more recent version of the Java Runtime (class file version 65.65535), this version of the Java Runtime only recognizes class file versions up to 61.0 ``` so we can `completely ignore` it in the maven plugin `maven-enforcer-plugin#enforceBytecodeVersion`, because it will automatically `skip` because of `loading failure` in the lower version of JDK (JDK < 21). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org