Page 1 of 1

Filebot crashes on latest Fedora

Posted: 18 Sep 2021, 10:54
by chase29
Hello,

I wanted to start using FB, luckily I decided to try before I buy, because I cannot even open a folder or a file with it. It immediately coredumps after clicking on "file" or "folder"

Code: Select all

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f1f59e210cc, pid=38088, tid=38149
#
# JRE version: OpenJDK Runtime Environment (16.0.2+7) (build 16.0.2+7-67)
# Java VM: OpenJDK 64-Bit Server VM (16.0.2+7-67, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# C  0x00007f1f59e210cc
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h" (or dumping to /mnt/Cinema_I/Scripttests/core.38088)
#
# An error report file with more information is saved as:
# /mnt/Cinema_I/Scripttests/hs_err_pid38088.log
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
/usr/bin/filebot: line 20: 38088 Aborted                 (core dumped) "$FILEBOT_HOME/jre/bin/java" -Dapplication.deployment=rpm -Dnet.filebot.AcoustID.fpcalc="$LIBRARY_PATH/fpcalc" --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.function=ALL-UNNAMED --add-opens=java.base/java.util.regex=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/java.nio.file=ALL-UNNAMED --add-opens=java.base/java.nio.file.attribute=ALL-UNNAMED --add-opens=java.base/java.nio.channels=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED --add-opens=java.base/java.time.chrono=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.base/sun.nio.fs=ALL-UNNAMED --add-opens=java.logging/java.util.logging=ALL-UNNAMED --add-opens=java.desktop/java.awt=ALL-UNNAMED --add-opens=java.desktop/sun.awt=ALL-UNNAMED --add-opens=java.desktop/sun.swing=ALL-UNNAMED --add-opens=java.desktop/javax.swing.text.html=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED -XX:+DisableAttachMechanism -Djna.boot.library.path="$LIBRARY_PATH" -Djna.library.path="$LIBRARY_PATH" -Djava.library.path="$LIBRARY_PATH" -Dapplication.dir="$APP_DATA" -Dapplication.cache="$APP_DATA/cache" -Djava.io.tmpdir="$APP_DATA/tmp" -Dfile.encoding="UTF-8" -Dsun.jnu.encoding="UTF-8" -Dawt.useSystemAAFontSettings=on -Dprism.order=sw -Dnet.filebot.theme=Darcula -DuseGVFS=true -Dnet.filebot.gio.GVFS="$XDG_RUNTIME_DIR/gvfs" $JAVA_OPTS $FILEBOT_OPTS -jar "$FILEBOT_HOME/jar/filebot.jar" "$@"
Although I plan to use it mainly from cli I wanted to try some things first and I also think that the feature should work
Please tell me which additional information you need, logs etc.

These are the java packages installed currently

Code: Select all

java-11-openjdk-headless.x86_64                                    1:11.0.12.0.7-4.fc34                             @updates 
javapackages-filesystem.noarch                                     5.3.0-15.fc34                                    @anaconda

Thanks

Re: Filebot crashes on latest Fedora

Posted: 18 Sep 2021, 12:04
by rednoah
1.
You could use docker or snap to easily bypass all kinds of compatibility issues:
https://www.filebot.net/linux/docker.html


2.
As for the root cause of the crash, we may or may not find hints in the error report file:

Code: Select all

# An error report file with more information is saved as:
# /mnt/Cinema_I/Scripttests/hs_err_pid38088.log


3.
As for general workarounds:


A.
If it crashes in native code upon showing a FileDialog, try a different FileDialog implementation if the native GtkFileChooserDialog doesn't work:

Code: Select all

filebot -script fn:properties --def net.filebot.UserFiles.fileChooser=Swing
:idea: Alternatively, you can also use drag-n-drop to load files to bypass FileDialog related native code altogether.


B.
If the bundled generic Linux java doesn't work for some reason, then try the *-portable.tar.xz generic Linux package instead of the *.rpm package. The former relies on your system java, the latter bundles its own generic Linux binaries. One might work better than the other.
https://www.filebot.net/download.html

Re: Filebot crashes on latest Fedora

Posted: 18 Sep 2021, 15:49
by chase29
Hello,

thanks for your answers.

Here is the log
https://pastebin.com/J5UP8TrB

as to the dockerfile, nah :) I don't pull up an extra container for this

The Swing file chooser seems to work. Will also try the portable version package, thanks.

One other small question though, don't think there has to be a complete thread opened for it. In the format expressions there are some integers, but I do not see any toString implemented there, so the modifying string functions cannot work on them. Does this mean I have to use groovy script for simple modifications I want to do to integers of the format expressions?

Many thanks

Re: Filebot crashes on latest Fedora

Posted: 18 Sep 2021, 16:06
by rednoah
1.
Yep, the error report confirms that it crashes somewhere in the GTK native code:

Code: Select all

j  com.sun.glass.ui.gtk.GtkCommonDialogs._showFolderChooser(JLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;+0 javafx.graphics
...
j  javafx.stage.DirectoryChooser.showDialog(Ljavafx/stage/Window;)Ljava/io/File;+23 javafx.graphics
...
:arrow: No clue. Could be anything. GTK version incompatibility. Some library dependency incompatibility. IDK. Best to switch to a different FileDialog implementation (better yet; use drag-n-drop instead) and leave it at that.



2.
chase29 wrote: 18 Sep 2021, 15:49 One other small question though, don't think there has to be a complete thread opened for it. In the format expressions there are some integers, but I do not see any toString implemented there, so the modifying string functions cannot work on them. Does this mean I have to use groovy script for simple modifications I want to do to integers of the format expressions?
Object.toString() is implemented for everything by default. Anything within {...} is a Groovy script, even if it's just a single letter, i.e. variable reference.


:arrow: What exactly are you trying to do? Please create a new topic and make sure to include the specific use case you have in mind for context:
viewforum.php?f=5