jarjava -Xmx384m -jar komga-0.85.0.jarKomga is unable to start, A fatal error has been detected by the Java Runtime Environment.
Komga to start successfully
2021-03-30 11:51:06.842 INFO 3624 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2021-03-30 11:51:08.094 INFO 3624 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGILL (0x4) at pc=0x95a00acc, pid=3624, tid=3625
#
# JRE version: OpenJDK Runtime Environment (11.0.9.1+1) (build 11.0.9.1+1-post-Debian-1deb10u2)
# Java VM: OpenJDK Server VM (11.0.9.1+1-post-Debian-1deb10u2, mixed mode, serial gc, linux-)
# Problematic frame:
# C [webp-imageio-unknown-e015c1cd-cdc1-41c6-9725-209ea8a07495-libwebp-imageio.so+0x8acc]
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /opt/komga/hs_err_pid3624.log
#
# If you would like to submit a bug report, please visit:
# https://bugs.debian.org/openjdk-11
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted
$ java -Xmx384m -jar komga-0.85.0.jar
____ __.
| |/ _|____ _____ _________
| < / _ \ / \ / ___\__ \
| | ( <_> ) Y Y \/ /_/ > __ \_
|____|__ \____/|__|_| /\___ (____ /
\/ \//_____/ \/
Version: 0.85.0
2021-03-30 11:50:14.480 INFO 3624 --- [ main] org.gotson.komga.ApplicationKt : Starting ApplicationKt using Java 11.0.9.1 on code-server with PID 3624 (/opt/komga/komga-0.85.0.jar started by coder in /opt/komga)
2021-03-30 11:50:14.574 INFO 3624 --- [ main] org.gotson.komga.ApplicationKt : No active profile set, falling back to default profiles: default
2021-03-30 11:50:44.053 INFO 3624 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@a68df9' of type [org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-03-30 11:50:44.138 INFO 3624 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'methodSecurityMetadataSource' of type [org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-03-30 11:50:49.250 INFO 3624 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2021-03-30 11:50:49.409 INFO 3624 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2021-03-30 11:50:49.410 INFO 3624 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.43]
2021-03-30 11:50:50.052 INFO 3624 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2021-03-30 11:50:50.054 INFO 3624 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 34600 ms
2021-03-30 11:50:54.356 INFO 3624 --- [ main] o.s.b.a.e.web.ServletEndpointRegistrar : Registered '/actuator/jolokia' to jolokia-actuator-endpoint
2021-03-30 11:50:54.919 INFO 3624 --- [ main] io.hawt.HawtioContextListener : Initialising hawtio services
2021-03-30 11:50:55.479 INFO 3624 --- [ main] io.hawt.system.ConfigManager : Configuration will be discovered via system properties
2021-03-30 11:50:55.489 INFO 3624 --- [ main] io.hawt.jmx.JmxTreeWatcher : Welcome to Hawtio 2.13.0
2021-03-30 11:50:55.606 INFO 3624 --- [ main] i.h.w.auth.AuthenticationConfiguration : Starting hawtio authentication filter, JAAS realm: "karaf" authorized role(s): "admin,manager,viewer" role principal classes: ""
2021-03-30 11:50:58.059 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221000: live Message Broker is starting with configuration Broker Configuration (clustered=false,journalDirectory=/home/coder/.komga/artemis/journal,bindingsDirectory=/home/coder/.komga/artemis/bindings,largeMessagesDirectory=/home/coder/.komga/artemis/largemessages,pagingDirectory=/home/coder/.komga/artemis/paging)
2021-03-30 11:50:58.387 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221013: Using NIO Journal
2021-03-30 11:50:59.055 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221057: Global Max Size is being adjusted to 1/2 of the JVM max size (-Xmx). being defined as 194,641,920
2021-03-30 11:50:59.180 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221043: Protocol module found: [artemis-server]. Adding protocol support for: CORE
2021-03-30 11:50:59.470 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601138: User anonymous@unknown is getting notification info on target resource: null []
2021-03-30 11:50:59.476 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.ActiveMQServerControlImpl@4ccef7 []
2021-03-30 11:50:59.478 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601138: User anonymous@unknown is getting notification info on target resource: ActiveMQServerImpl::serverUUID=274b8d5b-913c-11eb-8a42-0242ac110003 []
2021-03-30 11:50:59.838 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221034: Waiting indefinitely to obtain live lock
2021-03-30 11:50:59.840 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221035: Live Server Obtained live lock
2021-03-30 11:51:00.534 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.AddressControlImpl@1a3f4de []
2021-03-30 11:51:00.545 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.AddressControlImpl@1d2e270 []
2021-03-30 11:51:00.550 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.AddressControlImpl@195105b []
2021-03-30 11:51:00.554 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.AddressControlImpl@13e19b3 []
2021-03-30 11:51:00.985 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.QueueControlImpl@13a7ef5 []
2021-03-30 11:51:01.025 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.QueueControlImpl@851ce1 []
2021-03-30 11:51:01.059 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.QueueControlImpl@f6fd7f []
2021-03-30 11:51:02.157 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221080: Deploying address DLQ supporting [ANYCAST]
2021-03-30 11:51:02.198 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221003: Deploying ANYCAST queue DLQ on address DLQ
2021-03-30 11:51:02.274 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221080: Deploying address ExpiryQueue supporting [ANYCAST]
2021-03-30 11:51:02.276 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221003: Deploying ANYCAST queue ExpiryQueue on address ExpiryQueue
2021-03-30 11:51:02.279 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221003: Deploying ANYCAST queue tasks.background on address tasks.background
2021-03-30 11:51:02.712 INFO 3624 --- [ main] org.apache.activemq.audit.base : AMQ601019: User anonymous@unknown is getting mbean info on target resource: org.apache.activemq.artemis.core.management.impl.AcceptorControlImpl@95416d []
2021-03-30 11:51:02.913 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221007: Server is now live
2021-03-30 11:51:02.914 INFO 3624 --- [ main] org.apache.activemq.artemis.core.server : AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.15.0 [localhost, nodeID=274b8d5b-913c-11eb-8a42-0242ac110003]
2021-03-30 11:51:06.842 INFO 3624 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2021-03-30 11:51:08.094 INFO 3624 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGILL (0x4) at pc=0x95a00acc, pid=3624, tid=3625
#
# JRE version: OpenJDK Runtime Environment (11.0.9.1+1) (build 11.0.9.1+1-post-Debian-1deb10u2)
# Java VM: OpenJDK Server VM (11.0.9.1+1-post-Debian-1deb10u2, mixed mode, serial gc, linux-)
# Problematic frame:
# C [webp-imageio-unknown-e015c1cd-cdc1-41c6-9725-209ea8a07495-libwebp-imageio.so+0x8acc]
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /opt/komga/hs_err_pid3624.log
#
# If you would like to submit a bug report, please visit:
# https://bugs.debian.org/openjdk-11
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted
coder@code-server:/opt/komga$ uname -a
Linux code-server 4.14.22-armada-18.09.3 #1 SMP Mon Dec 21 02:42:49 UTC 2020 ga-18.09.3 Build-24 armv7l GNU/Linux
coder@code-server:/opt/komga$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
Can you try with more ram in the Xmx?
Hi @gotson, does not relate to memory setting.
Meaning you tried with more and it still crash?
Indeed, tried with various memory settings, up to 1GB. This setting has no effect and still crashes with the same error.
Can you do a uname -m?
$ uname -m
armv7l
Like this I would say the webp native library for armv7 is not compatible with armv7l.
Any chance you could run it in docker to give a try?
Already tried. Since docker is running on armv7l platform as well I am getting the same issue :/
I'm not sure I can fix the root cause, cross compiling for various hardware is quite difficult, but I could try to add a configuration flag to disable the loading of the native library, and fallback to the pure Java version.
Before I try though, given there is also the sqlite library which is native, could you try to open the jar, delete the webp jars inside (there should be 2), and try again with that modified jar?
Because if sqlite cannot run on your hardware there's nothing I will be able to do.
Probably related : https://github.com/gotson/komga/issues/398
Just a note, the device I am trying to set this up, is WD My Cloud EX2 Ultra NAS. On NAS systems is armv7l is pretty common. Would be great if such architecture was supported but definitely undestand it is not easy to support multiple architectures.
@gotson, I am not sure how to modify JAR file, unfortunatelly all my attempts were not successful.
Btw. sqlite normally works on this NAS (installed via apt-get).
I've removed 2 JAR files from komga.jar (webp-imageio-0.2.0.jar, webp-imageio-decoder-plugin-0.2.jar) but unfortunatelly not able to run it since I am getting Error: Invalid or corrupt jarfile error message..
I've seen #398 before I've filed this bug, but I do not particullary see any "sqlite errors" in my run log file..
I'll try to provide a modified jar for you soon so you can give it a try.
I've just tried with jar -xvf komga.jar + delete webp* + jar -cvf komga-patched.jar * but now I am getting error no main manifest attribute, in komga-patched.jar. Seems it is not that trivial for me.
Thank you for your support!
In fact I get this problem also when trying to open komga on Windows and I get that fatal error.
Why is this problem? Because I wanted to try the program but I can't. I appreciate your help please
In fact I get this problem also when trying to open komga on Windows and I get that fatal error.
Why is this problem? Because I wanted to try the program but I can't. I appreciate your help please
Please open a separate issue and provide all the required information.
Just a note, the device I am trying to set this up, is WD My Cloud EX2 Ultra NAS. On NAS systems is armv7l is pretty common. Would be great if such architecture was supported but definitely undestand it is not easy to support multiple architectures.
I see that they have their own OS, MyCloud OS. But you mentioned Debian. Did you reinstall Debian on that? Or is MyCloud based on Debian?
I am running multiple dockers on this machine, each "service" sandboxed. Base system is Debian as mentioned above.
I am running multiple dockers on this machine, each "service" sandboxed. Base system is Debian as mentioned above.
The webpage you pointed out does not mention Debian, it mentions MyCloud OS…
MyCloud OS = BusyBox Linux. Which runs Docker Engine, in my case Docker v 19.03.8. Within docker I am able to run multiple instances, each instance can be based on different linux OS. In my case I am using Debian 10.
So you are running the jar within a container, container that is running in docker on mycloud os?
What I've tried were 2 scenarios:
Seems the issue is with the architecture armv7l since both cases are failing in the same way..
MyCloud OS5 is BusyBox Linux distribution with WebUI built on top of that where Docker engine is installed and enabling usage of different "VMs" using custom Linux OSes.
@robco Does this still happen with the newly released 0.88.1, which replaces the native webp binaries with optimized Java implementations?
@robco Does this still happen with the newly released 0.88.1, which replaces the native webp binaries with optimized Java implementations?
It does not replace the native lib, it replaces a java lib with another java lib.
@robco could you try with this jar ? It will not load the native webp library automatically.
If that works fine, I will do a change in my fork of the native webp library wrapper to handle armv7l differently than armv7
@mihailim, same issue with 0.88.1.
@gotson, seems I do not have access to this file in Google Drive. Just sent you a request for access. Thank you.
Hi @gotson, seems your build made Komga to start, spin Tomcat and hook to my defined port (80) properly.
But as soon as I try to open the komga URL for the first time it crashes with error:
my run command: sudo java -jar komga-0.88.1-fix.jar --server.port=80
2021-04-27 08:10:56.968 INFO 25631 --- [ main] o.s.s.c.ThreadPoolTaskScheduler : Initializing ExecutorService 'taskScheduler'
2021-04-27 08:10:59.541 INFO 25631 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 80 (http) with context path ''
2021-04-27 08:11:01.778 INFO 25631 --- [10003-24899729)] org.apache.activemq.audit.base : AMQ601267: User anonymous@invm:0 is creating a core session on target resource ActiveMQServerImpl::serverUUID=250d8585-a71f-11eb-a49e-0242ac110003 [with parameters: [576454fe-a71f-11eb-a49e-0242ac110003, null, ****, 102400, RemotingConnectionImpl [ID=56d92bfb-a71f-11eb-a49e-0242ac110003, clientID=null, nodeID=250d8585-a71f-11eb-a49e-0242ac110003, transportConnection=InVMConnection [serverID=0, id=56d92bfb-a71f-11eb-a49e-0242ac110003]], false, false, false, false, null, org.apache.activemq.artemis.core.protocol.core.impl.CoreSessionCallback@dad3c2, true, OperationContextImpl [24996820] [minimalStore=9223372036854775807, storeLineUp=0, stored=0, minimalReplicated=9223372036854775807, replicationLineUp=0, replicated=0, paged=0, minimalPage=9223372036854775807, pageLineUp=0, errorCode=-1, errorMessage=null, executorsPending=0, executor=OrderedExecutor(tasks=[])], anonymous@invm:0]]
2021-04-27 08:11:02.285 INFO 25631 --- [10003-24899729)] org.apache.activemq.audit.base : AMQ601267: User anonymous@invm:0 is creating a core session on target resource ActiveMQServerImpl::serverUUID=250d8585-a71f-11eb-a49e-0242ac110003 [with parameters: [57b88f7f-a71f-11eb-a49e-0242ac110003, null, ****, 102400, RemotingConnectionImpl [ID=56d92bfb-a71f-11eb-a49e-0242ac110003, clientID=null, nodeID=250d8585-a71f-11eb-a49e-0242ac110003, transportConnection=InVMConnection [serverID=0, id=56d92bfb-a71f-11eb-a49e-0242ac110003]], false, false, false, false, null, org.apache.activemq.artemis.core.protocol.core.impl.CoreSessionCallback@951d64, true, OperationContextImpl [3544700] [minimalStore=9223372036854775807, storeLineUp=0, stored=0, minimalReplicated=9223372036854775807, replicationLineUp=0, replicated=0, paged=0, minimalPage=9223372036854775807, pageLineUp=0, errorCode=-1, errorMessage=null, executorsPending=0, executor=OrderedExecutor(tasks=[])], anonymous@invm:0]]
2021-04-27 08:11:03.418 INFO 25631 --- [Impl$6@10a251b)] org.apache.activemq.audit.base : AMQ601265: User null@invm:0 is creating a core consumer on target resource ServerSessionImpl(jms-session=*N/A*) [with parameters: [0, tasks.background, type = 'task', 0, false, true, null]]
2021-04-27 08:11:03.446 INFO 25631 --- [ main] org.gotson.komga.ApplicationKt : Started ApplicationKt in 138.604 seconds (JVM running for 146.169)
2021-04-27 08:14:32.732 INFO 25631 --- [p-nio-80-exec-1] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header
Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x020x000x010x000x010xfc0x030x030xaa0xa8#G0xe40xe40xaad0xbd0x02i0xc1]. HTTP method names must be tokens
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:417) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:261) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.43.jar!/:9.0.43]
at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
HTTP method names must be tokens
Are you trying to access it via https ? A quick google search on your error seems to indicate that you are trying to use https instead of http.
huh, that was it. I was explicitly opening http, but probably before Komga got booted Safari invisibly tried https. Now I can successfully create account and login to Komga!
Thanks for the report. I'll do the necessary changes in the webp library and deliver a new Komga release to fix your problem, so you can use mainline releases.
Before trying some changes on the webp library, i would like to test something within Komga to prevent loading the library via a configuration flag. That could come in handy later on for other people having the same kind of problem.
Could you try this jar:
--komga.native-webp=false, it should not crash and should display in the logs Unloading native WebP libraryHi there.
Just tried and can confim all worked as expected:
--komga.native-webp=false makes run komga normally. Unloading native WebP library mesg in the logs present as well.
--komga.native-webp=true or parameter not specified makes komga to fail on my armv7l arch.
awesome, thanks for confirming. I'll ship that feature, and also try fixing the lib to disable it for armv7l.
@robco The new release will include 2 fixes:
armv7l:tada: This issue has been resolved in version 0.89.2 :tada:
The release is available on:
v0.89.2Your semantic-release bot :package::rocket: