none
GAL Update Time RRS feed

  • Question

  • I can't find any documentation from Microsoft on this. How often does the GAL update? This is in Exchange 2016.

    We updated some user photos in AD yesterday, but we're still not seeing them in the address book. I've forced an update of the OAB in Exchange and then forced a download of the OAB in Outlook. From my understanding, when the OAB updates (every 8 hours), it pulls it's information from the GAL. The OAB is then downloaded to Outlook every 24 hours (or when forced). Given that I've now forced an OAB update and an Outlook OAB download, the only thing I can think now is that the GAL hasn't updated yet. I'm still seeing the old photo in OWA also, which again leads me to the GAL not being updated (since my understanding is that OWA goes directly to the GAL rather than the OAB).

    Friday, November 22, 2019 4:42 PM

All replies

  • You can use below command in Exchange shell,

    Update-GlobalAddressList -Identity “Default Global Address List"

    Get-GlobalAddressList | update-GlobalAdressList

    Get-AddressList | update-AddressList

    Get-OfflineAddressBook | Update-OfflineAddressBook

    https://docs.microsoft.com/en-us/powershell/module/exchange/email-addresses-and-address-books/update-globaladdresslist?view=exchange-ps

    Saturday, November 23, 2019 8:22 AM
  • I can't find any documentation from Microsoft on this. How often does the GAL update? This is in Exchange 2016.

    We updated some user photos in AD yesterday, but we're still not seeing them in the address book. I've forced an update of the OAB in Exchange and then forced a download of the OAB in Outlook. From my understanding, when the OAB updates (every 8 hours), it pulls it's information from the GAL. The OAB is then downloaded to Outlook every 24 hours (or when forced). Given that I've now forced an OAB update and an Outlook OAB download, the only thing I can think now is that the GAL hasn't updated yet. I'm still seeing the old photo in OWA also, which again leads me to the GAL not being updated (since my understanding is that OWA goes directly to the GAL rather than the OAB).

    If its not showing in OWA, then is probably not an address book issue.

    On the server that holds the database that holds the mailbox, look under:

    Program Files\Microsoft\Exchange Server\V15\ClientAccess\photos

    Then dig through the directories and see if you can find the updated photo (should be named for the user)

    if you find it, delete it.


    Saturday, November 23, 2019 1:15 PM
    Moderator
  • Hi,

    What’s the method you used to change the photos?

    Have you check the modified date of the  %ExchangeInstall% \ClientAccess\photos folder? And check if the photos have been update to the new photos.

    You can try to update the GAL with the command which was provided by Udara above.

    Regards,

    Vera Shen


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

    Monday, November 25, 2019 8:47 AM
  • You should use this to update userphoto:

    Set-UserPhoto "User.Name@Domain.com" -PictureData ([System.IO.File]::ReadAllBytes("C:\temp\UserName.jpg")) -Confirm:$false

    It will then appear in on-premises and cloud-based client applications, such as Outlook on the web, Lync, Skype for Business, and SharePoint. It should also reflect almost immediately.

    https://docs.microsoft.com/en-us/powershell/module/exchange/mailboxes/set-userphoto?view=exchange-ps

    How did you update the photo?


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you. Thank you! Off2work

    Monday, November 25, 2019 9:47 AM
  • After the weekend went by, the updated photos are now showing up. I didn't mean for my question to sound like it was specifically about the photos. I'm trying to grasp what the entire process is that needs to take place for any changes to user accounts to be propagated out to the address books. Just again this morning I had someone come ask me why a user who was created early Sunday morning still wasn't available in the address book via OWA (which should reference the GAL directly and not rely on the OAB).

    So here's my understanding of the process (and the holes in my understanding).

    - Exchange has a Global Address List. This list is generated by looking at AD and populating itself. This list updates itself how often? I know how to update it manually with the update-globaladdresslist command, but when and how often does it do this automatically?

    - OWA and Outlook clients who are not in cached mode go directly to the GAL for it's address book.

    - The OAB in Exchange updates itself every 8 hours. It references the GAL to pull it's updated information.

    - Outlook in cached mode downloads the OAB every 24 hours.


    Monday, November 25, 2019 3:53 PM
  • Hi,

    How many recipients does your GAL contain?

    Are you using the default GAL, or using a custom GAL? You can check with the following command, IsDefaultGlobalAddressList shows true for the default GAL:

    Get-GlobalAddressList | select name,IsDefaultGlobalAddressList


    Please check the settings of the GAL you are using:

    Get-GlobalAddressList - Identity <GALIdentity> | fl


    Yes, your understanding of other address lists is basically correct. For more information, please refer to Offline address books in Exchange Server.

    Regards,

    Vera Shen


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

    Thursday, November 28, 2019 9:57 AM
  • Yes, I'm still using the default GAL. We haven't created any others.

    PS C:\Users\DoeJ> Get-GlobalAddressList | select name,IsDefaultGlobalAddressList
    
    Name                        IsDefaultGlobalAddressList
    ----                        --------------------------
    Default Global Address List                       True

    What should I be looking for in the other command? I don't see any fields regarding generation times.

    PS C:\Users\DoeJ> Get-GlobalAddressList | fl
    
    
    IsDefaultGlobalAddressList   : True
    Name                         : Default Global Address List
    RecipientFilter              : (Alias -ne $null -and (((((ObjectClass -eq 'user' -or ObjectClass -eq 'contact') -or ObjectClass -eq 'msExchSystemMailbox') -or ObjectClass -eq 'msExchDynamicDistributionList') -or
                                   ObjectClass -eq 'group') -or ObjectClass -eq 'publicFolder'))
    LdapRecipientFilter          : (&(mailNickname=*)(|(objectClass=user)(objectClass=contact)(objectClass=msExchSystemMailbox)(objectClass=msExchDynamicDistributionList)(objectClass=group)(objectClass=publicFolder)))
    LastUpdatedRecipientFilter   : (Alias -ne $null -and (((((ObjectClass -eq 'user' -or ObjectClass -eq 'contact') -or ObjectClass -eq 'msExchSystemMailbox') -or ObjectClass -eq 'msExchDynamicDistributionList') -or
                                   ObjectClass -eq 'group') -or ObjectClass -eq 'publicFolder'))
    RecipientFilterApplied       : True
    IncludedRecipients           :
    ConditionalDepartment        : {}
    ConditionalCompany           : {}
    ConditionalStateOrProvince   : {}
    ConditionalCustomAttribute1  : {}
    ConditionalCustomAttribute2  : {}
    ConditionalCustomAttribute3  : {}
    ConditionalCustomAttribute4  : {}
    ConditionalCustomAttribute5  : {}
    ConditionalCustomAttribute6  : {}
    ConditionalCustomAttribute7  : {}
    ConditionalCustomAttribute8  : {}
    ConditionalCustomAttribute9  : {}
    ConditionalCustomAttribute10 : {}
    ConditionalCustomAttribute11 : {}
    ConditionalCustomAttribute12 : {}
    ConditionalCustomAttribute13 : {}
    ConditionalCustomAttribute14 : {}
    ConditionalCustomAttribute15 : {}
    RecipientContainer           :
    RecipientFilterType          : Custom
    Identity                     : \Default Global Address List
    IsValid                      : True
    ExchangeVersion              : 0.1 (8.0.535.0)
    DistinguishedName            : CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=MyOrg,CN=Microsoft
                                   Exchange,CN=Services,CN=Configuration,DC=mydomain,DC=net
    Guid                         : 2ce22bd9-3ec6-4b6f-8828-042da90401f1
    ObjectCategory               : littlesixinc.net/Configuration/Schema/Address-Book-Container
    ObjectClass                  : {top, addressBookContainer}
    WhenChanged                  : 12/13/2016 4:43:11 AM
    WhenCreated                  : 1/8/2008 3:48:55 PM
    WhenChangedUTC               : 12/13/2016 10:43:11 AM
    WhenCreatedUTC               : 1/8/2008 9:48:55 PM
    OrganizationId               :
    Id                           : \Default Global Address List
    OriginatingServer            : SPDC04.mydomain.net
    ObjectState                  : Unchanged

    Monday, December 2, 2019 3:12 PM
  • Hi,

    Does it occur frequently that you cannot find new users in GAL or just occasionally? Check the Event Viewer if related event id was generated, and check the content of the event log. 

    Regards,

    Vera Shen


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

    Friday, December 6, 2019 2:34 AM
  • There aren't any Event ID's generated. I don't think anything isn't working, since users always do show up eventually. At this point I'm really just trying to understand when and how often the GAL is generated, and how this can be controlled. From the lack of responses, it seems like I'm not the only one who isn't able to find an answer. Has Microsoft just really not documented this anywhere?
    Friday, December 6, 2019 4:37 PM
  • Hi,

    All the address information is held by Active Directory. If Exchange has accessed to a local Global Catalog server, then it’s GAL will be up-to-date. 

    If the GAL update slowly, it may be that the DC or GC which the Exchange server connected has not been synchronized.

    You can use the following command to check the current GC or DC the Exchange server used:

    Get-ExchangeServer -Identity <ServerName> -status | fl *current*



    Regards,

    Vera Shen


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

    Tuesday, December 10, 2019 11:24 AM
  • Any updates so far? If you have got your expectations, could you share with us? Maybe it will help more people with similar requirements.

    Regards,

    Vera Shen


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

    Monday, December 16, 2019 10:50 AM
  • Although I don't know if your question has been answered, I make a brief summary here for the time being.

    Issue Symptom
    ==========================================
    Update some user photos in AD, but cannot find them in the GAL. As well as the new users. Want to know how when and how often does the GAL update automatically.

    Possible Cause
    ==========================================
    It may be that the DC or GC which the Exchange server connected has not been synchronized.

    Suggestions
    ==========================================
    All the address information is held by Active Directory. If Exchange has accessed to a local Global Catalog server, then it’s GAL will be up-to-date.

    If the GAL update slowly, you can try to manually update it with the following command:

    Update-GlobalAddressList -Identity <Default Global Address List>


    This may be the preferred method for GAL update latency.

    Regards,

    Vera Shen


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

    Friday, December 20, 2019 12:40 PM