使用FailFast

时间:2016-08-11 09:47:45

标签: replication azure-service-fabric

我们正在体验一种特定的状态服务,该服务无法完全“绿色”,分区不断重组,我们在日志中没有看到任何错误迹象。经过大量的挖掘后,我们在其中一个WM上发现了一些可疑的东西(粘贴在下面)

应用程序:(隐藏).exe 框架版本:v4.0.30319 描述:应用程序通过System.Environment.FailFast(字符串消息)请求进程终止。 消息:((copyMode& CopyMode.FalseProgress)== 0)|| (sourceStartingLsn< targetStartingLsn)。源头开始lsn:2018,目标开始于lsn:2018 堆: 在System.Environment.FailFast(System.String) 在Microsoft.ServiceFabric.Replicator.Utility.CodingError(System.String,System.Object []) 在Microsoft.ServiceFabric.Replicator.Utility.Assert(Boolean,System.String,...) 在Microsoft.ServiceFabric.Replicator.LoggingReplicator.GetLogRecordsToCopy(Microsoft.ServiceFabric.Replicator.ProgressVector,System.Fabric.Epoch,Microsoft.ServiceFabric.Replicator.LogicalSequenceNumber,Microsoft.ServiceFabric.Replicator.LogicalSequenceNumber,Int64,Int64,Microsoft.ServiceFabric.Replicator .LogicalSequenceNumber ByRef,Microsoft.ServiceFabric.Replicator.LogicalSequenceNumber ByRef,Microsoft.ServiceFabric.Data.IAsyncEnumerator' 1 ByRef,Microsoft.ServiceFabric.Replicator.BeginCheckpointLogRecord ByRef) 在Microsoft.ServiceFabric.Replicator.LoggingReplicatorCopyStream + d__3.MoveNext() 在System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start [[Microsoft.ServiceFabric.Replicator.LoggingReplicatorCopyStream + d _ 3,Microsoft.ServiceFabric.Data.Impl,Version = 5.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35]](d__3 ByRef) 在Microsoft.ServiceFabric.Replicator.LoggingReplicatorCopyStream.GetNextAsync(System.Threading.CancellationToken) 在System.Fabric.StateProviderBroker + AsyncEnumerateOperationDataBroker.b__8(System.Threading.CancellationToken) 在System.Fabric.Interop.Utility.WrapNativeAsyncMethodImplementation(System.Func`2,IFabricAsyncOperationCallback,System.String,System.Fabric.Interop.InteropApi)

我们不确定该怎么做。似乎与状态复制相关,但我们认为我们没有改变与服务状态相关的任何内容。由于服务是通过FailFast退出的,我们没有机会在我们的代码中做任何事情来解决这个问题所以我们现在基本上停留在这个循环中(幸运的是在非Live环境中但仍然......)

有没有人知道这与具体有什么关系以及我们如何恢复服务和数据?

0 个答案:

没有答案