VDFS replication on a slave server halts due to an issue in the RPC runtime library

This article addresses the situation when the replication process on a VDFS slave server halts due to a known issue in the Microsoft Remote Procedure Call (RPC) runtime library.

Symptoms

One or multiple VDFS slave repositories stop receiving new revisions from a corresponding master repository. The replication process does not recover even though the VisualSVN Distributed File System service (vdfssvc.exe) is running on the affected slave server. The network activity of the service may be ceased or significantly reduced. Attempting to restart or stop the service results in a timeout error. Calling the Sync-SvnRepository PowerShell cmdlet does not complete and does not change the state of the slave repository. Killing the service process or restarting the server may cause the replication process to recover, but only temporarily.

The problem is more likely to occur if the network connection between the master and slave servers is unstable.

If you use VisualSVN Server 4.3.3 or later, the following warning will be shown in the VisualSVN Server Replication log on the server with the affected slave repository:

The RPC runtime library (version [...]) on this computer has an issue that can cause VisualSVN Distributed File System service to malfunction.
Tip
You can find the VisualSVN Server Replication log under the Applications and Services Logs node in the Windows Event Viewer. Read the KB28: Where VisualSVN Server logs are stored article for more information.

Cause

The problem is caused by an issue in the Microsoft Remote Procedure Call (RPC) runtime library.

The issue is present in the following versions of Windows Server:

  • Windows Server 2019 (without KB4592440)
  • Windows Server 2016

The issue is also present in the following non-LTSC versions of Windows Server:

  • Windows Server version 20H2 (without KB4592438)
  • Windows Server version 2004 (without KB4592438)
  • Windows Server version 1909 (without KB4592449)
  • Windows Server version 1903 (without KB4592449)
  • Windows Server version 1809 (without KB4592440)
  • Windows Server version 1803
  • Windows Server version 1709
  • Windows Server version 1703
  • Windows Server version 1607

Resolution

If you are experiencing this issue, please determine the Windows version by running winver and follow instructions from the corresponding section below.

Resolution for Windows Server 2019

  1. Install the KB4592440 update on the server.
  2. Restart the VisualSVN Distributed File System service (vdfssvc.exe).

Resolution for Windows Server 2016

Please consider upgrading your server to Windows Server 2019 or later. If the upgrade is not possible in your environment, contact the VisualSVN support team at support@visualsvn.com for a custom resolution procedure.

Resolution for non-LTSC versions of Windows Server

  • Windows Server version 20H2:
    Install the KB4592438 update and restart the VisualSVN Distributed File System service.
  • Windows Server version 2004:
    Install the KB4592438 update and restart the VisualSVN Distributed File System service.
  • Windows Server version 1909:
    Install the KB4592449 update and restart the VisualSVN Distributed File System service.
  • Windows Server version 1903:
    Install the KB4592449 update and restart the VisualSVN Distributed File System service.
  • Windows Server version 1809:
    Install the KB4592440 update and restart the VisualSVN Distributed File System service.
  • Windows Server version 1803:
    This Windows version does not have an available fix for the underlying issue with the RPC runtime library.
    Please consider upgrading your server to Windows Server 2019 or later.
  • Windows Server version 1709:
    This Windows version does not have an available fix for the underlying issue with the RPC runtime library.
    Please consider upgrading your server to Windows Server 2019 or later.
  • Windows Server version 1703:
    This Windows version does not have an available fix for the underlying issue with the RPC runtime library.
    Please consider upgrading your server to Windows Server 2019 or later.
  • Windows Server version 1607:
    This Windows version does not have an available fix for the underlying issue with the RPC runtime library.
    Please consider upgrading your server to Windows Server 2019 or later.
Last Modified: