[SOLVED] – A management group with the same name (xxxx) is already registerted to data warehouse management group “xxxx”

Hi all,

Recently I had a problem. The Data Warehouse server [SCDW] has detached from my Service Manager server [SCSM]. Without any reason :/

I have read in the Internet to unregister it and register again – “Wow, seems to be easy as pie” – I though, I have unregistered it, but trying to register it once again I have received an error:

“A management group with the same name (xxxx) is already registerted to data warehouse management group “xxxx”

Shit, what to do now?! Not many articles were written about it in the Internet, In fact, I have found just one:

http://social.technet.microsoft.com/Forums/en-US/systemcenterservicemanager/thread/4dc5cac4-49c3-4d10-ad0d-6b0bb4a4a2f2

The Unregister-SCDWSource didn’t worked for me – because It has been already unregistered. The hope seems to be one powershell command:

Remove-SCDWMgmtGroup…

But it does not persist in System Center 2012, it was in 2012 version.

So the only hope was from one guy that has been dealing with it in test environment, and resolved by removing 3 records from database:

SELECT *
FROM [DWStagingAndConfig].[dbo].[MT_Microsoft$SystemCenter$ResourceAccessLayer$SdkResourceStore]
GO

I have tried that command, saw the records and deleted them, and guess what? The SCDW wizzard has moved!.. BUT! at the last page, where “create” button is, I have received an error:

“Data source is already registered with the datawarehouse”

So the same error that one guy wrote on that froum.

So, still shit. maybe even bigger, so I went back to the snapshot, and tried to fight it without modyfying the database.

I made up final decision to uninstall the SCDW server. But still I wasn’t sure it would help, but no risk no fun.

After removing it, I started the installation wizzard.

I was considering to install it with the old database’s names, or give new ones. The second choice was better, in fact, if I would left the old names, the field with management group was grayed out, so basically I don’t think that would help with “A group is in use…” problem, because I would use the same group during registering, and I wanted to change that group name. The wizzard made it for me – for each database name it added “_1”, so I simply accepted it.

From last time I remembered that the SCDW installation process it is easy as pie, so I was very astonished when on “Configure Analysis Services for OLAP cubes” I have received error “A server in unavailable” – “what the hack” – the wizzard has perfectly worked with databases in previous steps – as wrote, it discovered that I have done it before and databases persists – it has added the “_1” sign after each DB name. Why it cannot connect to DB server in this step?!

First thought was to checked the Analysis Service on my SQL server – a good old service restart 🙂 but it didn’t helped, so maybe the permissions? I have changed the user on which I was installing the SCDW server (those fields where you give username and password in wizzard), but no luck.

With a help of that post:

http://social.technet.microsoft.com/Forums/en-US/setup/thread/33c307a7-5ad9-430b-939c-bf3931495677/

I have discovered the log file, and guess what was in file?:

Error:GetSqlInstanceList(), Exception Type: Microsoft.AnalysisServices.OperationException, Exception Message: File system error: The following file is corrupted: Physical file: …\Data\DWASDataBase.0.db\ReviewActivityDim.0.dim\5.ApprovalCondition_ReviewActivityApprovalId.(All).sstore. Logical file.

That would make sence – because as the wizzard changed the databases names in previous steps – adding “_1”, it hasn’t done it in this step! It was weird because I have checked “create new database” and It didn’t find the old one – but what it has common with connecting to the database server?! I mean the file name :/

The same was happening when I have checked “use existing database”, so apparently, the wizzard just didn’t changed the database name because it couldn’t connect to DB server. I have changed the DB name by adding “_1” and clicked “next”, and guess what? “A server in unavailable”…

What the hell!!! What is common in connection to server and corrupted OLD!!! database file name.

I have looked at the log file – the error was exactly the same!!! So apparently the SCSM wizzard has a bug, and even having inputed a new name, it tries to install OLAP cubes under one name “DWASDataBase” in the same old folder “DWASDataBase.0.db”.

I have logged on the DB server, stopped the Analysis Service, renamed the folder to “DWASDataBase.0.db_BAK”, rerun the service, and… guess what 🙂 The wizzard pass the step to the end, the installation was finalized successfully.

I have logged to my SCSM server and tried to register the SCDW server – WORKED LIKE A CHARM!

Advertisements

Reports migration from SCCM 2007 to SCCM 2012

Recenty I had some troubles during reports migration from SCCM 2007 to SCCM 2012.

