Freigeben über


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

Comments

  • Anonymous
    July 21, 2015
    Danke für den Tipp!

    Wir kämpften mit dem Problem seit Anfang April und konnten dem nicht Herr werden. Wir fanden nur einen anderen Workaround (VM mit nicht verbundener NIC starten -> ca. 10 Minuten nach der Anmeldung warten -> NIC wieder verbinden). Damit konnten wir manchmal bei unserem Server bis zu einige Tage ohne MemoryLeaks durchhalten. Manchmal hat es jedoch nur einige Stunden gedauert bis der wieder auftrat...

    Nach diesem Tipp sind wir schon über 7 Tage up mit nur 1,2GB RAM!
  • Anonymous
    July 26, 2015
    Glad to help Tomas ;)
  • Anonymous
    September 06, 2015
    My probably is with my windows 7 i cont get no internet it keeps saying there is no webpage
  • Anonymous
    March 17, 2016
    Same problem here. I could watch my server eat 1 MB paged pool RAM per second. That was consumed the svchost.exe where the Remote Registry service is living in.This is a freshly installed Domain Controller 2012r2 and DFS namespace server. It has the hardware management tools installed, but nothing else. I am surprised that a bug like this doesn't get fixed by an update or at least a hotfix. Oh well, guess i will try the registry workaround.