The Failover of Univiewer Manager Server(UVMS) is failing with the following error message in the uvserver.log.
| 2020-05-22 11:32:44 |ERROR| main | com.orsyp.central.server.CentralServer | A problem occurred while checking DB Conflicts.
java.lang.Exception: Can not start the server because another server on casplda02.orsyptst.com is using the same database
at com.orsyp.conf.utils.DBUtil.checkDBConflicts(DBUtil.java:425)
at com.orsyp.central.server.CentralServer.checkDBConflicts(CentralServer.java:542)
at com.orsyp.central.server.CentralServer.configAndInitServer(CentralServer.java:333)
at com.orsyp.central.server.CentralServer.access$000(CentralServer.java:82)
at com.orsyp.central.server.CentralServer$3.run(CentralServer.java:263)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/javax.security.auth.Subject.doAsPrivileged(Subject.java:550)
at com.orsyp.central.server.CentralServer.main(CentralServer.java:260)
Release : 6.x
Component : DOLLAR UNIVERSE, Univiewer Management Server(UVMS)
The other UVMS was not fully stopped. Check the port number used by the UVMS that was supposed to stopped if it is already stopped.
To find out if the port number being used by the UVMS is still listening, please follow the steps below.
On Windows:
netstat -nao|findstr <portnumber used by UVMS>
Ex.
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:4184 0.0.0.0:0 LISTENING 6796
The command above will also show the PID. The PID can be used in the tasklist command to find which process it is.
Ex.
tasklist /v |findstr 6796
The command will show the process name. The, this process can be stopped from the Windows Task Manager or witht he command taskkill /F /PID pid_number
On Unix/Linux:
The lsof command below can be used to find the process ID that is using the port number.
Ex.
lsof -i :4192
Result:
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
java 25114 root 176u IPv4 1620439700 TCP *:4192 (LISTEN)
The, the PID can be used in the kill command.
Ex. kill -9 25114
On Database:
Check if the permission to the db user is enabled:
ORACLE: grant select on v_$session to <user>;
If yes then perform a select there:
select * from v_$session where username='uvms_user_name';
https://docs.oracle.com/cd/E17781_01/server.112/e18804/monitoring.htm#ADMQS247
If the uvms was stopped and a session still exist with that username, find the PID and kill it and disconnect the session.