none
Exchange 2013 Env. - Setup of first Exchange 2019 CU3 fails RRS feed

  • Question

  • Hi,

    we're doing some test to upgrade our Exchange 2013 Servers to Exchange 2019.

    In our LAB, we have some Exchange 2013 servers with the following build: 

     Version 15.0 (Build 1497.2)

    I try to install the first 2019 CU Exchange Server and it fails:

     .\Setup.EXE /PrepareSchema /IAcceptExchangeServerLicenseTerms

    worked fine

    .\Setup.EXE /PrepareAD /OrganizationName:"ORG" /IAcceptExchangeServerLicenseTerms

    fails with the following error:

    Configuring Microsoft Exchange Server
    
        Organization Preparation                                                                                                                                         100%
    The following error was generated when "$error.Clear();
     $policyDefault = Get-OwaMailboxPolicy -DomainController $RoleDomainController | where {$_.Identity -eq "Default"};
    
    
    if($policyDefault -eq $null)
     {
     New-OwaMailboxPolicy -Name "Default" -DomainController $RoleDomainController
     }
     " was run: "System.FormatException: DNString length mismatch
     at
    Microsoft.Exchange.Data.Directory.SystemConfiguration.ExchangeVirtualDirectory.RemoveDNStringSyntax(MultiValuedProperty`1 objectDNString, ProviderPropertyDefinition
    propertyDefinition)
     at Microsoft.Exchange.Data.PropertyBag.GetMultiValuedPropertyValue(ProviderPropertyDefinition propertyDefinition, Boolean createDefaultValueEntry)
     at
    Microsoft.Exchange.Data.PropertyBag.get_Item(PropertyDefinition key)
     at Microsoft.Exchange.Data.ConfigurableObject.ValidateCalculatedProperty(ProviderPropertyDefinition
    propertyDefinition, PropertyBag propertyBag, List`1 errors, Boolean useOnlyReadConstraints, Boolean onlyCacheValue)
     at
    Microsoft.Exchange.Data.ConfigurableObject.ValidateRead(List`1 errors, IEnumerable`1 propertiesToValidate)
     at Microsoft.Exchange.Data.Directory.ADObject.ValidateRead(List`1 errors)
    
     at Microsoft.Exchange.Data.ConfigurableObject.ValidateRead()
     at Microsoft.Exchange.Data.Directory.ADDataSession.ObjectsFromEntries[TResult](SearchResultEntryCollection entries,
    String originatingServerName, IEnumerable`1 properties, ADRawEntry dummyInstance, String callerFilePath, Int32 callerFileLine, String memberName)
     at
    Microsoft.Exchange.Data.Directory.ADGenericPagedReader`1.GetNextPage()
     at Microsoft.Exchange.Data.Directory.ADGenericPagedReader`1.<GetEnumerator>d__29.MoveNext()
     at
    Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.WriteResult[T](IEnumerable`1 dataObjects)
     at Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.InternalProcessRecord()
     at
    Microsoft.Exchange.Configuration.Tasks.GetObjectWithIdentityTaskBase`2.InternalProcessRecord()
     at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
     at
    Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)
     at
    Microsoft.Exchange.Configuration.Tasks.Task.ProcessTaskStage(TaskStage taskStage, Action initFunc, Action mainFunc, Action completeFunc)
     at
    Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord()
     at System.Management.Automation.CommandProcessor.ProcessRecord()".
    
    The following error was generated when "$error.Clear();
     $policyDefault = Get-OwaMailboxPolicy -DomainController $RoleDomainController | where {$_.Identity -eq "Default"};
    
    
    if($policyDefault -eq $null)
     {
     New-OwaMailboxPolicy -Name "Default" -DomainController $RoleDomainController
     }
     " was run:
    "Microsoft.Exchange.Data.Directory.ADObjectAlreadyExistsException: Active Directory operation failed on server.domain.ch. The object 'CN=Default,CN=OWA Mailbox
    Policies,CN=domain,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=ch' already exists. --->
    System.DirectoryServices.Protocols.DirectoryOperationException: The object exists.
     at System.DirectoryServices.Protocols.LdapConnection.ConstructResponse(Int32 messageId,
    LdapOperation operation, ResultAll resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)
     at
    System.DirectoryServices.Protocols.LdapConnection.SendRequest(DirectoryRequest request, TimeSpan requestTimeout)
     at
    Microsoft.Exchange.Data.Directory.GuardedDirectoryExecution.Execute[T](String bucketName, Func`1 action, Int64& concurrency)
     at
    Microsoft.Exchange.Data.Directory.PooledLdapConnection.GuardedSendRequest(String forestName, GuardedDirectoryExecution guardedDirectoryExecution, DirectoryRequest request, TimeSpan
    timeout, Func`3 sendRequestDelegate, Int64& concurrency)
     at Microsoft.Exchange.Data.Directory.PooledLdapConnection.SendRequest(DirectoryRequest request, LdapOperation
    ldapOperation, Nullable`1 clientSideSearchTimeout, IADLogContext logContext, Boolean shouldLogLastFilter)
     at
    Microsoft.Exchange.Data.Directory.ADDataSession.ExecuteModificationRequest(ADObject entry, DirectoryRequest request, ADObjectId originalId, Boolean emptyObjectSessionOnException,
    Boolean isSync)
     --- End of inner exception stack trace ---
     at Microsoft.Exchange.Data.Directory.ADDataSession.AnalyzeDirectoryError(PooledLdapConnection connection,
    DirectoryRequest request, DirectoryException de, Int32 totalRetries, Int32 retriesOnServer, String callerFilePath, Int32 callerFileLine, String memberName)
     at
    Microsoft.Exchange.Data.Directory.ADDataSession.ExecuteModificationRequest(ADObject entry, DirectoryRequest request, ADObjectId originalId, Boolean emptyObjectSessionOnException,
    Boolean isSync)
     at Microsoft.Exchange.Data.Directory.ADDataSession.Save(ADObject instanceToSave, IEnumerable`1 properties, Boolean bypassValidation)
     at
    Microsoft.Exchange.Data.Directory.SystemConfiguration.ADConfigurationSession.Save(ADConfigurationObject instanceToSave, String callerFilePath, Int32 callerFileLine, String
    memberName)
     at Microsoft.Exchange.Data.Directory.SystemConfiguration.ADConfigurationSession.Microsoft.Exchange.Data.IConfigDataProvider.Save(IConfigurable instance, String
    callerFilePath, Int32 callerFileLine, String memberName)
     at Microsoft.Exchange.Configuration.Tasks.SetTaskBase`1.InternalProcessRecord()
     at
    Microsoft.Exchange.Configuration.Tasks.NewTaskBase`1.InternalProcessRecord()
     at Microsoft.Exchange.Configuration.Tasks.NewADTaskBase`1.InternalProcessRecord()
     at
    Microsoft.Exchange.Configuration.Tasks.NewMultitenancySystemConfigurationObjectTask`1.InternalProcessRecord()
     at
    Microsoft.Exchange.Management.Tasks.NewOwaMailboxPolicy.InternalProcessRecord()
     at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
     at
    Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".
    
    
    The Exchange Server setup operation didn't complete. More details can be found in ExchangeSetup.log located in the <SystemDrive>:\ExchangeSetupLogs folder.

    Any idea? 

    Thursday, October 31, 2019 2:43 PM