By the way – I am going to write a quite big article about my struggling with SCCM upgrade – I hope the migration nightmare will ends this month 🙂

So as I was saying, after migrating reports I was received such an error:

Microsoft.Reporting.WinForms.ReportServerException
The report server cannot process the report or shared dataset. The shared data source ‘AutoGen__5C6358F2_4BB6_4a1b_A16E_8D96795D8602_’ for the report server or SharePoint site is not valid. Browse to the server or site and select a shared data source. (rsInvalidDataSourceReference)

Stack Trace:
at Microsoft.Reporting.WinForms.ServerReportSoapProxy.OnSoapException(SoapException e)
at Microsoft.Reporting.WinForms.Internal.Soap.ReportingServices2005.Execution.RSExecutionConnection.ProxyMethodInvocation.Execute[TReturn](RSExecutionConnection connection, ProxyMethod`1 initialMethod, ProxyMethod`1 retryMethod)
at Microsoft.Reporting.WinForms.Internal.Soap.ReportingServices2005.Execution.RSExecutionConnection.LoadReport(String Report, String HistoryID)
at Microsoft.Reporting.WinForms.ServerReport.EnsureExecutionSession()
at Microsoft.Reporting.WinForms.ServerReport.SetParameters(IEnumerable`1 parameters)
at Microsoft.ConfigurationManagement.AdminConsole.SrsReporting.ReportViewerWindowsForms.SetParameterValues_DoWork(Object sender, DoWorkEventArgs e)

I couldn’t find what is the issue, I was doing it with the ReportSync tool I have read about here:

http://blog.coretech.dk/kea/migrate-reports-from-sccm-2007-to-sccm-2012-sp1/

But there was nothing about that error :/ so I was searching further and found that great article, it is quite similar buuut… it has explanation of how to get rid of thta error 🙂

http://www.mydreampage.net/

Blog is written as a one page so you have to search by “Migrate the SCCM 2007 reports to SCCM 2012” header.

In case the website was no longer available – you have to do the fallowing after migration:

1. Go to to website http://<your_sqlreporting_server>/reports

2. Go to report that you have problem with

3. Click on it – so you will have error on the screen

4. Click on the report name on the top of the page (for ex. if your path to the report on the top looks like “Home > ConfigMgr_WRO > Asset Intelligence > Hardware 01A – Summary of computers in a specific collection” <- click on the bolded name) – it will lead you to the properties of the report.

5. Change the datasource of the report – don’t worry if the “test connecion” won’t work.

6. Go to report and run it 🙂 it should be all fine

Unfortunatelly I have had about hundreds of reports to correct the data source, figuring out the script was the priority 🙂 I have found a great script on that website:

http://ask.sqlservercentral.com/questions/86369/change-datasource-of-ssrs-report-with-powershell.html?sort=oldest

For me it was like:

$newDataSourcePath = "/ConfigMgr_WRO/{5C6358F2-4BB6-4a1b-A16E-8D96795D8602}";
$newDataSourceName = "AutoGen__5C6358F2_4BB6_4a1b_A16E_8D96795D8602_";
$SiteCode = "WRO"
$serverName = "WRO&lt;span style="font-size: small;"&gt;SCCM&lt;/span&gt;"
$reportFolder = "/ConfigMgr&lt;span style="font-size: small;"&gt;_&lt;span style="font-size: small;"&gt;WRO&lt;/span&gt;&lt;/span&gt;/ConfigMgr_&lt;span style="font-size: small;"&gt;OldSite&lt;/span&gt;";

$ssrs = New-WebServiceProxy -uri http://$serverName/ReportServer/ReportService2005.asmx?WSDL -UseDefaultCredential

$reports = $ssrs.ListChildren($reportFolder, $True)

$reports | ForEach-Object {

$reportPath = $_.path

$dataSources = $ssrs.GetItemDataSources($reportPath)
$dataSources | ForEach-Object {

$proxyNamespace = $_.GetType().Namespace
$myDataSource = New-Object ("$proxyNamespace.DataSource")
$myDataSource.Name = $newDataSourceName
$myDataSource.Item = New-Object ("$proxyNamespace.DataSourceReference")
$myDataSource.Item.Reference = $newDataSourcePath
$_.item = $myDataSource.Item
$ssrs.SetItemDataSources($reportPath, $_)
Write-Host "Report's DataSource Reference ($($_.Name)): $($_.Item.Reference)";
}

}

The script will modify all reports in the “$reportFolder” and it’s subfolders! Isn’t it great!?