[C#] Unhandled exception when try to recover
See original GitHub issueSometimes I get an unhandled exception when calling Recover() method of FasterKV<Key, Value> class
System.Runtime.Serialization.SerializationException
HResult=0x8013150C
Message=Expecting element ‘ArrayOfstring’ from namespace ‘http://schemas.microsoft.com/2003/10/Serialization/Arrays’… Encountered ‘None’ with name ‘’, namespace ‘’.
Source=System.Private.DataContractSerialization
StackTrace:
at System.Runtime.Serialization.DataContractSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, Boolean verifyObjectName, DataContractResolver dataContractResolver)
at FASTER.core.DataContractObjectSerializer1.Deserialize(T& obj) at FASTER.core.GenericAllocator
2.Deserialize(Byte* raw, Int64 ptr, Int64 untilptr, Record2[] src, Stream stream) at FASTER.core.GenericAllocator
2.AsyncReadPageWithObjectsCallback[TContext](UInt32 errorCode, UInt32 numBytes, Object context)
at FASTER.core.LocalStorageDevice.ReadAsync(Int32 segmentId, UInt64 sourceAddress, IntPtr destinationAddress, UInt32 readLength, DeviceIOCompletionCallback callback, Object context)
at FASTER.core.GenericAllocator`2.AsyncReadPageWithObjectsCallback[TContext](UInt32 errorCode, UInt32 numBytes, Object context)
at FASTER.core.LocalStorageDevice._callback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pNativeOverlapped)
Issue Analytics
- State:
- Created 2 years ago
- Comments:8 (5 by maintainers)
Top GitHub Comments
Thanks for the feedback. Agreed, we will look into how to surface serialization exceptions to end user cleanly. CC @TedHartMS
Thanks, We will try using this fix in our product. Anyway I think exception which client cannot catch in try catch block is not good