Hey everyone, I have been doing some testing with Java 20 and Solr, trying to test out some of the vector stuff.
However, when starting Solr with the Java security manager (enabled by default), I get the following error: 2023-07-07 21:38:56.212 DEBUG (main) [] o.e.j.x.XmlConfiguration args=[/var/folders/r7/mh0vdwrx7fs6p1rlgfhxzvyc0000gn/T/start_1320566789171896757.properties, /Users/houstonputman/dev/oss/solr/solr/main/solr/packaging/build/dev/server/etc/jetty.xml, /Users/houstonputman/dev/oss/solr/solr/main/solr/packaging/build/dev/server/etc/jetty- gzip.xml, /Users/houstonputman/dev/oss/solr/solr/main/solr/packaging/build/dev/server/etc/jetty- http.xml, /Users/houstonputman/dev/oss/solr/solr/main/solr/packaging/build/dev/server/etc/jetty- requestlog.xml] java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:119) at java.base/java.lang.reflect.Method.invoke(Method.java:578) at org.eclipse.jetty.start.Main.invokeMain(Main.java:229) at org.eclipse.jetty.start.Main.start(Main.java:528) at org.eclipse.jetty.start.Main.main(Main.java:76) Caused by: java.security.AccessControlException: access denied ("java.io.FilePermission" "/" "read") at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:488) at java.base/java.security.AccessController.checkPermission(AccessController.java:1071) at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:411) at java.base/java.lang.SecurityManager.checkRead(SecurityManager.java:742) at java.base/sun.nio.fs.UnixPath.checkRead(UnixPath.java:788) at java.base/sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:448) at java.base/sun.nio.fs.UnixPath.toRealPath(UnixPath.java:912) at org.eclipse.jetty.util.resource.PathResource.<init>(PathResource.java:226) at org.eclipse.jetty.util.resource.Resource.newResource(Resource.java:204) at org.eclipse.jetty.util.resource.Resource.newResource(Resource.java:178) at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1831) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ... 4 more This seems to be happening when loading the temporary properties file that start.jar creates. Even though, we have a permission that allows reading from the java temp directory. This happens all the way back with Solr 9.1 (Jetty 9.x), and it works with JDK 11 and JDK 17. So it must just be an issue with Java 20 and Jetty. I'd love to have this fixed for the Solr 9.3 release, but I'm stuck after getting this far. Please let me know if anyone else has run into this, and any possible ways forward. - Houston