Answers

  • This issue may be related with other OWA policy names.

    During the installation, the system will check OWA policies. If the policy with name "Default" doesn't exist, it will create the Default OWA policy again. You should rename "Default_old" back to "Default". You can check if some OWA policies' names are too long and modify them with shorter ones.

    Regards,

    Lydia Zhou


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Wednesday, November 6, 2019 9:56 AM
    Moderator
  • We deleted all unassigned policies "get-owamailboxpolicy | remove-owamailboxpolicy".

    After that, we was able to continue with prepareAD.

    Thanks to all for your help!

    • Marked as answer by repa1982 Tuesday, November 12, 2019 6:16 PM
    Tuesday, November 12, 2019 6:16 PM

All replies

  • hi

    Take a look in ADSIEdit at that OWA Policy.

    If you try edit it from the EAC does it give an error on Exchange 2013?


    Hope this helps. Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

    Thursday, October 31, 2019 5:14 PM
    Moderator
  • Hi,

    thank you very much for your answer.

    ADSIEdit looks good so far:

    I cannot see anything wrong in powershell..

    [PS] C:\Windows\system32>Get-OwaMailboxPolicy -Identity default
    
    
    RunspaceId                                           : 04ef6d3a-9c8a-4fd3-a0e1-c0fb93d0f62b
    DirectFileAccessOnPublicComputersEnabled             : True
    DirectFileAccessOnPrivateComputersEnabled            : True
    WebReadyDocumentViewingOnPublicComputersEnabled      : True
    WebReadyDocumentViewingOnPrivateComputersEnabled     : True
    ForceWebReadyDocumentViewingFirstOnPublicComputers   : False
    ForceWebReadyDocumentViewingFirstOnPrivateComputers  : False
    WacViewingOnPublicComputersEnabled                   : True
    WacViewingOnPrivateComputersEnabled                  : True
    ForceWacViewingFirstOnPublicComputers                : False
    ForceWacViewingFirstOnPrivateComputers               : False
    ActionForUnknownFileAndMIMETypes                     : Allow
    WebReadyFileTypes                                    : {.xlsx, .pptx, .docx, .xls, .rtf, .ppt, .pps, .pdf, .dot, .doc}
    WebReadyMimeTypes                                    : {application/vnd.openxmlformats-officedocument.presentationml.pr
                                                           esentation, application/vnd.openxmlformats-officedocument.wordpr
                                                           ocessingml.document, application/vnd.openxmlformats-officedocume
                                                           nt.spreadsheetml.sheet, application/vnd.ms-powerpoint,
                                                           application/x-mspowerpoint, application/vnd.ms-excel,
                                                           application/x-msexcel, application/msword, application/pdf}
    WebReadyDocumentViewingForAllSupportedTypes          : True
    WebReadyDocumentViewingSupportedMimeTypes            : {application/msword, application/vnd.ms-excel,
                                                           application/x-msexcel, application/vnd.ms-powerpoint,
                                                           application/x-mspowerpoint, application/pdf, application/vnd.ope
                                                           nxmlformats-officedocument.wordprocessingml.document, applicatio
                                                           n/vnd.openxmlformats-officedocument.spreadsheetml.sheet, applica
                                                           tion/vnd.openxmlformats-officedocument.presentationml.presentati
                                                           on}
    WebReadyDocumentViewingSupportedFileTypes            : {.doc, .dot, .rtf, .xls, .ppt, .pps, .pdf, .docx, .xlsx, .pptx}
    AllowedFileTypes                                     : {.rpmsg, .xlsx, .xlsm, .xlsb, .vstx, .vstm, .vssx, .vssm,
                                                           .vsdx, .vsdm, .tiff, .pptx, .pptm, .ppsx, .ppsm, .docx...}
    AllowedMimeTypes                                     : {image/jpeg, image/png, image/gif, image/bmp}
    ForceSaveFileTypes                                   : {.html, .swf, .spl, .htm, .dir, .dcr}
    ForceSaveMimeTypes                                   : {Application/x-shockwave-flash, Application/octet-stream,
                                                           Application/futuresplash, Application/x-director, text/html}
    BlockedFileTypes                                     : {.vsmacros, .msh2xml, .msh1xml, .ps2xml, .ps1xml, .mshxml,
                                                           .gadget, .mhtml, .psc2, .psc1, .msh2, .msh1, .aspx, .xml, .wsh,
                                                           .wsf...}
    BlockedMimeTypes                                     : {application/x-javascript, application/javascript,
                                                           application/msaccess, x-internet-signup, text/javascript,
                                                           application/xml, application/prg, application/hta,
                                                           text/scriplet, text/xml}
    PhoneticSupportEnabled                               : False
    DefaultTheme                                         :
    IsDefault                                            : False
    DefaultClientLanguage                                : 0
    LogonAndErrorLanguage                                : 0
    UseGB18030                                           : False
    UseISO885915                                         : False
    OutboundCharset                                      : AutoDetect
    GlobalAddressListEnabled                             : True
    OrganizationEnabled                                  : True
    ExplicitLogonEnabled                                 : True
    OWALightEnabled                                      : True
    DelegateAccessEnabled                                : True
    IRMEnabled                                           : True
    CalendarEnabled                                      : True
    ContactsEnabled                                      : True
    TasksEnabled                                         : True
    JournalEnabled                                       : True
    NotesEnabled                                         : True
    RemindersAndNotificationsEnabled                     : True
    PremiumClientEnabled                                 : True
    SpellCheckerEnabled                                  : True
    SearchFoldersEnabled                                 : True
    SignaturesEnabled                                    : True
    ThemeSelectionEnabled                                : True
    JunkEmailEnabled                                     : True
    UMIntegrationEnabled                                 : True
    WSSAccessOnPublicComputersEnabled                    : True
    WSSAccessOnPrivateComputersEnabled                   : True
    ChangePasswordEnabled                                : True
    UNCAccessOnPublicComputersEnabled                    : True
    UNCAccessOnPrivateComputersEnabled                   : True
    ActiveSyncIntegrationEnabled                         : True
    AllAddressListsEnabled                               : True
    RulesEnabled                                         : True
    PublicFoldersEnabled                                 : True
    SMimeEnabled                                         : True
    RecoverDeletedItemsEnabled                           : True
    InstantMessagingEnabled                              : True
    TextMessagingEnabled                                 : True
    ForceSaveAttachmentFilteringEnabled                  : False
    SilverlightEnabled                                   : True
    InstantMessagingType                                 : None
    DisplayPhotosEnabled                                 : True
    SetPhotoEnabled                                      : True
    AllowOfflineOn                                       : AllComputers
    SetPhotoURL                                          :
    PlacesEnabled                                        : False
    WeatherEnabled                                       : True
    AllowCopyContactsToDeviceAddressBook                 : True
    PredictedActionsEnabled                              : False
    UserDiagnosticEnabled                                : False
    FacebookEnabled                                      : True
    LinkedInEnabled                                      : True
    WacExternalServicesEnabled                           : True
    WacOMEXEnabled                                       : False
    ReportJunkEmailEnabled                               : False
    GroupCreationEnabled                                 : True
    SkipCreateUnifiedGroupCustomSharepointClassification : True
    WebPartsFrameOptionsType                             : SameOrigin
    AdminDisplayName                                     :
    ExchangeVersion                                      : 0.10 (14.0.100.0)
    Name                                                 : Default
    DistinguishedName                                    : CN=Default,CN=OWA Mailbox
                                                           Policies,CN=domain,CN=Microsoft
                                                           Exchange,CN=Services,CN=Configuration,DC=domain,DC=ch
    Identity                                             : Default
    Guid                                                 : 781572b8-e857-4f86-b506-1d9493af38a7
    ObjectCategory                                       : domain.ch/Configuration/Schema/ms-Exch-OWA-Mailbox-Polic
                                                           y
    ObjectClass                                          : {top, msExchRecipientTemplate, msExchOWAMailboxPolicy}
    WhenChanged                                          : 27.02.2014 17:53:12
    WhenCreated                                          : 27.02.2014 17:53:12
    WhenChangedUTC                                       : 27.02.2014 16:53:12
    WhenCreatedUTC                                       : 27.02.2014 16:53:12
    OrganizationId                                       :
    Id                                                   : Default
    OriginatingServer                                    : server.domain.ch
    IsValid                                              : True
    ObjectState                                          : Unchanged
                                                          

    Thursday, October 31, 2019 6:04 PM
  • Could you tape :

    Get-OwaMailboxPolicy -DomainController $RoleDomainController | where {$_.Identity -eq "Default"}

    and, change the

    $RoleDomainController

    to test different DC.

    and could you find something revelant about this command at :

    <SystemDrive>:\ExchangeSetupLogs

    ?

    Thursday, October 31, 2019 6:48 PM
  • Hi,

    Do you have any other OWA mailbox policies?

    Please make sure the name of other OWA policies are set properly.

    You can check the Exchange setup logs (Default path is C:\ExchangeSetupLogs\ExchangeSetup.log) and event logs for further analysis.

    Regards,

    Lydia Zhou


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Friday, November 1, 2019 6:45 AM
    Moderator
  • Hi,

    i figured out the following:

        $policyDefault = Get-OwaMailboxPolicy -DomainController $RoleDomainController | where {$_.Identity -eq "Default"};

    The Policy Default exists and is found and when i type "$policyDefault" i get the Default policy.

    But the setup tries to create it anywhere, but it makes no sense.

              if($policyDefault -eq $null)
              {
                  New-OwaMailboxPolicy -Name "Default" -DomainController $RoleDomainController
              }

    I renamed the Default Policy

    Set-OwaMailboxPolicy -Identity Default -Name Default_old

    Then i run setup again and it failed with the following:

        Organization Preparation                                                                                                                                         100%
    The following error was generated when "$error.Clear();
     $policyDefault = Get-OwaMailboxPolicy -DomainController $RoleDomainController | where {$_.Identity -eq "Default"};
    
    
    if($policyDefault -eq $null)
     {
     New-OwaMailboxPolicy -Name "Default" -DomainController $RoleDomainController
     }
     " was run: "System.FormatException: DNString length mismatch
     at
    Microsoft.Exchange.Data.Directory.SystemConfiguration.ExchangeVirtualDirectory.RemoveDNStringSyntax(MultiValuedProperty`1 objectDNString, ProviderPropertyDefinition
    propertyDefinition)
     at Microsoft.Exchange.Data.PropertyBag.GetMultiValuedPropertyValue(ProviderPropertyDefinition propertyDefinition, Boolean createDefaultValueEntry)
     at
    Microsoft.Exchange.Data.PropertyBag.get_Item(PropertyDefinition key)
     at Microsoft.Exchange.Data.ConfigurableObject.ValidateCalculatedProperty(ProviderPropertyDefinition
    propertyDefinition, PropertyBag propertyBag, List`1 errors, Boolean useOnlyReadConstraints, Boolean onlyCacheValue)
     at
    Microsoft.Exchange.Data.ConfigurableObject.ValidateRead(List`1 errors, IEnumerable`1 propertiesToValidate)
     at Microsoft.Exchange.Data.Directory.ADObject.ValidateRead(List`1 errors)
    
     at Microsoft.Exchange.Data.ConfigurableObject.ValidateRead()
     at Microsoft.Exchange.Data.Directory.ADDataSession.ObjectsFromEntries[TResult](SearchResultEntryCollection entries,
    String originatingServerName, IEnumerable`1 properties, ADRawEntry dummyInstance, String callerFilePath, Int32 callerFileLine, String memberName)
     at
    Microsoft.Exchange.Data.Directory.ADGenericPagedReader`1.GetNextPage()
     at Microsoft.Exchange.Data.Directory.ADGenericPagedReader`1.<GetEnumerator>d__29.MoveNext()
     at
    Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.WriteResult[T](IEnumerable`1 dataObjects)
     at Microsoft.Exchange.Configuration.Tasks.GetTaskBase`1.InternalProcessRecord()
     at
    Microsoft.Exchange.Configuration.Tasks.GetObjectWithIdentityTaskBase`2.InternalProcessRecord()
     at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
     at
    Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)
     at
    Microsoft.Exchange.Configuration.Tasks.Task.ProcessTaskStage(TaskStage taskStage, Action initFunc, Action mainFunc, Action completeFunc)
     at
    Microsoft.Exchange.Configuration.Tasks.Task.ProcessRecord()
     at System.Management.Automation.CommandProcessor.ProcessRecord()".
    
    
    The Exchange Server setup operation didn't complete. More details can be found in ExchangeSetup.log located in the <SystemDrive>:\ExchangeSetupLogs folder.

    Someone has an idea on that?

    Friday, November 1, 2019 12:57 PM
  • Hello,

    Really strange,

    could you check there :

    CN=OWA Mailbox Policies,CN=domain,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=ch

    check if you have a trash object,

    and verify if the default object have all correct parametre (no white space or something like taht)

    you  can try to rename backup to Default too. juste for testing.

    Olivier.

    Friday, November 1, 2019 1:21 PM
  • Thanks for your answer.

    i have around 4000 policies, hard to find trash objects. 

    What do you mean with "rename backup to Default too" ? 

    Friday, November 1, 2019 1:31 PM
  • Sorry, i wanter to say: rename back the defaut name policy.

    Friday, November 1, 2019 2:01 PM
  • I renamed the Default Policy to Default_old

    then i run setup again, it created a new Default policy and failed with the error above.

    When i deleted it again and start setup again, it will create another one and fail again.

    Friday, November 1, 2019 2:07 PM
  • This issue may be related with other OWA policy names.

    During the installation, the system will check OWA policies. If the policy with name "Default" doesn't exist, it will create the Default OWA policy again. You should rename "Default_old" back to "Default". You can check if some OWA policies' names are too long and modify them with shorter ones.

    Regards,

    Lydia Zhou


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Wednesday, November 6, 2019 9:56 AM
    Moderator
  • We deleted all unassigned policies "get-owamailboxpolicy | remove-owamailboxpolicy".

    After that, we was able to continue with prepareAD.

    Thanks to all for your help!

    • Marked as answer by repa1982 Tuesday, November 12, 2019 6:16 PM
    Tuesday, November 12, 2019 6:16 PM
  • It's great that your issue is solved. Here is a brief summary about this thread, hope more people can get help from it.

    Issue Symptom

    ========================================

    Plan to upgrade from Exchange 2013 Servers to Exchange 2019.

    Preparing schema works well, have errors about OWA policy when prepare AD "System.FormatException: DNString length mismatch..."

    Renam the Default policy but doesn't work.

    Possible Cause

    ========================================

    Some OWA mailbox policies' name may not be set properly.

    Solution

    ========================================

    Delete all unassigned OWA mailbox policies.

    Regards,

    Lydia Zhou


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Wednesday, November 13, 2019 4:32 PM
    Moderator