Hello,
Using HSQLDB 2.3.3 (our current production version), there is no problem.
Our server creates a separate java hsqldb process. When our process is abrupdly stopped, it may not have killed the hsqldb process using a SHUTDOWN sql. The java process then runs alone. To avoid problems when starting again our process, we then try to connect to a potentially running hsqldb process. During this attempt, we now always get a NPE while we never did get one before (using 2.3.3). The NPE is below.
2019-06-10 11:10:46,350 [TelServerDbProcess] INFO TelServerDb - Starting TelServer embedded database...
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-chat\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:10:46,487 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: Initiating startup sequence...
2019-06-10 11:10:46,492 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: [Thread[HSQLDB Server @6ed3ef1,5,main]]: run()/openServerSocket():
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.ServerSocket.<init>(ServerSocket.java:237)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at java.net.ServerSocket.<init>(ServerSocket.java:128)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.HsqlSocketFactory.createServerSocket(HsqlSocketFactory.java:94)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.openServerSocket(Server.java:1867)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.run(Server.java:2008)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server$ServerThread.run(Server.java:310)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - [Server@6ed3ef1]: Initiating shutdown sequence...
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - Exception in thread "HSQLDB Server @6ed3ef1" java.lang.NullPointerException
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.shutdown(Server.java:2164)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.run(Server.java:2013)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at org.hsqldb.server.Server$ServerThread.run(Server.java:310)</init></init>
Thank you for having a look.
The log messages show your app starts a new server process "HSQLDB Server @6ed3ef1" and when this process fails to start due to conflict with existing server running on the port, it shuts itself down. During this shutdown attempt, there is an NPE.
Hello Fred,
Thanks for your fast answer.
How do you explain that it has never failed with the 2.3.3 version ? You can
see below that there is no NPE and that the process which tries to connect
to the database has got no problem doing so.
Here is the log when using 2.3.3 in the same situation :
2019-06-10 11:03:18,774 [TelServerDbProcess] INFO TelServerDb - Starting
TelServer embedded database...
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-ch
at\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setSilent(true)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Initiating startup sequence...
2019-06-10 11:03:18,931 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[HSQLDB Server @2aae9190,5,main]]:
run()/openServerSocket():
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:1
06)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:237)</init>
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:128)</init>
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.HsqlSocketFactory.createServerSocket(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.openServerSocket(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Initiating shutdown sequence...
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Shutdown sequence completed in 5 ms.
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: 2019-06-10 11:03:18.940 SHUTDOWN : System.exit() was not
called
2019-06-10 11:03:19,029 [TelServerDbProcess] INFO TelServerDb - TelServer
embedded database stopped (state=16)
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataManager - TelServer
embedded database process has not properly started, try to connect existing
database...
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataManager - Connecting
database...
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataConnection - JDBC
connection to URL jdbc:hsqldb:hsql://localhost:9001/telserver (table
history) with username 'telserver' connecting...
Can you explain what may have changed in 2.5.0 ?
Bruno
De : Fred Toussi [mailto:fredt@users.sourceforge.net]
Envoyé : lundi 10 juin 2019 11:51
À : [hsqldb:bugs] 1547@bugs.hsqldb.p.re.sourceforge.net
Objet : [hsqldb:bugs] #1547 When trying to access a running HSQLDB process,
a NPE ocurs
The log messages show your app starts a new server process "HSQLDB Server
@6ed3ef1" and when this process fails to start due to conflict with existing
server running on the port, it shuts itself down. During this shutdown
attempt, there is an NPE.
[bugs:#1547] https://sourceforge.net/p/hsqldb/bugs/1547/ When trying to
access a running HSQLDB process, a NPE ocurs
Status: open
Group: version 2.5.x
Created: Mon Jun 10, 2019 09:20 AM UTC by bruno KONIK
Last Updated: Mon Jun 10, 2019 09:20 AM UTC
Owner: nobody
Hello,
Using HSQLDB 2.3.3 (our current production version), there is no problem.
Our server creates a separate java hsqldb process. When our process is
abrupdly stopped, it may not have killed the hsqldb process using a SHUTDOWN
sql. The java process then runs alone. To avoid problems when starting again
our process, we then try to connect to a potentially running hsqldb process.
During this attempt, we now always get a NPE while we never did get one
before (using 2.3.3). The NPE is below.
2019-06-10 11:10:46,350 [TelServerDbProcess] INFO TelServerDb - Starting
TelServer embedded database...
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-ch
at\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:10:46,487 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating startup sequence...
2019-06-10 11:10:46,492 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[HSQLDB Server @6ed3ef1,5,main]]:
run()/openServerSocket():
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:1
06)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:237)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:128)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.HsqlSocketFactory.createServerSocket(HsqlSocketFactory.jav
a:94)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.openServerSocket(Server.java:1867)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2008)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating shutdown sequence...
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - Exception
in thread "HSQLDB Server @6ed3ef1" java.lang.NullPointerException
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.shutdown(Server.java:2164)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2013)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)</init></init>
Thank you for having a look.
Sent from sourceforge.net because you indicated interest in
https://sourceforge.net/p/hsqldb/bugs/1547/
To unsubscribe from further messages, please visit
https://sourceforge.net/auth/subscriptions/
Related
Bugs: #1547
Fixed and committed to SVN trunk. Please download the snaphot, build and test.
https://sourceforge.net/p/hsqldb/svn/HEAD/tree/base/trunk/
Hi Fred,
To provide more information. Our server launches a ProcessBuilder for hsqldb
and supervises the Server.getState() to detect if the server has stopped (we
test Server.getState() == 16 - that is
ServerProperties.SERVER_STATE_SHUTDOWN) . If there is a NPE, it seems that
our test cannot function as we expect since the state is never set to 16. Do
you have a hint to ensure that the server is stopped even if there is this
NPE ?
I think that avoiding the NPE would make the state set to 16 but I may miss
something.
Bruno
De : Bruno Konik [mailto:bruno.konik@unigone.com]
Envoyé : lundi 10 juin 2019 14:07
À : '[hsqldb:bugs] ' 1547@bugs.hsqldb.p.re.sourceforge.net
Objet : RE: [hsqldb:bugs] #1547 When trying to access a running HSQLDB
process, a NPE ocurs
Hello Fred,
Thanks for your fast answer.
How do you explain that it has never failed with the 2.3.3 version ? You can
see below that there is no NPE and that the process which tries to connect
to the database has got no problem doing so.
Here is the log when using 2.3.3 in the same situation :
2019-06-10 11:03:18,774 [TelServerDbProcess] INFO TelServerDb - Starting
TelServer embedded database...
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-ch
at\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[main,5,main]]: setSilent(true)
2019-06-10 11:03:18,925 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Initiating startup sequence...
2019-06-10 11:03:18,931 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: [Thread[HSQLDB Server @2aae9190,5,main]]:
run()/openServerSocket():
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:1
06)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:237)</init>
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:128)</init>
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.HsqlSocketFactory.createServerSocket(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.openServerSocket(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Unknown Source)
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Initiating shutdown sequence...
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: Shutdown sequence completed in 5 ms.
2019-06-10 11:03:18,942 [TelServerDbProcess] TRACE TelServerDb -
[Server@2aae9190]: 2019-06-10 11:03:18.940 SHUTDOWN : System.exit() was not
called
2019-06-10 11:03:19,029 [TelServerDbProcess] INFO TelServerDb - TelServer
embedded database stopped (state=16)
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataManager - TelServer
embedded database process has not properly started, try to connect existing
database...
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataManager - Connecting
database...
2019-06-10 11:03:19,029 [TelServerDbProcess] DEBUG DataConnection - JDBC
connection to URL jdbc:hsqldb:hsql://localhost:9001/telserver (table
history) with username 'telserver' connecting...
Can you explain what may have changed in 2.5.0 ?
Bruno
De : Fred Toussi [mailto:fredt@users.sourceforge.net]
Envoyé : lundi 10 juin 2019 11:51
À : [hsqldb:bugs] <1547@bugs.hsqldb.p.re.sourceforge.net
1547@bugs.hsqldb.p.re.sourceforge.net >
Objet : [hsqldb:bugs] #1547 When trying to access a running HSQLDB process,
a NPE ocurs
The log messages show your app starts a new server process "HSQLDB Server
@6ed3ef1" and when this process fails to start due to conflict with existing
server running on the port, it shuts itself down. During this shutdown
attempt, there is an NPE.
[bugs:#1547] https://sourceforge.net/p/hsqldb/bugs/1547/ When trying to
access a running HSQLDB process, a NPE ocurs
Status: open
Group: version 2.5.x
Created: Mon Jun 10, 2019 09:20 AM UTC by bruno KONIK
Last Updated: Mon Jun 10, 2019 09:20 AM UTC
Owner: nobody
Hello,
Using HSQLDB 2.3.3 (our current production version), there is no problem.
Our server creates a separate java hsqldb process. When our process is
abrupdly stopped, it may not have killed the hsqldb process using a SHUTDOWN
sql. The java process then runs alone. To avoid problems when starting again
our process, we then try to connect to a potentially running hsqldb process.
During this attempt, we now always get a NPE while we never did get one
before (using 2.3.3). The NPE is below.
2019-06-10 11:10:46,350 [TelServerDbProcess] INFO TelServerDb - Starting
TelServer embedded database...
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-ch
at\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:10:46,487 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating startup sequence...
2019-06-10 11:10:46,492 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[HSQLDB Server @6ed3ef1,5,main]]:
run()/openServerSocket():
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:1
06)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:237)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:128)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.HsqlSocketFactory.createServerSocket(HsqlSocketFactory.jav
a:94)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.openServerSocket(Server.java:1867)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2008)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating shutdown sequence...
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - Exception
in thread "HSQLDB Server @6ed3ef1" java.lang.NullPointerException
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.shutdown(Server.java:2164)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2013)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)</init></init>
Thank you for having a look.
Sent from sourceforge.net because you indicated interest in
https://sourceforge.net/p/hsqldb/bugs/1547/
To unsubscribe from further messages, please visit
https://sourceforge.net/auth/subscriptions/
Related
Bugs: #1547
There was a regression in version 2.5.0 which is now fixed. Please download and test the SVN trunk HEAD as I suggested.
Hi Fred,
Yes, the snapshot seems to have fixed the problem.
Thank you much. It will be present in the next release I presume.
Bruno
De : Fred Toussi [mailto:fredt@users.sourceforge.net]
Envoyé : lundi 10 juin 2019 14:41
À : [hsqldb:bugs] 1547@bugs.hsqldb.p.re.sourceforge.net
Objet : [hsqldb:bugs] #1547 When trying to access a running HSQLDB process,
a NPE ocurs
There was a regression in version 2.5.0 which is now fixed. Please download
and test the SVN trunk HEAD as I suggested.
[bugs:#1547] https://sourceforge.net/p/hsqldb/bugs/1547/ When trying to
access a running HSQLDB process, a NPE ocurs
Status: open-fixed
Group: version 2.5.x
Created: Mon Jun 10, 2019 09:20 AM UTC by bruno KONIK
Last Updated: Mon Jun 10, 2019 12:00 PM UTC
Owner: Fred Toussi
Hello,
Using HSQLDB 2.3.3 (our current production version), there is no problem.
Our server creates a separate java hsqldb process. When our process is
abrupdly stopped, it may not have killed the hsqldb process using a SHUTDOWN
sql. The java process then runs alone. To avoid problems when starting again
our process, we then try to connect to a potentially running hsqldb process.
During this attempt, we now always get a NPE while we never did get one
before (using 2.3.3). The NPE is below.
2019-06-10 11:10:46,350 [TelServerDbProcess] INFO TelServerDb - Starting
TelServer embedded database...
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setDatabaseName(0,telserver)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
setDatabasePath(0,D:\unigone\development\JavaProject\TelServer-vdev\tests-ch
at\data\telserver;hsqldb.cache_file_scale=8)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) entered
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: checkRunning(false) exited
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setPort(9001)
2019-06-10 11:10:46,479 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[main,5,main]]: setTrace(false)
2019-06-10 11:10:46,487 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating startup sequence...
2019-06-10 11:10:46,492 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: [Thread[HSQLDB Server @6ed3ef1,5,main]]:
run()/openServerSocket():
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
java.net.BindException: Address already in use: JVM_Bind
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.bind0(Native Method)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:1
06)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.bind(ServerSocket.java:375)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:237)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
java.net.ServerSocket.<init>(ServerSocket.java:128)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.HsqlSocketFactory.createServerSocket(HsqlSocketFactory.jav
a:94)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.openServerSocket(Server.java:1867)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2008)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)
2019-06-10 11:10:46,493 [TelServerDbProcess] TRACE TelServerDb -
[Server@6ed3ef1]: Initiating shutdown sequence...
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - Exception
in thread "HSQLDB Server @6ed3ef1" java.lang.NullPointerException
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.shutdown(Server.java:2164)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.run(Server.java:2013)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server.access$000(Server.java:238)
2019-06-10 11:10:46,498 [TelServerDbProcess] TRACE TelServerDb - at
org.hsqldb.server.Server$ServerThread.run(Server.java:310)</init></init>
Thank you for having a look.
Sent from sourceforge.net because you indicated interest in
https://sourceforge.net/p/hsqldb/bugs/1547/
To unsubscribe from further messages, please visit
https://sourceforge.net/auth/subscriptions/
Related
Bugs: #1547