What is XDMP-XDQPVER, and what should be done about it?
26 May 2015 01:46 PM
XDQP is a MarkLogic internal protocol used for communication between nodes in a cluster. This protocol version must be the same on all hosts of the cluster, and XDMP-XDQPVER message is logged if the versions are not the same.
Example message text seen in the MarkLogic ErrorLog.txt file :
Warning: XDQPServerConnection::init(172.16.128.140:7998-172.18.128.161:40380): XDMP-XDQPVER: XDQP version mismatch: host1.marklogic.com,8000200 172.18.128.161,7000500
XDMP-XDQPVER is a'warning' level message, which indicates that two hosts involved in communication are running incompatible versions of MarkLogic server
XDQP protocol versions generally change between major versions of MarkLogic, but they can sometimes change between maintenance releases as well. Rolling upgrade is not currently supported (7.0-5 and 8.0-2 at the time of writing) in MarkLogic, and all the hosts should have the same version of the server running.
XDMP-XDQPVER message may be logged in two upgrade scenarios:
1) Version mismatch between hosts in a cluster
When upgrading a cluster, if all the hosts in the cluster are not upgraded to the same server version, then the hosts report this message. Even though it is logged as a 'warning' level message in the server logs, sometimes the admin UI of a host that is running a different server version may not be accessed and displays an error screen with the message:
500: Internal Server Error XDMP-XDQPVER: status-check() -- XDQP version mismatch: host1.marklogic.com,7000500 host2.marklogic.com,8000200
A cluster in this state (mixed server version) is not tested and not supported. The behavior of a mixed version cluster is not defined and could lead to inconsistent data.
The only way to get out of this error situation is to make sure the host runs the same ML server version as the rest of the hosts in the cluster by upgrading.
2) Version mismatch between clusters with DB replication configured
When two clusters are coupled and database replication is configured between them, the XDQP protocol version must be the same on all hosts in all of the clusters being replicated. If the XDQP version is different, database replication will pause until the clusters are both upgraded to the same version.
The upgrade process is straightforward if Security database is not being replicated.
However, if the security database is replicated, it is important to follow the documented procedure for upgrade, as listed below:
The above listed steps are documented here.
Links to other related documentation: