Die Core Leute

Warning: This blog is not maintained any more (no update of content or links – as well as information are might deprecated / not valid any more).

Memory Leak verursacht von dem Remote Registry Dienst unter Windows 8, 8.1 und Server 2012, 2012R2

[Deutsch] Szenario:

Unter unbewussten Situationen kann es dazu kommen, dass nach 10 Minuten nachdem das System hochgefahren wird, ein Memory Leak stattfindet.

Ursache dafür kann der Remote Registry Dienst sein.

Seit Windows 8, ist das Verhalten für den Remote Registry, by design so, dass dieser nach 10 Minuten Inaktivität gestoppt wird, nachdem die Verbindung den Idle Status erreicht.

Ein KB Artikel existiert schon, ist leider nur auf Japanisch verfügbar:

https://support.microsoft.com/en-us/kb/2921969/ja

Im Task Manager kann man bemerken, dass der Remote Registry Dienst und dessen svchost.exe nicht sehr viel Speicher verwendet zB:

Auch wenn man das Service in einem selbständigen svchost.exe isoliert – wird nicht angezeigt, dass dieser viel Speicher verbraucht.

Man kann aber bemerken, dass der verfügbare Speicher ständig absinkt, bis die Maschine einfriert.

Wenn man den Remote Registry Dienst stoppt, steigt der Speicher nicht mehr an, sondern bleibt konstant, bei dem Wert bei dem es sich letztens befand.

Nur ein Neustart des Systems würde den Speicher wieder in den normalen Grenzen bringen.

Workaround:

=============================

Setzen sie folgenden RegistryWert:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RemoteRegistry\DisableIdleStop

Auf den Wert 00000001

Als Default Wert ist die 00000000 eingerichtet.

============================

Damit steigt der Speicherverbrauch durch den RemoteRegistry Service nicht mehr an.

 

[Englisch] Szenario:


Under unknown circumstances, you may encounter the issue, that after approximately 10 Minutes System Up-time a Memory Leak occurs.

The cause of this might be the Remote Registry Service.

Starting with Windows 8 and newer OS systems, the behavior of the Remote Registry service is designed to stop once the 10 minutes idle connection has been reached.

A KB article is already available, unfortunately only in Japanese:

https://support.microsoft.com/en-us/kb/2921969/ja

You can notice in task manager, that the Remote Registry and the hosting svchost.exe are not necessarily consuming lots of memory:

Even after isolating the service in his own svchost.exe  – you cannot see the high consumption.

What can be observed, are the available GB which are constantly decreasing until the system hangs.

If the Remote Registry service is being stopped, the Memory will remain constant and not sink back to normal. This will happen only after a system restart.

The current analysis have shown, the root cause is a error in the Endpoint Mapper Logic component.

As there was a easy workaround found, we predict that there will be no fix published, but the issue will be resolved in future OS systems.

Workaround:

=============================

Set the below Registry Key:

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RemoteRegistry\DisableIdleStop

set on: 00000001

As default 00000000 is selected.

============================

Applies for:

  • Windows 8
  • Windows 8.1
  • Windows Server 2012 Datacenter
  • Windows Server 2012 R2 Datacenter
  • Windows Server 2012 R2 Standard
  • Windows Server 2012 Standard

Happy Troubleshooting

Thanks,

Carmina