MSexchangeIS errors

HI,We had moved a VM with Exchange 2013sp1 and Windows 2012 server from one hypervisor to a new hypervisor (VMware both)

We have used Veeam to replicate the VM (cold replicate).

After restart the replicate VM, exchange was not abled to mount database.

I perform esutil to repair database and move logs folder. so the database was mounting.

But after , we haved some corrupt mailboxes, that I haved repair or restore.

But we have already theses errors on application events (appears each 2 minutes):

Nom du journal :Application
Source :       MSExchangeIS
Date :         09/04/2015 14:46:52
ID de lvnement :1046
Catgorie de la tche :(1)
Niveau :       Erreur
Mots cls :    Classique
Utilisateur :  N/A
Ordinateur :   EXCH2013
Description :
Unexpected error encountered in critical block. Location:(Microsoft.Exchange.Diagnostics.LID), scope: (MailboxShared), callstack: (   Microsoft.Exchange.Server.Storage.StoreCommonServices.Context.OnCriticalBlockFailed(LID lid, CriticalBlockScope criticalBlockScope)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.Context.CriticalBlockFrame.Dispose()
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdateForMessageInsert(Context context, Mailbox mailbox, TopMessage message, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdate(Context context, Mailbox mailbox, TopMessage message, LogicalOperation operation, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.TrackUpdate(Context context, LogicalOperation operation)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.ObjectPropertyBag.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Item.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.SaveChanges(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChangesInternal(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChanges(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.Deliver(MapiContext context, RecipientType recipientType, ExchangeId& mid)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandler.TransportDeliverMessage2(MapiContext context, MapiMessage message, TransportRecipientType transportRecipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandlerBase.TransportDeliverMessage2(IServerObject serverObject, TransportRecipientType recipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.RpcClientAccess.Parser.RopTransportDeliverMessage2.InternalExecute(IServerObject serverObject, IRopHandler ropHandler, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.InputRop.Execute(IConnectionInformation connection, IRopDriver ropDriver, ServerObjectHandleTable handleTable, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.ExecuteRops(List`1 inputArraySegmentList, ServerObjectHandleTable serverObjectHandleTable, ArraySegment`1 outputBuffer, Int32 outputIndex, Int32 maxOutputSize, Boolean isOutputBufferMaxSize, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.Execute(IList`1 inputBufferArray, ArraySegment`1 outputBuffer, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.<>c__DisplayClass9.<DoRpc>b__6(MapiContext operationContext, MapiSession& session, Boolean& deregisterSession, AuxiliaryData auxiliaryData)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.Execute(IExecutionDiagnostics executionDiagnostics, MapiContext outerContext, String functionName, Boolean isRpc, IntPtr& contextHandle, Boolean tryLockSession, String userDn, Int32 sizeInMegabytes, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, ExecuteDelegate executeDelegate)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.DoRpc(IExecutionDiagnostics executionDiagnostics, IntPtr& contextHandle, IList`1 ropInArraySegments, ArraySegment`1 ropOut, Int32& sizeRopOut, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, Boolean fakeRequest, Byte[]& fakeOut)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcDoRpc(MapiExecutionDiagnostics executionDiagnostics, IntPtr& sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc_Unwrapped(MapiExecutionDiagnostics executionDiagnostics, IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.<>c__DisplayClassf.<EcPoolSessionDoRpc>b__c()
   Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch[T](TryDelegate tryDelegate, GenericFilterDelegate filterDelegate, GenericCatchDelegate catchDelegate, T state)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc(IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   EcPoolSessionDoRpcRpc.EcDispatchCall(EcPoolSessionDoRpcRpc* , SafeRpcAsyncStateHandle pAsyncState, IPoolRpcServer server)
   PoolRpcServer_Wrapper.InternalExecute(PoolRpcServer_Wrapper* , SafeRpcAsyncStateHandle pAsyncState)
   Microsoft.Exchange.Rpc.ManagedExceptionAsyncCrashWrapper.Execute<class Microsoft::Exchange::Rpc::PoolRpc::SafeEcPoolSessionDoRpcRpcAsyncStateHandle>(ManagedExceptionAsyncCrashWrapper* , _RPC_ASYNC_STATE* pAsyncState)
   EcPoolSessionDoRpc_Managed(_RPC_ASYNC_STATE* pAsyncState, Void* cpxh, UInt32 ulSessionHandle, UInt32* pulFlags, UInt32 cbIn, Byte* rgbIn, UInt32* pcbOut, Byte** ppbOut, UInt32 cbAuxIn, Byte* rgbAuxIn, UInt32* pcbAuxOut, Byte** ppbAuxOut)

Nom du journal :Application
Source :       MSExchangeIS
Date :         09/04/2015 14:46:52
ID de lvnement :2006
Catgorie de la tche :(2)
Niveau :       Erreur
Mots cls :    Classique
Utilisateur :  N/A
Ordinateur :   EXCH2013
Description :
Microsoft Exchange Information Store worker process (12632) has encountered an unexpected database error (Microsoft.Isam.Esent.Interop.EsentKeyDuplicateException: Illegal duplicate key
   Microsoft.Isam.Esent.Interop.Server2003.Server2003Api.JetUpdate2(JET_SESID sesid, JET_TABLEID tableid, Byte[] bookmark, Int32 bookmarkSize, Int32& actualBookmarkSize, UpdateGrbit grbit)
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetTableOperator.Insert(IList`1 columns, IList`1 values, Column identityColumnToFetch, Boolean unversioned, Boolean ignoreDuplicateKey, Object& identityValue)) for database 'ITEP Mailbox Database' with a call stack of
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetTableOperator.Insert(IList`1 columns, IList`1 values, Column identityColumnToFetch, Boolean unversioned, Boolean ignoreDuplicateKey, Object& identityValue)
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetInsertOperator.ExecuteScalar()
   Microsoft.Exchange.Server.Storage.PhysicalAccess.DataRow.Insert(IConnectionProvider connectionProvider)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.ObjectPropertyBag.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Item.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.SaveChanges(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdateForMessageInsert(Context context, Mailbox mailbox, TopMessage message, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdate(Context context, Mailbox mailbox, TopMessage message, LogicalOperation operation, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.TrackUpdate(Context context, LogicalOperation operation)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.ObjectPropertyBag.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Item.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.SaveChanges(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChangesInternal(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChanges(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.Deliver(MapiContext context, RecipientType recipientType, ExchangeId& mid)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandler.TransportDeliverMessage2(MapiContext context, MapiMessage message, TransportRecipientType transportRecipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandlerBase.TransportDeliverMessage2(IServerObject serverObject, TransportRecipientType recipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.RpcClientAccess.Parser.RopTransportDeliverMessage2.InternalExecute(IServerObject serverObject, IRopHandler ropHandler, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.InputRop.Execute(IConnectionInformation connection, IRopDriver ropDriver, ServerObjectHandleTable handleTable, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.ExecuteRops(List`1 inputArraySegmentList, ServerObjectHandleTable serverObjectHandleTable, ArraySegment`1 outputBuffer, Int32 outputIndex, Int32 maxOutputSize, Boolean isOutputBufferMaxSize, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.Execute(IList`1 inputBufferArray, ArraySegment`1 outputBuffer, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.<>c__DisplayClass9.<DoRpc>b__6(MapiContext operationContext, MapiSession& session, Boolean& deregisterSession, AuxiliaryData auxiliaryData)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.Execute(IExecutionDiagnostics executionDiagnostics, MapiContext outerContext, String functionName, Boolean isRpc, IntPtr& contextHandle, Boolean tryLockSession, String userDn, Int32 sizeInMegabytes, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, ExecuteDelegate executeDelegate)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.DoRpc(IExecutionDiagnostics executionDiagnostics, IntPtr& contextHandle, IList`1 ropInArraySegments, ArraySegment`1 ropOut, Int32& sizeRopOut, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, Boolean fakeRequest, Byte[]& fakeOut)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcDoRpc(MapiExecutionDiagnostics executionDiagnostics, IntPtr& sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc_Unwrapped(MapiExecutionDiagnostics executionDiagnostics, IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.<>c__DisplayClassf.<EcPoolSessionDoRpc>b__c()
   Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch[T](TryDelegate tryDelegate, GenericFilterDelegate filterDelegate, GenericCatchDelegate catchDelegate, T state)
   Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc(IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
   EcPoolSessionDoRpcRpc.EcDispatchCall(EcPoolSessionDoRpcRpc* , SafeRpcAsyncStateHandle pAsyncState, IPoolRpcServer server)
   PoolRpcServer_Wrapper.InternalExecute(PoolRpcServer_Wrapper* , SafeRpcAsyncStateHandle pAsyncState)
   Microsoft.Exchange.Rpc.ManagedExceptionAsyncCrashWrapper.Execute<class Microsoft::Exchange::Rpc::PoolRpc::SafeEcPoolSessionDoRpcRpcAsyncStateHandle>(ManagedExceptionAsyncCrashWrapper* , _RPC_ASYNC_STATE* pAsyncState)
   EcPoolSessionDoRpc_Managed(_RPC_ASYNC_STATE* pAsyncState, Void* cpxh, UInt32 ulSessionHandle, UInt32* pulFlags, UInt32 cbIn, Byte* rgbIn, UInt32* pcbOut, Byte** ppbOut, UInt32 cbAuxIn, Byte* rgbAuxIn, UInt32* pcbAuxOut, Byte** ppbAuxOut)

Nom du journal :Application
Source :       MSExchangeIS
Date :         09/04/2015 14:44:52
ID de lvnement :1002
Catgorie de la tche :(1)
Niveau :       Erreur
Mots cls :    Classique
Utilisateur :  N/A
Ordinateur :   EXCH2013
Description :
Unhandled exception (Microsoft.Exchange.Server.Storage.Common.DuplicateKeyException: JetTableOperator.Insert ---> Microsoft.Isam.Esent.Interop.EsentKeyDuplicateException: Illegal duplicate key
   Microsoft.Isam.Esent.Interop.Server2003.Server2003Api.JetUpdate2(JET_SESID sesid, JET_TABLEID tableid, Byte[] bookmark, Int32 bookmarkSize, Int32& actualBookmarkSize, UpdateGrbit grbit)
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetTableOperator.Insert(IList`1 columns, IList`1 values, Column identityColumnToFetch, Boolean unversioned, Boolean ignoreDuplicateKey, Object& identityValue)
   --- Fin de la trace de la pile d'exception interne ---
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetTableOperator.Insert(IList`1 columns, IList`1 values, Column identityColumnToFetch, Boolean unversioned, Boolean ignoreDuplicateKey, Object& identityValue)
   Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetInsertOperator.ExecuteScalar()
   Microsoft.Exchange.Server.Storage.PhysicalAccess.DataRow.Insert(IConnectionProvider connectionProvider)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.ObjectPropertyBag.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Item.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.SaveChanges(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdateForMessageInsert(Context context, Mailbox mailbox, TopMessage message, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Conversations.TrackConversationUpdate(Context context, Mailbox mailbox, TopMessage message, LogicalOperation operation, ModifiedSearchFolders modifiedSearchFolders)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.TrackUpdate(Context context, LogicalOperation operation)
   Microsoft.Exchange.Server.Storage.StoreCommonServices.ObjectPropertyBag.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Item.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.Flush(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.Message.SaveChanges(Context context)
   Microsoft.Exchange.Server.Storage.LogicalDataModel.TopMessage.SaveChanges(Context context, SaveMessageChangesFlags flags)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChangesInternal(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.SaveChanges(MapiContext context, MapiSaveMessageChangesFlags saveFlags, ExchangeId& newMid)
   Microsoft.Exchange.Protocols.MAPI.MapiMessage.Deliver(MapiContext context, RecipientType recipientType, ExchangeId& mid)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandler.TransportDeliverMessage2(MapiContext context, MapiMessage message, TransportRecipientType transportRecipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.Server.Storage.MapiDisp.RopHandlerBase.TransportDeliverMessage2(IServerObject serverObject, TransportRecipientType recipientType, TransportDeliverMessage2ResultFactory resultFactory)
   Microsoft.Exchange.RpcClientAccess.Parser.RopTransportDeliverMessage2.InternalExecute(IServerObject serverObject, IRopHandler ropHandler, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.InputRop.Execute(IConnectionInformation connection, IRopDriver ropDriver, ServerObjectHandleTable handleTable, ArraySegment`1 outputBuffer)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.ExecuteRops(List`1 inputArraySegmentList, ServerObjectHandleTable serverObjectHandleTable, ArraySegment`1 outputBuffer, Int32 outputIndex, Int32 maxOutputSize, Boolean isOutputBufferMaxSize, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.Execute(IList`1 inputBufferArray, ArraySegment`1 outputBuffer, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.<>c__DisplayClass9.<DoRpc>b__6(MapiContext operationContext, MapiSession& session, Boolean& deregisterSession, AuxiliaryData auxiliaryData)
   Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.Execute(IExecutionDiagnostics executionDiagnostics, MapiContext outerContext, String functionName, Boolean isRpc, IntPtr& contextHandle, Boolean tryLockSession, String userDn, Int32 sizeInMegabytes, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, ExecuteDelegate executeDelegate)).

CAn you help us to resolv this problem

April 9th, 2015 8:58am

Why replicate Exchange with Veeam?  Why not configure Exchange in a DAG and let the DAG handle replication natively? 
Free Windows Admin Tool Kit Click here and download it now
April 9th, 2015 11:48am

Hi,

Because we just change the host of the hypervisor. So we need only to move the VM from one host to another.

I have open a case on MS Support...

April 10th, 2015 5:12am

Hi,

Personal suggestion, please create a new DB and move all the mailboxes including discovery search mailbox, federation & arbitration mailbox to the new mailbox database to have a try.

Regards,

Free Windows Admin Tool Kit Click here and download it now
April 13th, 2015 5:28am

Hi,

Any updates?

Regards,

April 14th, 2015 10:45pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics