This article was previously published under Q236407
This article has been archived. It is offered "as is" and will no longer be updated.
BUG #: 55368 (SQLBUG_70)
When replication is set up on an active/passive cluster and the SQL server instance fails over from the primary node of the cluster to the secondary node, replication distribution tasks running on the failover node (secondary node) of the cluster might fail with an error message:
could not obtain license information
If an active/passive cluster is set up, SQL server is installed only on the primary node of the cluster. Therefore, the license information is local to the primary node and, when failover takes place, the secondary node, which does not have license information for SQL server 7.0, cannot validate the replication scenario and see whether "per seat" or "per server" license mode is set.
NOTE: The license error may sometimes be a symptom of some other problem. If so, please be sure that the root problem is fixed before you fix the licensing. For example, the following error means that the logreader agent is unable to connect to the server:
Connecting to Publisher 'SHOPDB.bnshop' Status: 2, code: 0, text: 'The process could not connect to server 'SHOPDB'.'. The process could not connect to server 'SHOPDB'. Status: 2, code: 1326, text: 'Client unable to establish connection'. SHOPDB.bnshop: sp_MSgetversion Status: 0, code: 27101, text: 'The license for this installation of SQL Server does not permit Log Reader Agent to run at the Publisher.'.
In order to overcome this problem, the registry replication feature in the NT clustering can be used as follows:
Make sure that SQL server is running on the primary node of the cluster.
Open the cluster administrator and connect to the NT cluster and open the SQL cluster group.
Pick the Registry replication tab from the Properties view of "generic SQL server service" and add the following registry to be replicated:
Failover the SQL group on the cluster administrator to secondary node and note that the registry changes should be propagated to the secondary node.
Microsoft has confirmed this to be a problem in SQL Server 7.0.
In an active/active cluster setup for replication/DTS to work between Enterprise and desktop/MSDE edition in case of failover, both nodes of the cluster should have SQL server 7.0 set to "per seat" licensing mode. This needs to occur even though replicating LicenseInfo registry key between the nodes is not required because licensing info is already available on the second node of the cluster by virtue of active/active setup.