Usuário com melhor resposta
Microsoft Exchange Information Store worker process (9344) has encountered an unexpected database error (Illegal duplicate key)

Pergunta
-
Boa dia, tenho o mailbox database a trabalhar e na maioria dos casos as contas de email conseguem trabalhar, mais tenho outras nas que não conseguem enviar ni receber emails, quando verifico os evento no servidor encontro o seguinte erro:
Category: Physical Access Message: Microsoft Exchange Information Store worker process (9344) has encountered an unexpected database error (Illegal duplicate key) for database 'Mailbox Database 1776635055' with a call stack of
em Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetTableOperator.Insert(IList`1 columns, IList`1 values, Column identityColumnToFetch, Boolean unversioned, Boolean ignoreDuplicateKey, Object& identityValue)
em Microsoft.Exchange.Server.Storage.PhysicalAccessJet.JetInsertOperator.ExecuteScalar()
em Microsoft.Exchange.Server.Storage.LazyIndexing.LogicalIndex.EmptyAndRepopulateIndex(Context context, GenerateDataAccessOperatorEventHandler eventHandlerToPopulateLI)
em Microsoft.Exchange.Server.Storage.LazyIndexing.LogicalIndex.UpdateIndexImpl(Context context, Action repopulateAction, Boolean forceUpdateControl, Boolean canPulseTransaction, Int64 rebuildCost)
em Microsoft.Exchange.Server.Storage.LazyIndexing.LogicalIndex.UpdateIndex(Context context, GenerateDataAccessOperatorEventHandler eventHandlerToPopulateLI, Int64 rebuildCost)
em Microsoft.Exchange.Server.Storage.LogicalDataModel.MessageViewTable.BringIndexesToCurrent(Context context, IList`1 indexList, DataAccessOperator queryPlan)
em Microsoft.Exchange.Server.Storage.StoreCommonServices.ViewTable.GetQueryRowsOperator(Context context, Int32 maxRows, Boolean backwards)
em Microsoft.Exchange.Server.Storage.StoreCommonServices.ViewTable.QueryRows(Context context, Int32 rowCount, Boolean backwards)
em Microsoft.Exchange.Protocols.MAPI.MapiViewTableBase.QueryRows(MapiContext context, Int32 numRows, QueryRowsFlags flags)
em Microsoft.Exchange.Server.Storage.MapiDisp.RopHandler.QueryRows(MapiContext context, MapiViewTableBase view, QueryRowsFlags flags, Boolean useForwardDirection, UInt16 rowCount, QueryRowsResultFactory resultFactory)
em Microsoft.Exchange.Server.Storage.MapiDisp.RopHandlerBase.QueryRows(IServerObject serverObject, QueryRowsFlags flags, Boolean useForwardDirection, UInt16 rowCount, QueryRowsResultFactory resultFactory)
em Microsoft.Exchange.RpcClientAccess.Parser.RopQueryRows.InternalExecute(IServerObject serverObject, IRopHandler ropHandler, ArraySegment`1 outputBuffer)
em Microsoft.Exchange.RpcClientAccess.Parser.InputRop.Execute(IConnectionInformation connection, IRopDriver ropDriver, ServerObjectHandleTable handleTable, ArraySegment`1 outputBuffer)
em 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)
em Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.Execute(ArraySegment`1[] inputBufferArray, ArraySegment`1 outputBuffer, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut)
em Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.<>c__DisplayClass9.<DoRpc>b__6(MapiContext operationContext, MapiSession& session, Boolean& deregisterSession, AuxiliaryData auxiliaryData)
em 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)
em Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.DoRpc(IExecutionDiagnostics executionDiagnostics, IntPtr& contextHandle, ArraySegment`1[] ropInArraySegments, ArraySegment`1 ropOut, Int32& sizeRopOut, ArraySegment`1 auxIn, ArraySegment`1 auxOut, Int32& sizeAuxOut, Boolean fakeRequest, Byte[]& fakeOut)
em Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcDoRpc(MapiExecutionDiagnostics executionDiagnostics, IntPtr& sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
em 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)
em Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.<>c__DisplayClass17.<EcPoolSessionDoRpc>b__14()
em Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch[T](TryDelegate tryDelegate, GenericFilterDelegate filterDelegate, GenericCatchDelegate catchDelegate, T state)
em Microsoft.Exchange.Server.Storage.Common.WatsonOnUnhandledException.Guard(IExecutionDiagnostics executionDiagnostics, TryDelegate body)
em Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc(IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment`1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
em EcPoolSessionDoRpcRpc.EcDispatchCall(EcPoolSessionDoRpcRpc* , SafeRpcAsyncStateHandle pAsyncState, IPoolRpcServer server)
em PoolRpcServer_Wrapper.InternalExecute(PoolRpcServer_Wrapper* , SafeRpcAsyncStateHandle pAsyncState)
em Microsoft.Exchange.Rpc.ManagedExceptionAsyncCrashWrapper.Execute<class Microsoft::Exchange::Rpc::PoolRpc::SafeEcPoolSessionDoRpcRpcAsyncStateHandle>(ManagedExceptionAsyncCrashWrapper* , _RPC_ASYNC_STATE* pAsyncState)
em 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)terão alguma ideia do que esta acontecer e de como posso correguir a situação?
ja tetei com fazer o backup dos emails em uma das contas e logo apagar a conta no outlook e voltar a criarla, pensei que poderia ter sido um problema de comunicação do Outlook, mais continua =
ja executei o eseutil /g para verificar a integridade e tudo OK
ja executei o eseutil /mh para ver o estado da DB e tudo esta OK
Respostas
-
Victor, voce ja tentou move a mailbox para outra database ignorando (skipping) os erros e fez um novo teste ?
- Sugerido como Resposta Giovani Cr quinta-feira, 27 de fevereiro de 2014 18:11
- Marcado como Resposta Luiz Felipe S. T. Costa quinta-feira, 8 de maio de 2014 18:05