ylexus / jiotty-photos-uploader

Uploads your media files to Google Photos creating albums based on the directory structure
69 stars 11 forks source link

Fails to quit if javafx renderer fails to initialise #115

Closed ylexus closed 3 years ago

ylexus commented 3 years ago

Log

2021-06-24T09:50:44,814 INFO [main] n.y.g.u.UserInterface Waiting for 10 seconds until UI is initialized
2021-06-24T09:50:45,051 ERROR [Thread-2] j.l.Throwable Exception in thread "Thread-2" java.lang.UnsupportedOperationException: Unable to open DISPLAY
2021-06-24T09:50:45,052 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.lambda$new$6(GtkApplication.java:173)
2021-06-24T09:50:45,054 ERROR [Thread-2] j.l.Throwable  at java.base/java.security.AccessController.doPrivileged(AccessController.java:312)
2021-06-24T09:50:45,054 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.<init>(GtkApplication.java:171)
2021-06-24T09:50:45,055 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:41)
2021-06-24T09:50:45,057 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.glass.ui.Application.run(Application.java:145)
2021-06-24T09:50:45,057 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281)
2021-06-24T09:50:45,058 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:288)
2021-06-24T09:50:45,061 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:160)
2021-06-24T09:50:45,062 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658)
2021-06-24T09:50:45,062 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)
2021-06-24T09:50:45,065 ERROR [Thread-2] j.l.Throwable  at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
2021-06-24T09:50:45,066 ERROR [Thread-2] j.l.Throwable  at java.base/java.lang.Thread.run(Thread.java:831)
2021-06-24T09:50:54,817 ERROR [main] n.y.j.c.a.Application Unable to initialize
java.lang.IllegalStateException: UI was not initialized in 10 seconds
        at com.google.common.base.Preconditions.checkState(Preconditions.java:510) ~[guava-30.1.1-jre.jar:?]
        at net.yudichev.googlephotosupload.ui.UserInterface.doStart(UserInterface.java:65) ~[main/:?]
        at net.yudichev.jiotty.common.inject.BaseLifecycleComponent.lambda$start$0(BaseLifecycleComponent.java:19) ~[jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.jiotty.common.lang.Locks.inLock(Locks.java:13) ~[jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.jiotty.common.inject.BaseLifecycleComponent.start(BaseLifecycleComponent.java:17) ~[jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.jiotty.common.app.Application.start(Application.java:172) ~[jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.jiotty.common.app.Application.start(Application.java:90) ~[jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.jiotty.common.app.Application.run(Application.java:141) [jiotty-common-2.0.3-SNAPSHOT.jar:?]
        at net.yudichev.googlephotosupload.ui.UiMain.main(UiMain.java:54) [main/:?]
        at net.yudichev.googlephotosupload.Main.main(Main.java:13) [main/:?]
2021-06-24T09:50:54,887 INFO [main] n.y.j.c.a.Application Shutting down
2021-06-24T09:50:54,889 INFO [main] n.y.j.c.a.Application Stopping component UserInterface @ 33198426
2021-06-24T09:50:54,891 INFO [main] n.y.j.c.a.Application Stopped component UserInterface @ 33198426

Threads:

2021-06-24 10:53:21
Full thread dump OpenJDK Server VM (16.0.1+9 mixed mode):

Threads class SMR info:
_java_thread_list=0x75202040, length=13, elements={
0xb5f19c58, 0x7503d768, 0x7503ea08, 0x7505c328,
0x7505d488, 0x7505e5c0, 0x75053108, 0x750542b8,
0x750e6250, 0x73f29688, 0x71652528, 0x756504e8,
0x752044e0
}

"main" #1 prio=5 os_prio=0 cpu=7433.07ms elapsed=164.43s tid=0xb5f19c58 nid=0x5106 waiting on condition  [0xb6115000]
   java.lang.Thread.State: WAITING (parking)
    at jdk.internal.misc.Unsafe.park(java.base@16.0.1/Native Method)
    - parking to wait for  <0x7960a8e8> (a java.util.concurrent.CountDownLatch$Sync)
    at java.util.concurrent.locks.LockSupport.park(java.base@16.0.1/LockSupport.java:211)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@16.0.1/AbstractQueuedSynchronizer.java:714)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(java.base@16.0.1/AbstractQueuedSynchronizer.java:1046)
    at java.util.concurrent.CountDownLatch.await(java.base@16.0.1/CountDownLatch.java:232)
    at com.sun.javafx.application.PlatformImpl.waitForStart(javafx.graphics@16.0.1/PlatformImpl.java:412)
    at com.sun.javafx.application.PlatformImpl.runLater(javafx.graphics@16.0.1/PlatformImpl.java:433)
    at com.sun.javafx.application.PlatformImpl.runLater(javafx.graphics@16.0.1/PlatformImpl.java:424)
    at javafx.application.Platform.runLater(javafx.graphics@16.0.1/Platform.java:162)
    at net.yudichev.googlephotosupload.ui.UploadPaneControllerImpl.reset(UploadPaneControllerImpl.java:69)
    at net.yudichev.googlephotosupload.ui.UploadPaneControllerImpl.doStop(UploadPaneControllerImpl.java:145)
    at net.yudichev.jiotty.common.inject.BaseLifecycleComponent.lambda$stop$1(BaseLifecycleComponent.java:29)
    at net.yudichev.jiotty.common.inject.BaseLifecycleComponent$$Lambda$315/0x72355d10.run(Unknown Source)
    at net.yudichev.jiotty.common.lang.Locks.inLock(Locks.java:13)
    at net.yudichev.jiotty.common.inject.BaseLifecycleComponent.stop(BaseLifecycleComponent.java:26)
    at net.yudichev.jiotty.common.app.Application.lambda$stop$3(Application.java:180)
    at net.yudichev.jiotty.common.app.Application$$Lambda$314/0x723558c0.accept(Unknown Source)
    at java.lang.Iterable.forEach(java.base@16.0.1/Iterable.java:75)
    at net.yudichev.jiotty.common.app.Application.stop(Application.java:177)
    at net.yudichev.jiotty.common.app.Application.stop(Application.java:106)
    at net.yudichev.jiotty.common.app.Application.run(Application.java:151)
    at net.yudichev.googlephotosupload.ui.UiMain.main(UiMain.java:54)
    at net.yudichev.googlephotosupload.Main.main(Main.java:13)

"Reference Handler" #2 daemon prio=10 os_prio=0 cpu=1.79ms elapsed=164.35s tid=0x7503d768 nid=0x510d waiting on condition  [0x7557c000]
   java.lang.Thread.State: RUNNABLE
    at java.lang.ref.Reference.waitForReferencePendingList(java.base@16.0.1/Native Method)
    at java.lang.ref.Reference.processPendingReferences(java.base@16.0.1/Reference.java:243)
    at java.lang.ref.Reference$ReferenceHandler.run(java.base@16.0.1/Reference.java:215)

"Finalizer" #3 daemon prio=8 os_prio=0 cpu=0.72ms elapsed=164.35s tid=0x7503ea08 nid=0x510e in Object.wait()  [0x7537c000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(java.base@16.0.1/Native Method)
    - waiting on <0x77f829e8> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(java.base@16.0.1/ReferenceQueue.java:155)
    - locked <0x77f829e8> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(java.base@16.0.1/ReferenceQueue.java:176)
    at java.lang.ref.Finalizer$FinalizerThread.run(java.base@16.0.1/Finalizer.java:171)

"Signal Dispatcher" #4 daemon prio=9 os_prio=0 cpu=0.47ms elapsed=164.32s tid=0x7505c328 nid=0x510f runnable  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Service Thread" #5 daemon prio=9 os_prio=0 cpu=13.51ms elapsed=164.32s tid=0x7505d488 nid=0x5110 runnable  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Monitor Deflation Thread" #6 daemon prio=9 os_prio=0 cpu=6.79ms elapsed=164.32s tid=0x7505e5c0 nid=0x5111 runnable  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #7 daemon prio=9 os_prio=0 cpu=3502.98ms elapsed=164.32s tid=0x75053108 nid=0x5112 waiting on condition  [0x00000000]
   java.lang.Thread.State: RUNNABLE
   No compile task

"Sweeper thread" #9 daemon prio=9 os_prio=0 cpu=0.86ms elapsed=164.32s tid=0x750542b8 nid=0x5113 runnable  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Common-Cleaner" #10 daemon prio=8 os_prio=0 cpu=1.98ms elapsed=164.14s tid=0x750e6250 nid=0x5115 in Object.wait()  [0x74094000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(java.base@16.0.1/Native Method)
    - waiting on <0x77f82cf8> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(java.base@16.0.1/ReferenceQueue.java:155)
    - locked <0x77f82cf8> (a java.lang.ref.ReferenceQueue$Lock)
    at jdk.internal.ref.CleanerImpl.run(java.base@16.0.1/CleanerImpl.java:140)
    at java.lang.Thread.run(java.base@16.0.1/Thread.java:831)
    at jdk.internal.misc.InnocuousThread.run(java.base@16.0.1/InnocuousThread.java:134)

"Notification Thread" #11 daemon prio=9 os_prio=0 cpu=0.10ms elapsed=163.60s tid=0x73f29688 nid=0x5116 runnable  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"MVStore background writer nio:/home/pi/.jiottyphotosuploader/data.mv.db" #17 daemon prio=5 os_prio=0 cpu=685.36ms elapsed=157.00s tid=0x71652528 nid=0x5120 in Object.wait()  [0x7377c000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(java.base@16.0.1/Native Method)
    - waiting on <0x7989b158> (a java.lang.Object)
    at org.h2.mvstore.MVStore$BackgroundWriterThread.run(MVStore.java:3283)
    - locked <0x7989b158> (a java.lang.Object)

"QuantumRenderer-0" #21 daemon prio=5 os_prio=0 cpu=30.19ms elapsed=156.80s tid=0x756504e8 nid=0x5123 waiting on condition  [0x727fe000]
   java.lang.Thread.State: WAITING (parking)
    at jdk.internal.misc.Unsafe.park(java.base@16.0.1/Native Method)
    - parking to wait for  <0x79692378> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(java.base@16.0.1/LockSupport.java:341)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(java.base@16.0.1/AbstractQueuedSynchronizer.java:505)
    at java.util.concurrent.ForkJoinPool.managedBlock(java.base@16.0.1/ForkJoinPool.java:3137)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(java.base@16.0.1/AbstractQueuedSynchronizer.java:1614)
    at java.util.concurrent.LinkedBlockingQueue.take(java.base@16.0.1/LinkedBlockingQueue.java:435)
    at java.util.concurrent.ThreadPoolExecutor.getTask(java.base@16.0.1/ThreadPoolExecutor.java:1056)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@16.0.1/ThreadPoolExecutor.java:1116)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@16.0.1/ThreadPoolExecutor.java:630)
    at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(javafx.graphics@16.0.1/QuantumRenderer.java:125)
    at java.lang.Thread.run(java.base@16.0.1/Thread.java:831)

"Attach Listener" #23 daemon prio=9 os_prio=0 cpu=0.52ms elapsed=0.10s tid=0x752044e0 nid=0x5178 waiting on condition  [0x00000000]
   java.lang.Thread.State: RUNNABLE

"VM Thread" os_prio=0 cpu=15.96ms elapsed=164.38s tid=0x75033c10 nid=0x510c runnable  

"GC Thread#0" os_prio=0 cpu=46.22ms elapsed=164.42s tid=0xb5f7ee48 nid=0x5107 runnable  

"GC Thread#1" os_prio=0 cpu=35.52ms elapsed=163.30s tid=0x747031a8 nid=0x5118 runnable  

"GC Thread#2" os_prio=0 cpu=46.46ms elapsed=163.29s tid=0x74705520 nid=0x5119 runnable  

"GC Thread#3" os_prio=0 cpu=51.32ms elapsed=162.59s tid=0x747063f8 nid=0x511a runnable  

"G1 Main Marker" os_prio=0 cpu=0.81ms elapsed=164.42s tid=0xb5f83f50 nid=0x5108 runnable  

"G1 Conc#0" os_prio=0 cpu=24.14ms elapsed=164.42s tid=0xb5f84c98 nid=0x5109 runnable  

"G1 Refine#0" os_prio=0 cpu=0.15ms elapsed=164.42s tid=0xb5fe4b08 nid=0x510a runnable  

"G1 Service" os_prio=0 cpu=72.97ms elapsed=164.42s tid=0xb5fe5820 nid=0x510b runnable  

"VM Periodic Task Thread" os_prio=0 cpu=153.19ms elapsed=163.60s tid=0x73f2a950 nid=0x5117 waiting on condition  

JNI global refs: 20, weak refs: 0
ylexus commented 3 years ago

Worked around a javafx issue.