【问题标题】:Error on restoring Actor Backup - Method not found: 'Void System.Fabric.RestoreSettings..ctor(Boolean, Boolean)'恢复 Actor 备份时出错 - 找不到方法:'Void System.Fabric.RestoreSettings..ctor(Boolean, Boolean)'
【发布时间】:2017-09-15 19:07:08
【问题描述】:

尝试恢复 ActorService 的备份并收到以下错误:Method not found: 'Void System.Fabric.RestoreSettings..ctor(Boolean, Boolean)' 没有内在的例外。

这是一个自定义actor服务,扩展ActorService并实现扩展IActorService的接口

我检查了传入的备份文件夹,它是有效的并且里面有备份。鉴于它已恢复,我认为它无关紧要,但这是从 Azure blob 存储中检索到的备份

这是引发异常的行:

await restoreCtx.RestoreAsync(restoreRescription, cancellationToken);

这是它所在的方法:

protected override async Task<bool> OnDataLossAsync(RestoreContext restoreCtx, CancellationToken cancellationToken)
        {

            try
            {
                string backupFolder;    

                backupFolder = await this.backupManager.RestoreLatestBackupToTempLocation(cancellationToken);                       

                RestoreDescription restoreRescription = new RestoreDescription(backupFolder, RestorePolicy.Force);

                await restoreCtx.RestoreAsync(restoreRescription, cancellationToken);    

                DirectoryInfo tempRestoreDirectory = new DirectoryInfo(backupFolder);
                tempRestoreDirectory.Delete(true);

                return true;
            }
            catch (Exception e)
            {
                ActorEventSource.Current.Message("Restoration failed: " + "{0} {1}" + e.GetType() + e.Message);

                throw;
            }
        }

【问题讨论】:

  • 通常一个 Method not found 异常是由使用比运行它们的 SF 运行时更新的 SF Nuget 包的版本引起的。检查您已安装的 SF 运行时版本,并确保次要版本大于或等于您正在使用的 SF NuGet 包。例如,5.4 运行时支持 NuGet 包 2.4 及更低版本,但不支持 2.5。
  • @VaclavTurecek 成功了,非常感谢,这是阻止 Actor 备份工作的最后一个小问题!
  • 酷。顺便说一句,这会发生,因为有时我们需要向运行时添加新功能以支持 SDK 中的新功能。因此,我们不能保证其中一个 NuGet 包的新版本将始终在较旧的运行时上运行。但是您始终可以使用最新的运行时,而无需更新您的 NuGet 包以匹配,它们应该可以继续工作。

标签: azure-service-fabric service-fabric-actor


【解决方案1】:

正如@VaclavTurecek 所建议的,问题在于Service Fabric Nuget 包是安装在服务器上的运行时之前的版本(在本例中是我的本地计算机)。通过 Web 平台安装程序更新已解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-29
    • 1970-01-01
    相关资源
    最近更新 更多