Thank you for the quick response. I just spent the last eight hours using
my application and the Segmentation Fault didn't happen again. I didn't
have the -Dprism.verbose=true set during the run. I also didn't find
a hs_err*.log from this morning's crash. I can turn on verbose tomorrow
morning and see if it happens again.

On Mon, Nov 2, 2026 at 12:06 PM Kevin Rushforth <[email protected]>
wrote:

> I don't think anything you are doing in your application could be
> causing this. The change in JavaFX 27 that is impacting your application
> is that the Metal graphics pipeline is now the default. To temporarily
> switch back to OpenGL, run your app with:
>
> java -Dprism.order=es2
>
> If you are able to run and provide us more information, it would be
> helpful:
>
> java -Dprism.verbose=true ...
>
> This will log some additional information about the graphics adapter.
> Also, is there an hs_err*.log file?
>
> -- Kevin
>
>
> On 11/2/2026 9:01 AM, Chad Preisler wrote:
> > Hello,
> >
> > I recently updated my application to use JavaFX 27 and Java 27. When
> > running on a Mac today, I got a segmentation fault. I've been using this
> > application for years, and this is the first time I've had it happen. If
> > this is something I'm doing in my application to cause this issue I'm not
> > sure how to fix it.
> >
> > Below is additional information about the machine and JDK used. If there
> > are any additional logs I can provide to troubleshoot this let me know.
> >
> > This was running on maxOS Sequoia 15.7.7 on an Apple M3 Pro.
> >
> > Here is the information I got from the segmentation fault.
> >
> > 💣 Program crashed: Bad pointer dereference at 0x0000000000000010
> > Thread 17 "Java: QuantumRenderer-0" crashed:
> > 0 0x000000019937d820 objc_msgSend + 32 in libobjc.A.dylib
> > 1 0x0000000101e032c0
> Java_com_sun_prism_mtl_MTLContext_nUpdateRenderTarget
> > + 36 in libprism_mtl.dylib
> > 2 0x000000014588af68
> > 3 0x00000001457e6070
> > Backtrace took 15.33s
> > /ktquery-macos_arm64/bin/ktquery: line 4: 68847 Segmentation fault: 11
> >   $DIR/java $JLINK_VM_OPTIONS -m com.kafkasource.visualkafka/
> > com.kafkasource.visualkafka.App "$@"
> > Saving session...
> > ...copying shared history...
> > ...saving history...truncating history files...
> > ...completed.
> >
> > Here is the JVM I'm using.
> >
> > bin % java -version
> > openjdk version "27" 2026-09-15
> > OpenJDK Runtime Environment Homebrew (build 27)
> > OpenJDK 64-Bit Server VM Homebrew (build 27, mixed mode, sharing)
> >
> > Here is the jlink report of the modules pulled in.
> >
> > INFO] --- javafx:0.0.8:jlink (default-cli) @ visualkafka ---
> >
> > atlantafx.base
> >
> file:///Users/preisc2/.m2/repository/io/github/mkpaz/atlantafx-base/2.1.0/atlantafx-base-2.1.0.jar
> > ch.qos.logback.classic
> >
> file:///Users/preisc2/.m2/repository/ch/qos/logback/logback-classic/1.5.18/logback-classic-1.5.18.jar
> > ch.qos.logback.core
> >
> file:///Users/preisc2/.m2/repository/ch/qos/logback/logback-core/1.5.18/logback-core-1.5.18.jar
> > com.fasterxml.jackson.annotation
> >
> file:///Users/preisc2/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.19.0/jackson-annotations-2.19.0.jar
> > com.fasterxml.jackson.core
> >
> file:///Users/preisc2/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.19.0/jackson-core-2.19.0.jar
> > com.fasterxml.jackson.databind
> >
> file:///Users/preisc2/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.19.0/jackson-databind-2.19.0.jar
> > com.fasterxml.jackson.datatype.jsr310
> >
> file:///Users/preisc2/.m2/repository/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.19.0/jackson-datatype-jsr310-2.19.0.jar
> > com.kafkasource.visualkafka
> > file:///Users/preisc2/temp/visualkafka/visualkafka-ui/target/classes/
> > com.kafkasource.visualkafka.fx
> >
> file:///Users/preisc2/.m2/repository/com/kafkasource/visualkafka/visualkafka-fx/1.0-SNAPSHOT/visualkafka-fx-1.0-SNAPSHOT.jar
> > com.kafkasource.visualkafka.lib
> >
> file:///Users/preisc2/.m2/repository/com/kafkasource/visualkafka/visualkafka-lib/1.0-SNAPSHOT/visualkafka-lib-1.0-SNAPSHOT.jar
> > java.base
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.base.jmod
> > java.datatransfer
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.datatransfer.jmod
> > java.desktop
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.desktop.jmod
> > java.logging
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.logging.jmod
> > java.management
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.management.jmod
> > java.naming
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.naming.jmod
> > java.net.http
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.net.http.jmod
> > java.prefs
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.prefs.jmod
> > java.scripting
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.scripting.jmod
> > java.security.jgss
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.security.jgss.jmod
> > java.security.sasl
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.security.sasl.jmod
> > java.sql
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.sql.jmod
> > java.transaction.xa
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.transaction.xa.jmod
> > java.xml
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/java.xml.jmod
> > javafx.base
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-base/27/javafx-base-27-mac-aarch64.jar
> > javafx.controls
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-controls/27/javafx-controls-27-mac-aarch64.jar
> > javafx.fxml
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-fxml/27/javafx-fxml-27-mac-aarch64.jar
> > javafx.graphics
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-graphics/27/javafx-graphics-27-mac-aarch64.jar
> > javafx.media
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-media/27/javafx-media-27-mac-aarch64.jar
> > javafx.swing
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-swing/27/javafx-swing-27-mac-aarch64.jar
> > javafx.web
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/javafx-web/27/javafx-web-27-mac-aarch64.jar
> > jdk.jsobject
> >
> file:///Users/preisc2/.m2/repository/org/openjfx/jdk-jsobject/27/jdk-jsobject-27-mac-aarch64.jar
> > jdk.management
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/jdk.management.jmod
> > jdk.unsupported
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/jdk.unsupported.jmod
> > jdk.unsupported.desktop
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/jdk.unsupported.desktop.jmod
> > jdk.xml.dom
> >
> file:///opt/homebrew/Cellar/openjdk/27/libexec/openjdk.jdk/Contents/Home/jmods/jdk.xml.dom.jmod
> > org.apache.commons.codec
> >
> file:///Users/preisc2/.m2/repository/commons-codec/commons-codec/1.18.0/commons-codec-1.18.0.jar
> > org.apache.commons.compress
> >
> file:///Users/preisc2/.m2/repository/org/apache/commons/commons-compress/1.27.1/commons-compress-1.27.1.jar
> > org.apache.commons.csv
> >
> file:///Users/preisc2/.m2/repository/org/apache/commons/commons-csv/1.14.0/commons-csv-1.14.0.jar
> > org.apache.commons.io
> >
> file:///Users/preisc2/.m2/repository/commons-io/commons-io/2.18.0/commons-io-2.18.0.jar
> > org.apache.commons.jexl3
> >
> file:///Users/preisc2/.m2/repository/org/apache/commons/commons-jexl3/3.6.2/commons-jexl3-3.6.2.jar
> > org.apache.commons.lang3
> >
> file:///Users/preisc2/.m2/repository/org/apache/commons/commons-lang3/3.17.0/commons-lang3-3.17.0.jar
> > org.apache.commons.logging
> >
> file:///Users/preisc2/.m2/repository/commons-logging/commons-logging/1.3.5/commons-logging-1.3.5.jar
> > org.jfree.chart
> >
> file:///Users/preisc2/.m2/repository/org/jfree/jfreechart/2.0.0-SNAPSHOT/jfreechart-2.0.0-SNAPSHOT.jar
> > org.jfree.chart.fx
> >
> file:///Users/preisc2/.m2/repository/org/jfree/org.jfree.chart.fx/2.0.4-SNAPSHOT/org.jfree.chart.fx-2.0.4-SNAPSHOT.jar
> > org.jfree.fxgraphics2d
> >
> file:///Users/preisc2/.m2/repository/org/jfree/org.jfree.fxgraphics2d/2.1.6-SNAPSHOT/org.jfree.fxgraphics2d-2.1.6-SNAPSHOT.jar
> > org.jfxmodules.avro
> >
> file:///Users/preisc2/.m2/repository/org/jfxmodules/avro-module/1.12.0-SNAPSHOT/avro-module-1.12.0-SNAPSHOT.jar
> > org.jfxmodules.jose4j
> >
> file:///Users/preisc2/.m2/repository/org/jfxmodules/jose4j-module/0.9.5-SNAPSHOT/jose4j-module-0.9.5-SNAPSHOT.jar
> > org.jfxmodules.kafka.clients
> >
> file:///Users/preisc2/.m2/repository/org/jfxmodules/kafka-clients-module/4.1.1-SNAPSHOT/kafka-clients-module-4.1.1-SNAPSHOT.jar
> > org.jfxmodules.mods
> >
> file:///Users/preisc2/.m2/repository/org/jfxmodules/mods/1.1-SNAPSHOT/mods-1.1-SNAPSHOT.jar
> > org.slf4j
> >
> file:///Users/preisc2/.m2/repository/org/slf4j/slf4j-api/2.0.17/slf4j-api-2.0.17.jar
> >
> >
> > Providers:
> >
> >    com.fasterxml.jackson.core provides
> > com.fasterxml.jackson.core.JsonFactory not used by any observable module
> >    com.fasterxml.jackson.databind provides
> > com.fasterxml.jackson.core.ObjectCodec used by com.fasterxml.jackson.core
> >    com.fasterxml.jackson.datatype.jsr310 provides
> > com.fasterxml.jackson.databind.Module used by
> com.fasterxml.jackson.databind
> >    java.desktop provides java.net.ContentHandlerFactory used by java.base
> >    java.base provides java.nio.file.spi.FileSystemProvider used by
> java.base
> >    java.naming provides java.security.Provider used by java.base
> >    java.security.jgss provides java.security.Provider used by java.base
> >    java.security.sasl provides java.security.Provider used by java.base
> >    java.desktop provides javax.print.PrintServiceLookup used by
> java.desktop
> >    java.desktop provides javax.print.StreamPrintServiceFactory used by
> > java.desktop
> >    org.apache.commons.jexl3 provides javax.script.ScriptEngineFactory
> used
> > by java.scripting
> >    java.management provides javax.security.auth.spi.LoginModule used by
> > java.base
> >    java.desktop provides javax.sound.midi.spi.MidiDeviceProvider used by
> > java.desktop
> >    java.desktop provides javax.sound.midi.spi.MidiFileReader used by
> > java.desktop
> >    java.desktop provides javax.sound.midi.spi.MidiFileWriter used by
> > java.desktop
> >    java.desktop provides javax.sound.midi.spi.SoundbankReader used by
> > java.desktop
> >    java.desktop provides javax.sound.sampled.spi.AudioFileReader used by
> > java.desktop
> >    java.desktop provides javax.sound.sampled.spi.AudioFileWriter used by
> > java.desktop
> >    java.desktop provides javax.sound.sampled.spi.FormatConversionProvider
> > used by java.desktop
> >    java.desktop provides javax.sound.sampled.spi.MixerProvider used by
> > java.desktop
> >    java.logging provides jdk.internal.logger.DefaultLoggerFinder used by
> > java.base
> >    ch.qos.logback.classic provides org.slf4j.spi.SLF4JServiceProvider
> used
> > by org.slf4j
> >    java.desktop provides sun.datatransfer.DesktopDatatransferService
> used by
> > java.datatransfer
> >    jdk.management provides sun.management.spi.PlatformMBeanProvider used
> by
> > java.management
> >    jdk.unsupported.desktop provides sun.swing.InteropProvider used by
> > java.desktop
> >
> > Warning: The 0 argument for --compress is deprecated and may be removed
> in
> > a future release
> >
> > [INFO] Building zip:
> >
> /Users/preisc2/temp/visualkafka/visualkafka-ui/target/ktquery-macos_arm64.zip
>
>

Reply via email to