Problem Overview
WinCC V7.2 Runtime (RT) systems deployed for 24/7 operation may exhibit a symptom where the "Data Manager Runtime" appears frozen at activation. The process CCRtsLoader.exe does not complete initialization, leaving the operator station wedged for 30 to 40 minutes before the runtime eventually activates, or worse, the process aborts and the user receives a "Data Manager has stopped working" dialog from Windows Error Reporting.
In a continuous-process environment (power, water, refinery, pharmaceutical) this hang is unacceptable because the operator loses trend, alarm, and archive visibility during the stall. The defect is documented against WinCC V7.2 without later service packs and is corrected by installing the cumulative WinCC V7.2 Update 10 package. For systems that already run Update 10 but still exhibit the hang, the next diagnostic step is to capture a manual user-mode memory dump (userdump) of CCRtsLoader.exe during the stalled window and submit it to Siemens Technical Support via a Service Request.
Affected Versions
| WinCC Version | Internal Build | Loader Status | Remediation |
|---|---|---|---|
| WinCC V7.2 (baseline) | 7.2.0.0 | Affected by CCRtsLoader hang | Install Update 10 |
| WinCC V7.2 + Update 1-9 | 7.2.0.1 - 7.2.0.9 | Partial fixes; hang may still occur | Install Update 10 |
| WinCC V7.2 + Update 10 | 7.2.0.10 | Loader regression resolved | Capture dump if persistent |
| WinCC V7.3 / V7.4 / V7.5 | 7.3.x - 7.5.x | Different process tree (not CCRtsLoader) | Not affected by this article |
Symptom Details
The hang presents with one or more of the following user-visible signals:
- The "Data Manager Runtime" splash dialog persists and the progress bar does not advance for 30 to 40 minutes.
- The Windows Error Reporting dialog appears with text similar to "Data Manager has stopped working" or "CCRtsLoader.exe has stopped working. Windows is checking for a solution to the problem."
- The WinCC Explorer taskbar icon shows the runtime as "Activating" indefinitely.
- The Microsoft SQL Server Express "WINCC" instance shows status "Starting" or "Recovery Pending" in SQL Server Configuration Manager for the duration of the stall.
- CPU consumption on the SQL Server Express WINCC instance remains at 0-5% while the loader is stalled, indicating the loader is blocked rather than busy.
- The Windows Application event log records a sequence of MSSQLSERVER Information event ID 17137 (database starting) and Warning event ID 9003 (database recovery failed) messages during the stall window.
- The WinCC alarm window remains empty even after forced tag value changes through the internal WinCC tag simulator.
- Operators lose all historian trend visibility for the duration of the stall.
If any of these conditions appear together, treat the host as affected by the V7.2 baseline loader regression.
Root Cause Analysis
CCRtsLoader.exe is the WinCC V7.2 process that initializes the central data manager of the runtime database (Logging, Tag Logging, Alarm Logging, and the underlying Microsoft SQL Server Express / WinCC instance). At startup the loader performs several blocking tasks in sequence:
- Mounts the configured project path and resolves the project GUID against the project database under
C:\Siemens\WinCC\WinCCProjects\<ProjectName>\. - Establishes connections to the project database via ODBC data source "CC_WINCC_72_<Project>" configured in the Windows ODBC Data Source Administrator.
- Loads the Tag Logging (CTL) and Alarm Logging (CML) components and binds them to the configured archive segments stored under
C:\Siemens\WinCC\ArchiveManager\. - Synchronizes archive configuration with the SQL Server Express instance installed by WinCC (instance name "WINCC", listening on dynamic port).
- Allocates the shared memory segments used for the WinCC process-to-process channel (default name "Global\Siemens.Automation.WinCC").
- Registers the alarm and tag change notification ports with the WinCC process tree (default port 4110 for alarms, 4111 for tag changes).
- Initializes the User Archive component if the project uses user archives (separate shared memory segment).
- Triggers the SQL Server Express recovery sequence if the WINCC instance was not cleanly shut down.
If any of those steps encounters inconsistent configuration, corrupted cached archive segments, or a SQL Server Express instance that has not completed recovery from the previous shutdown, the loader can deadlock against itself or against the SQL Server. The user-visible symptom is the "Data Manager Runtime" splash stuck on screen.
In the V7.2 baseline (without Update 10), Microsoft security patches and SQL Server Express hotfixes shipped after the WinCC V7.2 release introduced a regression in the loader path that was corrected in Update 10. Update 10 is the cumulative roll-up released for WinCC V7.2 and contains fixes for the CCRtsLoader hang, tag logging performance regressions, and several MS SQL / Windows compatibility corrections.
The deadlock is typically between CCRtsLoader.exe holding a critical section while waiting on a SQL Server response that requires the same critical section. The 30-40 minute wait corresponds to the SQL Server connection timeout escalation chain.
Process Tree at Fault
| Process | Function | Typical Start Order |
|---|---|---|
| sqlservr.exe (WINCC instance) | SQL Server hosting the project DB | 1 |
| CCArchiveManager.exe | Archive segment manager | 2 |
| CCRtsLoader.exe | Runtime data manager loader | 3 |
| CCEServer.exe | Event server | 4 |
| PDLRT.exe | Process data link runtime | 5 |
| WinCCExplorer.exe or WinCCRT.exe | Runtime shell | 6 |
If the loader (CCRtsLoader.exe) hangs, CCArchiveManager.exe and PDLRT.exe will be in a waiting state and the WinCC operator shell will not open. This is the standard signature of a Data Manager Runtime stall and is the indicator for the procedure in this article.
To inspect the process tree during a hang:
tasklist /v /fi "imagename eq CCRtsLoader.exe"tasklist /v /fi "imagename eq CCArchiveManager.exe"tasklist /v /fi "imagename eq PDLRT.exe"The "Status" column for each should be "Running"; a status of "Not Responding" on CCArchiveManager.exe or PDLRT.exe confirms that the loader deadlock has propagated.
Prerequisites
Before applying the fix, gather the following:
- WinCC V7.2 installation with administrative rights on the engineering station / server.
- Local Administrator account on the Windows host (required to install updates and create user-mode dumps).
- WinCC V7.2 Update 10 installer available from Siemens Industry Online Support (entry 109476283).
- Internet or terminal access to the Siemens Service Request portal.
- Free disk space for the dump file (typically 1x to 4x the
CCRtsLoader.exeworking set; budget 4-8 GB on the affected volume). - Backup of the WinCC project database: WinCC Explorer -> Project -> Backup.
- Backup of the SQL Server WINCC instance: stop the instance and copy the entire MSSQL\DATA folder.
- Sysinternals Process Explorer (
procexp.exe) orprocdumputility. - 7-Zip for compressing dumps that exceed upload limits.
Solution Path A - Install WinCC V7.2 Update 10
The primary remediation for the hang is to bring the installation up to Update 10. This is the cumulative fix pack Siemens released specifically to address the loader regression. The installer is delivered through the Siemens support entry "SIMATIC WinCC V7.2 including Updates" referenced in entry 109476283.
Pre-Update Backup Procedure
- Stop all WinCC services from WinCC Explorer.
- Stop the WinCC SQL Server instance from SQL Server Configuration Manager.
- Stop the CCArchiveManager and CCEServer Windows services.
- Back up the project directory:
xcopy /E /H /K "C:\Siemens\WinCC\Projects\<ProjectName>" "D:\Backup\WinCC_Project\" - Back up the WinCC SQL Server data files:
xcopy /E /H /K "C:\Siemens\WinCC\SQLData" "D:\Backup\WinCC_SQL\" - Export the WinCC project as a WinCC Backup file (*.zip) using WinCC Explorer -> Project -> Backup.
- Record the installed WinCC build: WinCC Explorer -> Help -> About.
- Record the SQL Server Express version: open SQL Server Management Studio Express, connect to WINCC instance, execute
SELECT @@VERSION. - Record the Windows version: run
winverat a command prompt. - Record the .NET version:
reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" /v Release.
Update Installation Procedure
- Stop all WinCC services and exit the WinCC Explorer / Runtime.
- Stop the WinCC SQL Server instance ("WINCC" instance) and the CCArchiveManager service.
- Close all instances of
CCRtsLoader.exeandCCEServer.exevia Task Manager. - Mount the Update 10 image or extract the contents to a local folder.
- Launch Setup.exe as Administrator from the update folder.
- Select "Update existing installation" and choose the WinCC V7.2 installation.
- Accept the license terms and follow the wizard through the database migration step. The installer will upgrade the WinCC SQL Server database schema from the V7.2 baseline to the V7.2 Update 10 schema.
- Reboot the workstation when prompted.
- Verify the installed version by opening WinCC Explorer and navigating to Help -> About. The build string should report WinCC V7.2 + Update 10 (internal build 7.2.0.10).
Update Rollback Considerations
WinCC V7.2 Update 10 does not include an automatic uninstaller. If the update introduces a new defect not present in the baseline, the rollback procedure is:
- Stop all WinCC services.
- Stop the WINCC SQL Server instance.
- Restore the project directory and SQL data files from the backup created in the Pre-Update Backup Procedure.
- Restore the registry hive
HKLM\SOFTWARE\Siemens\WinCCfrom the backup. - Reboot and verify WinCC Explorer opens against the baseline V7.2.
Contact Siemens Support before performing a rollback; in most cases the correct path is to capture a dump against the new build rather than revert.
Solution Path B - Capture a Diagnostic Memory Dump
If the hang persists after Update 10, or if the system cannot be taken offline to install updates immediately, capture a user-mode memory dump while the loader is stuck. The dump preserves the call stacks, heap, and module list at the moment of the stall and is the only reliable way for Siemens Technical Support to identify the underlying blocker.
The procedure below uses the Sysinternals Process Explorer tool, which is the standard utility Siemens documents for WinCC diagnostics (entry 45020870).
Capture Procedure (Process Explorer)
- Download Process Explorer from the Microsoft Sysinternals site and extract it to a folder on the WinCC host.
- Launch
procexp.exeas Administrator. - Sort the process list by Name and locate
CCRtsLoader.exe. - Wait for the Data Manager Runtime dialog to appear or for the runtime to be in its 30-40 minute stalled state.
- Right-click
CCRtsLoader.exeand choose "Create Dump" -> "Create Full Dump". Process Explorer writes a .dmp file into its own folder. - Confirm the .dmp file size is non-zero and growing (the write may take several minutes for a full dump of a 1 GB working set).
- Move the .dmp file off the host before any cleanup.
Capture Procedure (procdump command line)
If Process Explorer is not available, use the Sysinternals procdump utility:
procdump -ma CCRtsLoader.exe C:\Dumps\CCRtsLoader.dmpThe -ma flag requests a full dump including all process memory; without it procdump writes a mini-dump that lacks heap data and is unsuitable for loader deadlock analysis.
For multiple captures during a recurring hang, add the -s flag for sequential captures:
procdump -ma -s 30 -n 5 CCRtsLoader.exe C:\Dumps\CCRtsLoader.dmpThis captures 5 full dumps spaced 30 seconds apart and is useful for identifying the deadlock progression.
Capture Procedure (Task Manager Fallback)
On Windows 10 / Windows Server 2016 and later, the built-in Task Manager provides a "Create memory dump file" option from the Details tab. Right-click CCRtsLoader.exe -> "Create memory dump file". The Task Manager fallback produces a smaller mini-dump and is acceptable as a last resort if neither Process Explorer nor procdump is available on the host.
CCRtsLoader.exe until the dump file has fully written and been moved off the host. Killing the process during the dump write will produce a corrupted file that Support cannot analyze.Dump File Characteristics
The .dmp file size will be roughly equal to the working set of the process plus its private bytes, commonly 500 MB to 2 GB for a fully loaded Data Manager. A full dump of a loader with a 1.5 GB working set will produce a .dmp file of approximately 1.5 GB. If the loader has been running for several hours and accumulated historical tag data, the dump may be larger.
Compress the dump with 7-Zip in 7z format before upload:
7z a -mx=5 CCRtsLoader.dmp.7z CCRtsLoader.dmpThe 7z format typically achieves 2:1 to 4:1 compression on memory dumps dominated by repetitive structures (string pools, archive segment metadata).
Escalation to Siemens Technical Support
After capturing the dump, the next step is to open a Service Request through the Siemens Industry Online Support portal.
- Navigate to the Siemens support portal and create a new Service Request.
- Attach the
CCRtsLoader.dmpfile (compressed with 7z). If the file exceeds the upload size limit, split it using split-dump utilities. - Attach the WinCC project backup (WinCC Explorer -> Project -> Backup) so Support can reproduce the loader sequence.
- Include the installed build string from WinCC Explorer -> Help -> About.
- Include the SQL Server Express version (run
SELECT @@VERSIONagainst the WINCC instance). - Include the Windows Event Viewer Application and System logs covering the loader hang window. Export the logs as .evtx files from Event Viewer -> Action -> Save All Events As.
- Reference the WinCC FAQ entry "How do you create a memory dump for diagnostics purposes in WinCC and PCS 7?" (Siemens support entry 45020870) in the SR description so the support engineer can correlate the procedure with the dump.
- Provide the Windows version and build (
winveroutput). - Provide the SQL Server Express cumulative update level.
The Service Request must be created while the original hang is reproducible; do not reboot the host or clear the dump file before submitting.
Diagnostic SQL Queries
Before opening the Service Request, capture the state of the WinCC SQL Server instance. Connect via SQL Server Management Studio Express to the WINCC instance and run:
SELECT name, state_desc, recovery_model_desc, page_verify_option_desc FROM sys.databases WHERE name LIKE 'CC_%';Expected: all rows show state_desc = ONLINE, recovery_model_desc = SIMPLE.
DBCC CHECKDB('CC_<ProjectName>_72') WITH NO_INFOMSGS;Expected: clean output. Errors here indicate archive segment corruption and the loader hang will recur until the archive is repaired or cleared.
SELECT TOP 50 name, type_desc, create_date FROM sys.objects WHERE type IN ('U', 'V') ORDER BY create_date DESC;Expected: standard WinCC project objects (PDE#..., RT#..., UA#...). Unexpected object names may indicate database corruption.
WinCC V7.2 vs WinCC Unified - Loader Behavior
WinCC V7.2 (classic) and the newer WinCC Unified line use different runtime architectures and different loader binaries. WinCC Unified runtime on a PC is started through the SIMATIC Runtime Manager tool (see the TIA Portal cloud documentation at Starting and stopping runtime (RT Unified)). If the affected project is being migrated from V7.2 to Unified, note that:
- The
CCRtsLoader.exeprocess does not exist on Unified PC RT. Unified uses a different process tree (CCUnifiedSvc, CCUnifiedRT). - Startup hangs on Unified are typically resolved by clearing the project cache under
%ProgramData%\Siemens\Automation\WinCCUnified\RTDBand reloading the project. - The Update 10 fix does not apply to Unified; Unified fixes are delivered through TIA Portal updates and WinCC Unified Runtime updates.
If the operator station is running V7.2, do not attempt to migrate or apply Unified updates as a remediation.
Distributed System Considerations
In a WinCC V7.2 distributed server / multi-client topology the loader hang on a single server is contained to that server. The redundancy partner takes over and the clients reconnect automatically. However, the hang on the primary server corrupts the archive segments if the loader aborts during the SQL recovery step.
Sequence to recover a redundant server pair:
- Stop the runtime on the affected server.
- Force failover to the partner (if not already automatic): WinCC Explorer -> Tools -> Redundancy -> Force failover.
- Apply Update 10 to the affected server offline.
- Rejoin the server to the redundant pair.
- Resynchronize the archive segments: WinCC Explorer -> Tools -> Redundancy -> Synchronize archives.
If the partner server also shows the same stall, both servers require Update 10 before the pair can be brought back online.
Verification
After applying Update 10 and restarting the host, perform the following verification sequence:
- Start WinCC Runtime from WinCC Explorer.
- Confirm the Data Manager Runtime splash completes in under 60 seconds.
- Open the WinCC Tag Logging editor and confirm archives are accessible.
- Trigger a tag value change and confirm it is logged.
- Trigger a discrete alarm and confirm it appears in Alarm Logging.
- Open the SQL Server Configuration Manager and confirm the WINCC instance is running.
- Open the SQL Server Management Studio Express instance and run:
SELECT name, state_desc FROM sys.databases WHERE name LIKE 'CC_%'; - Confirm all CC_ databases report state_desc = ONLINE.
- Leave the runtime active for 24 hours and confirm no recurrence of the loader hang.
- Open Performance Monitor and confirm
CCRtsLoader.exehandles remain stable across the 24-hour run. - Confirm CPU and memory consumption on the SQL Server Express WINCC instance remain within the design baseline (typically <10% CPU and <4 GB working set for a mid-sized project).
- Confirm the WinCC alarm window continues to update and that operators can acknowledge and clear alarms.
- Confirm the trend window loads historical data within 5 seconds for the last 8 hours.
If any of the verification steps fail, repeat the dump capture procedure from Solution Path B and open a Service Request.
Troubleshooting Matrix
| Failure Mode | Symptom | Root Cause | Resolution |
|---|---|---|---|
| Hang every activation | 30-40 min stall then OK | V7.2 baseline loader regression | Install Update 10 |
| Hang intermittent | Stall 1 in 5 starts | Archive segment corruption | DBCC CHECKDB, repair, clear |
| Hang followed by crash | Data Manager dialog + WER report | SQL recovery failure | Restore SQL DB from backup |
| Hang on redundancy failover | Both partners stuck | Both servers on baseline V7.2 | Update both servers |
| Hang on user archive import | Stall only after UA import | User archive schema corruption | Recreate user archive tables |
| Hang after Windows update | Stall appeared post-patch | Microsoft SQL CU interaction | Apply Update 10, then test |
| Hang after power loss | First activation after outage | SQL DB in recovery pending | Wait for recovery or DBCC repair |
What is the typical stall duration before WinCC V7.2 Data Manager Runtime activates?
On affected baseline V7.2 installations, the loader hangs for 30 to 40 minutes at activation before the runtime becomes responsive, or it aborts outright with a Windows Error Reporting dialog.
Which cumulative update corrects the CCRtsLoader.exe hang in WinCC V7.2?
WinCC V7.2 Update 10 (internal build 7.2.0.10). It is the cumulative fix pack released for the V7.2 line and includes the loader regression correction along with SQL Server compatibility fixes.
How do I create a memory dump of CCRtsLoader.exe without killing the process?
Use Sysinternals Process Explorer: right-click CCRtsLoader.exe and select "Create Dump" -> "Create Full Dump". Alternative command-line method: procdump -ma CCRtsLoader.exe C:\Dumps\CCRtsLoader.dmp. Task Manager's "Create memory dump file" option is acceptable as a last resort.
Does the Update 10 fix apply to WinCC Unified PC RT?
No. WinCC Unified uses a different runtime architecture with different loader binaries (CCUnifiedSvc, CCUnifiedRT). Unified fixes are delivered through TIA Portal updates, not the V7.2 Update 10 roll-up.
Where is the WinCC SQL Server instance configured after Update 10 is installed?
The Update 10 installer automatically migrates the schema of the WinCC SQL Server Express instance. Verify all CC_ databases are ONLINE by running SELECT name, state_desc FROM sys.databases WHERE name LIKE 'CC_%'; against the WINCC instance in SQL Server Management Studio Express.