Dieser Fehler kann sich auf zweierlei Art und Weise bemerkbar machen.
- Wenn Einträge über das Mobile Endgerät gemacht werden (z.B. iPhone), dann werden diese nicht in die Mailbox repliziert. Auf dem Endgerät ist kein Fehler sichtbar, der Eintrag taucht nur nie im Outlook oder OWA auf. Werden Einträge im Outlook gemacht, werden diese ordnungsgemäß auf das Endgerät repliziert.
- Der Fehler kann auch festgestellt werden, wenn kein Activesync verwendet wird. Wenn Einträge im OWA erstellt werden, dann können diese nicht gespeichert werden und folgender Fehler ist im OWA sichtbar:
Request
Url: https://xxx.xxx.xxx:443/owa/ev.owa?oeh=1&ns=EditCalendarItem&ev=Save User host address: xxx.xxx.xxx.xxx User: Displayname EX Address: /o=xx/ou=Exchange Administrative Group (xxxxxxxxxxxxxxxxxx)/cn=Recipients/cn=xxxxxxxxx SMTP Address: email.adresse@domain.de OWA version: X.X.XXX.X Mailbox server: servername.domain.de Exception Exception type: Microsoft.Exchange.Data.Storage.StoragePermanentException Exception message: Cannot save changes made to an item to store. Call stack Microsoft.Exchange.Data.Storage.MapiPropertyBag.SaveChanges() Microsoft.Exchange.Data.Storage.StoreObjectPropertyBag.SaveChanges(Boolean commit) Microsoft.Exchange.Data.Storage.AcrPropertyBag.SaveChangesWithAcr(SaveMode saveMode) Microsoft.Exchange.Data.Storage.Item.SaveInternal(SaveMode saveMode, Boolean commit) Microsoft.Exchange.Clients.Owa.Core.Utilities.SaveItem(Item item, Boolean updatePerfCounter, SaveMode saveMode) Microsoft.Exchange.Clients.Owa.Premium.EditCalendarItemEventHandler.Save() Inner Exception Exception type: Microsoft.Mapi.MapiExceptionUnableToComplete Exception message: MapiExceptionUnableToComplete: Unable to save changes. (hr=0x80040400, ec=-2147220480) Diagnostic context: Lid: 18969 EcDoRpcExt2 called [length=1100] Lid: 27161
EcDoRpcExt2 returned [ec=0x0][length=592][latency=1640] Lid: 23226 --- ROP Parse Start --- Lid: 27962 ROP: ropDeletePropsNoReplicate [122] Lid: 27962 ROP: ropSetProps [10] Lid: 27962 ROP: ropSaveChangesMessage [12] Lid: 17082 ROP Error: 0x80040400 Lid: 18273 Lid: 21921 StoreEc: 0x80040400 Lid: 27962 ROP: ropExtendedError [250] Lid: 1494 ---- Remote Context Beg ---- Lid: 1238 Remote Context Overflow Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 21970 StoreEc: 0x8004010F PropTag: 0x668F0040 Lid: 6157 StoreEc: 0x4EC Lid: 7181 StoreEc: 0x8004010F Lid: 61001 Lid: 11621 StoreEc: 0x8004010F Lid: 10544 StoreEc: 0x4DE Lid: 18906 Lid: 6153 StoreEc: 0x4DE Lid: 21810 Lid: 5249 StoreEc: 0x4DE Lid: 4884 StoreEc: 0x80040400 Lid: 4465 StoreEc: 0x80040400 Lid: 6926 StoreEc: 0x80040400 Lid: 1750 ---- Remote Context End ---- Lid: 31418 --- ROP Parse Done --- Lid: 21457 Lid: 19665 StoreEc: 0x80040400 Call stack Microsoft.Mapi.MapiExceptionHelper.ThrowIfError(String message, Int32 hresult, Object objLastErrorInfo) Microsoft.Mapi.MapiProp.SaveChanges() Microsoft.Exchange.Data.Storage.MapiPropertyBag.SaveChanges()
Im Eventlog des betroffen Mailstores taucht folgender Fehler auf:
Event Type:Warning Event Source:EXCDO Event Category:General Event ID:8230 Date:9/3/2012 Time:2:13:12 PM User:N/A Computer: Servername Description: An inconsistency was detected in Mailboxname: /Kalender/itemname.EML. The calendar is being repaired. If a problem persists, please recreate the calendar or the containing mailbox.
Erklärung
Diese Fehler bedeuten, dass im Kalender ein “invalid item” existiert. Im Eventlogeintrag 8230 wird der Name des Eintrag dargestellt. Warum allerdings ein defekter Kalendereintrag diesen Service lahmlegt, mal abgesehen davon, warum ein defekter Eintrag überhaupt möglich ist, bleibt das Geheimnis von Microsoft.
Lösung
Es gibt einige Tipps die im Internet kursieren. z.B.: outlook /cleanviews; outlook /cleanfreebusy; outlook /cleanreminders. Auch das Verschieben der Mailbox auf einen anderen Store wird empfohlen. Das Löschen des betroffenen Eintrags soll auch helfen. Ich habe allerdings die Erfahrung gemacht, dass der einzig effektive (und vor allem schnelle) Weg, das Löschen und Neuanlegen der Mailbox ist.
Folgende Schritte sind dazu erforderlich:
Add-MailboxPermission Mailboxname -user adminuser -AccessRights fullaccess - Sie benötigen Vollzugriff für den Export Export-Mailbox Mailboxname -PSTFolderPath LW:Pfad -Confirm:$false Mailbox löschen und eine neue leer anlegen Add-MailboxPermission Mailboxname -user adminuser -AccessRights fullaccess - Die Mailbox ist neu, deshalb müssen Sie noch einmal den Vollzugriff vergeben import-Mailbox Mailboxname -PSTFolderPath LW:PfadMailbox.pst -Confirm:$false
In meinen Tests hat diese Vorgehensweise immer gut funktioniert und den Fehler behoben.