Release Notes for Service Provider Foundation 2012 R2

 

Applies To: System Center 2016 - Service Provider Foundation, System Center Technical Preview

These release notes present information about issues that you might encounter when you are working with the Service Provider Foundation for System Center 2012 R2 . These issues might require a workaround or they might be important considerations for programming with Service Provider Foundation.

Programming Tips and Troubleshooting

Only install Service Provider Foundation with the System Center 2012 R2 Virtual Machine Manager console

Description: It is possible to install Service Provider Foundation with reference to the Virtual Machine ManagerSystem Center 2012 console or the Virtual Machine ManagerSystem Center 2012 Service Pack 1 (SP1) console, which will break any new stuff and potentially other problems.

Workaround: None. Be sure to use the System Center 2012 R2 Virtual Machine Manager console.

Transferring ownership of a Virtual Machine from one tenant to another causes metering to fail.

Description: If a Virtual Machine is transferred from one tenant to another, the metering feature of Service Provider Foundation will no longer function.

This is caused by duplicate historical Virtual Machine information in the System Center 2012 R2 Operations Manager data warehouse (OMDW) database.

Workaround: The duplicate Virtual Machine information must be removed from the OMDW. The following SQL script will delete all historical Virtual Machine data from the OMDW, ensuring the duplicate no longer exists:

  
-- Get the OwnerUserRole Property's Guid  
DECLARE @OwnerUserRoleGuid uniqueidentifier;  
SET @OwnerUserRoleGuid = (  
SELECT [PropertyGuid] FROM [dbo].[ManagedEntityTypeProperty] metp   
JOIN [dbo].[ManagedEntityType] met on met.[ManagedEntityTypeRowId] = metp.[ManagedEntityTypeRowId]   
WHERE [PropertySystemName] = 'OwnerUserRole' AND ManagedEntityTypeSystemName = 'Microsoft.SystemCenter.VirtualMachineManager.VirtualMachine'  
)  
  
DELETE  
FROM [dbo].[ManagedEntityProperty]  
WHERE [ManagedEntityPropertyRowId] in  
(  
SELECT [ManagedEntityPropertyRowId]  
  FROM [dbo].[ManagedEntityProperty] mep CROSS APPLY mep.PropertyXml.nodes('Root/Property') AS T (p)  
  JOIN [dbo].[ManagedEntity] me on me.[ManagedEntityRowId] = mep.[ManagedEntityRowId]  
  JOIN [dbo].[ManagedEntityType] met on me.[ManagedEntityTypeRowId] = met.[ManagedEntityTypeRowId] AND met.ManagedEntityTypeSystemName = 'Microsoft.SystemCenter.VirtualMachineManager.2012.VirtualMachine'  
  WHERE [ToDateTime] IS NOT NULL  
  AND T .p.value('@Guid', 'uniqueidentifier') = @OwnerUserRoleGuid  
  AND mep.[ManagedEntityRowId] in (  
 -- Get the ManagedEntityRowId of all of the VMs that have a null ToDateTime  
 SELECT me.[ManagedEntityRowId]  
   FROM [dbo].[ManagedEntityProperty] mep CROSS APPLY mep.PropertyXml.nodes('Root/Property') AS T (p)  
   JOIN [dbo].[ManagedEntity] me on me.[ManagedEntityRowId] = mep.[ManagedEntityRowId]  
   JOIN [dbo].[ManagedEntityType] met on me.[ManagedEntityTypeRowId] = met.[ManagedEntityTypeRowId] AND met.ManagedEntityTypeSystemName = 'Microsoft.SystemCenter.VirtualMachineManager.2012.VirtualMachine'  
   WHERE [ToDateTime] IS NULL  
   AND T .p.value('@Guid', 'uniqueidentifier') = @OwnerUserRoleGuid  
)  
)  
  

See Also

Getting Started
Release Notes for Service Provider Foundation 2012 SP1
Programming in Visual Studio with Service Provider Foundation Services