¿Cuál es la forma correcta de cerrar H2?

Esto está relacionado con esteenvia.
Creo que estoy teniendo problemas conH2 lo que significa que no se cierra correctamente.
Sospecho esto desde que veomyDB.lock.db cuando apago tomcat y el proceso no se detiene.
Uso la agrupación de conexiones de Tomcat y la url de la base de datos es:
url="jdbc:h2:file:/opt/myOrg/tomcat/webapps/MyApplication/db/myDatabase;SCHEMA=myschema"

Del documentoclose H2:

Por lo general, una base de datos se cierra cuando se cierra la última conexión ... De manera predeterminada, una base de datos se cierra cuando se cierra la última conexión. Sin embargo, si nunca se cierra, la base de datos se cierra cuando la máquina virtual sale normalmente, utilizando un enlace de apagado

No puedo entender si estoy haciendo algo mal.
¿Debería forzar el cierre de la base de datos mediante un comando? ¿Es este el significado del gancho de apagado?
¿Qué estoy haciendo mal aquí

Nota
No puedo encontrar en Google un ejemplo de cómo cerrarH2 correctamente (además de la declaración de que se cierra automáticamente en el último apagado de la conexión). Debo llamarSHUTDOWN ¿yo mismo? ¿Es este el enfoque adecuado?
Ya veo votos para cerrar la pregunta, pero no ha habido una razón o un enlace en un ejemplo de lo que estoy investigando

ACTUALIZAR
Después de que Joonas Pulakka responda alguna información adicional:

Desde eljavacore Me puse usando unkill -3 Veo los hilos:

"H2 Log Writer MYAPPLICATION" J9VMThread: 0x08DC6F00, j9thread_t: 0x08C9B790, java / lang / Thread: 0xE7206CC8, state: CW, prio = 5 3XMTHREADINFO1 (ID de subproceso nativo: 0xA32, native nativeTH: 0x5, prioridad nativa: 0X
(rango de dirección de pila nativa de: 0xE5E26000, a: 0xE5E67000, tamaño: 0x41000) 3XMTHREADINFO3 Java callstack:
4XESTACKTRACE en java / lang / Object.wait (Método nativo)
4XESTACKTRACE en java / lang / Object.wait (Object.java:196 (Código compilado)) 4XESTACKTRACE en org / h2 / store / WriterThread.run (WriterThread.java:102)
4XESTACKTRACE en java / lang / Thread.run (Thread.java:736)

3XMTHREADINFO "pool-8-thread-1" J9VMTread: 0x087C0200, j9thread_t: 0x0840566C, java / lang / Thread: 0xE79BFC80, estado: P, prio = 5
3XMTHREADINFO1 (ID de hilo nativo: 0xE1A, prioridad nativa: 0x5, política nativa: DESCONOCIDO) 3XMTHREADINFO2
(rango de dirección de pila nativa de: 0xE5F69000, a: 0xE5FAA000, tamaño: 0x41000) 3XMTHREADINFO3 Java callstack:
4XESTACKTRACE en sun / misc / Unsafe.park (Método nativo)
4XESTACKTRACE en java / util / concurrent / locks / LockSupport.park (LockSupport.java:184 (Código compilado)) 4XESTACKTRACE en java / util / concurrent / locks / AbstractQueuedSynchronizer $ ConditionObject.await (AbstractQueuedSynchronizer.java:1998 (Código compilado) ) 4XESTACKTRACE en java / util / concurrent / LinkedBlockingQueue.take (LinkedBlockingQueue.java:413 (Código compilado)) 4XESTACKTRACE en java / util / concurrent / ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:958 (Código compilado) en java / Código de compilación) /concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 4XESTACKTRACE en java / lang / Thread.run (Thread.java:736)

3XMTHREADINFO "H2 File Lock Watchdog opt / myOrg / tomcat / webapps / MyApplication / db / myDatabase.lock.db" J9VMThread: 0x08DC6900, j9thread_t: 0x08C9BA24, ja
va / lang / Thread: 0xE71E9018, estado: CW, prio = 9 3XMTHREADINFO1
(ID de hilo nativo: 0xA30, prioridad nativa: 0x9, política nativa: DESCONOCIDO)
3XMTHREADINFO2 (rango de dirección de pila nativa de: 0xE5DBA000, a: 0xE5DFB000, tamaño: 0x41000) 3XMTHREADINFO3 Java callstack: 4XESTACKTRACE en java / lang / Thread.sleep (Método nativo) 4XESTACKTRACE
at java / lang / Thread.sleep (Thread.java:851 (Código compilado))
4XESTACKTRACE en org / h2 / store / FileLock.run (FileLock.java:490) 4XESTACKTRACE
at java / lang / Thread.run (Thread.java:736)

3XMTHREADINFO "FileWatchdog" J9VMThread: 0x087C0800, j9thread_t: 0x08C9B4FC, java / lang / Thread: 0xE715D878, estado: CW, prio = 5
3XMTHREADINFO1 (ID de subproceso nativo: 0xA2C, prioridad nativa: 0x5, política nativa: DESCONOCIDO) 3XMTHREADINFO2
(rango de direcciones de pila nativas de: 0xE5E67000, a: 0xE5EA8000, tamaño: 0x41000) 3XMTHREADINFO3 Java callstack:
4XESTACKTRACE en java / lang / Thread.sleep (Método nativo) 4XESTACKTRACE en java / lang / Thread.sleep (Thread.java:851 (Código compilado)) 4XESTACKTRACE en org / apache / log4j / helpers / FileWatchdog.run (FileWatchdog. java: 104)

Respuestas a la pregunta(10)

Su respuesta a la pregunta