Saturday, October 26, 2013

Deploy list is not synching with child site

I faced an issue could of month back, deploy list is not synching with child site,
 
here is the solution how to resync and update the deploy list.
 
 
1-Failed to insert Object 6298a02f-0a6a-4f34-b832-08059b682b63 from replication file d:\Microsoft Configuration Manager\inboxes\objmgr.box\INCOMING\RetryGL_48796.CID.
On to the resolution, I found that running the following 6 SQL queries on the effected child sites resolved the issue:

Delete from CI_ConfigurationItems Where CIType_ID in (1, 6, 8);
Update CI_SDMPackages set IsDeleted = 1 where SourceSite = 'CEN';
Delete from CI_ComplianceHistory where isdetected = 1
Delete from CI_Compliancehistory where isdetected = 0
Delete from CI_SDMPackages where is deleted =1 and sourecesite = 'CEN'
Exec sp_DeleteOldSDMPackageData 0;

* Note: replace CEN with the site code of your central site (or the active SUP which is the furthest upstream’)
Running the above queries will purge Software Updates data from the effected child site.
You should then wait about 30 minutes and then restart the following services on the effected child site:
SMS_EXECUTIVE
SMS_COMPONENT_MANAGER
The final step is to initiate a full site replication, this can be done using the hierarchy maintenance tool (syncchild option) or by place a file called .SHA * in the objmgr.box on the parent site.
* .SHA – replace with the 3 digit site code of the desired child site you wish to replicate.
Allow up to 24 hours for the site replication to complete, when it finishes you should have a fully matching compliment of updates on the central site and child primary site.
 
 
2-If above method is not working then no problem, you would have to follow following steps as well as you followed first steps,
 
1.    In child site, delete all files inside objmgr.box, objmgr.box\INCOMING, objmgr.box\INCOMING\retry & objmgr.box\INCOMING\retry\Bad.
2.    Run below SQL query to clean the updates information from child site DB.
 
We need to run a clean-up process using the below SQL query.
================================
BEGIN TRANSACTION
 
DECLARE @SiteCode varchar(8)
DECLARE @RowCount int, @Err int, @TotalRowCount int
SELECT @SiteCode=ThisSiteCode from SMSData
 
PRINT N'Step 1 - Deleting the update sources'
 
delete from CI_UpdateSources where UpdateSourceName = 'WSUS Enterprise Server'
 
PRINT N'Step 2 - Deleting rows of type 1 and 6'
 
delete CIR from CI_ConfigurationItemRelations CIR
left join CI_ConfigurationItems cci on cci.CI_ID = CIR.FromCI_ID
where cci.CIType_ID in (1, 8)
 
delete CIR from CI_ConfigurationItemRelations CIR
left join CI_ConfigurationItems cci on cci.CI_ID = CIR.ToCI_ID
where cci.CIType_ID in (1, 8)
 
set rowcount 1000
 
delete from CI_ConfigurationItems Where CIType_ID in (1) and SourceSite <>
@SiteCode
SET @TotalRowCount=@@RowCount
 
IF @@ERROR!=0 GOTO exiterror
 
while (1=1)
begin
Delete from CI_ConfigurationItems Where CIType_ID in (1) and SourceSite <>
@SiteCode
SELECT @RowCount=@@ROWCOUNT, @Err=@@ERROR
SET @TotalRowCount=@TotalRowCount + @RowCount
 
IF @Err!=0 GOTO exiterror
IF @RowCount = 0 break
 
PRINT N'Looping... Rows deleted so far:'
PRINT @TotalRowCount
end
 
PRINT N'Step 3 - Deleting rows of type 8'
 
set rowcount 1000
 
delete from CI_ConfigurationItems Where CIType_ID = 8
SET @TotalRowCount=@@RowCount
 
IF @@ERROR!=0 GOTO exiterror
 
while (1=1)
begin
Delete from CI_ConfigurationItems Where CIType_ID = 8
SELECT @RowCount=@@ROWCOUNT, @Err=@@ERROR
SET @TotalRowCount=@TotalRowCount + @RowCount
 
IF @Err!=0 GOTO exiterror
IF @RowCount = 0 break
 
PRINT N'Looping... Rows deleted so far:'
PRINT @TotalRowCount
end
 
PRINT N'Step 4 - Running the SP...'
 
set rowcount 0
update CI_SDMPackages set IsDeleted = 1
where SourceSite is not NULL and SDMPackageName not like 'ScopeID%' and
SDMPackageName not like '%GLOBAL%'
IF @Err!=0 GOTO exiterror
 
exec sp_DeleteOldSDMPackageData 0
IF @Err!=0 GOTO exiterror
 
GOTO exitok
 
exiterror:
 
PRINT N'Error:'
PRINT @@ERROR
 
exitok:
set rowcount 0
 
if @@ERROR = 0 COMMIT TRANSACTION else ROLLBACK TRANSACTION
================================
.
1.    Stop SMS Executive and Site component manager service on Child site.
2.    On the child site navigate to <SCCM installation drive\location>\Bin\i386 rename the DLL -> objreplmgr.dll to objreplmgr.dll.old
3.    Start the Site component manager service on Child site, SMS Executive service will be started automatically by site comp service.
 
4.    Force a resync of the updates data objects by dropping a <childsitecode>.sha file into the Central site's
5.    Once the SHA file disappear, wait for 1 – 2 hour and proceed with next step.
6.    Stop SMS Executive and Site component manager service on Child site.
7.    On the child site navigate to <SCCM installation drive\location>\Bin\i386 rename the DLL -> objreplmgr.dll.old to objreplmgr.dll
8.    Start the Site component manager service on Child site, SMS Executive service will be started automatically by site comp service
 
 
 

Tuesday, October 8, 2013

Software Updates That Require Multiple Reboots may Cause Task Sequence Failure within Configuration Manager

Today Microsoft released a new KB targeting problems with the Install Software Updates hanging when you use the Install Software Updates step in a Task Sequence. This issue has been around since Configuration Manager 2007 and is still an issue in Configuration Manager 2012 with some updates.
Software Updates That Require Multiple Reboots may Cause Task Sequence Failure within Configuration Manager“ 
The KB article is applicable both to Configuration Manager 2007 and 2012. Keep an eye on the KB above as it will be updated with more updates as they are reported, that will save a lot of troubleshooting time!
Symptoms:
“If a Configuration Manager Task Sequence that leverages the Install Software Updates step installs a software update that triggers multiple reboots, the task sequence can fail to complete successfully.”
Cause:
The first reboot initiated by the software update is properly controlled by the Task Sequence. However the second reboot request is initiated by a Windows component (typically Component-Based Servicing) and therefore not controlled by the Task Sequence.
Resolution:
“To resolve this issue, it is recommended that any updates that require dual reboots be applied using the normal Software Updates feature of Configuration Manager instead of Task Sequences. The following software updates have been reported as requiring multiple reboots. This KB will be updated as more updates are reported.