locked
Email Router stopped working after IFD deployment RRS feed

  • Question

  • Hi,

    I recently used the IFD configuration tool to change my deployment from On-Premise to IFD+On-Premise on both my DEV and LIVE servers.  This all seemed to go fine in that I was able to access the CRM via the internet and login correctly. 

    I have also changed the organization name of the DEV server.

    However, when i started using some custom workflows i had setup to send an email I noticed they were not being sent.

    My email router is on the same server as CRM installation.

    DEV SERVER

    I opened it up and did a Load Data and then Test Access.

    This returned the following:

    Incoming Status Failure - No such host is known

    Outgoing Status Failure - An error occurred while checking the connections to the e-mail server <mailserver> No such host is known

    I am sure i changed the email router config when i updated the organization name and it was working fine.

    LIVE SERVER

    I opened up email router config tool and did a Load Data and then Test Access

    The test access results screen appears but nothing happens - it doe not perform any checks.

    I noticed in the EventViewer on my DEV server a number of MSCRMEMAIL errors similar to the following:

    An error occurred while opening mailbox test.address@somedomain.com. System.Net.Sockets.SocketException: No such host is known

    Does anyone have any ideas as to what i can check to see if I can fix this?

    My gut feeling is that it might be a DNS issue somewhere.

    Wednesday, October 20, 2010 9:00 AM

Answers

All replies

  • Go with your gut.  Check the DeploymentProperties table in the MSCRM_CONFIG database for the rows with "ADSdkRootDomain", "ADWebApplicationRootDomain", "IfdSdkRootDomain", and "IFDWebApplicationRootDomain" in the column "ColumnName".  The values for these configuration items are in the "NVarCharColumn".  Make sure that the "AD" records are resolvable by the localhost, and actually point back to the CRM server locally.
    Dave Berry - MVP Dynamics CRM - http:\\crmentropy.blogspot.com
    Wednesday, October 20, 2010 4:22 PM
    Moderator
  • Hi Dave,

    Thanks fo your reply.

    I have manged to look at those values in the database, they look like: (i have replaced actual values in this post)

    ADSdkRootDomain = <server IP address>:80
    ADWebApplicationRootDomain = <server IP address>:80
    IfdSdkRootDomain = myclientname.com
    IFDWebApplicationRootDomain = myclientname.com

    These values are from my DEV server which as i mentioned i changed the organization name for.

    If I open and IE on the server and browse to http://<server IP Address>:80 i get the following error:

    Cannot open database "oldorganizationname_MSCRM" requested by the login. The login failed.
    Login failed for user 'NT AUTHORITY\NETWORK SERVICE'.

    It displays the old organization name _MSCRM in the error - strange.  I checked and my new organization name is the default in Deployment Manager and the old organization name is disabled..i did not delete it yet.  What that make a difference?

    I also see my new organization name at the bottom left in the IFD Configuration Tool.

    Is this pointing at a DNS issue do you think?

     

    Thursday, October 21, 2010 11:31 AM
  • To start with your most recent issue, if you browse to  http://<server IP Address>:80 you will go to the user's default organisation, which is not necessarily the same as the system-wide default organisation that you can specify in Deployment Manager. The simplest resolution is to browse to the specific organisation with http://<server IP Address>:80/<orgname>

    Back to the original question, the error 'An error occurred while opening mailbox test.address@somedomain.com. System.Net.Sockets.SocketException: No such host is known' indicates a problem connecting to the Exchange server, rather than to CRM. This could indeed be a DNS issue, but should not have been affected by configuring IFD, unless Exchange is installed on the CRM server


    Microsoft CRM MVP - http://mscrmuk.blogspot.com  http://www.excitation.co.uk
    Thursday, October 21, 2010 1:23 PM
    Moderator
  • Hi David,

    Thanks for your response.

    I can browse to http://<server IP Address>:80/<orgname> on both my DEV and LIVE servers and it prompts me for login which i enter and than it correctly displays the CRM.

    One difference on the LIVE server is that AsyncSdkRootDomain has the value <server IP Address>:5555.  Should this be updates to :80 like other values?

    The email addresses I am trying to configure are POP3 we do not have an exchange server.  I have created a new deployment for UAT using the email router configuration tool called http://<server IP address>:80/<orgname>. When i select this deployment and click Load Data it correctly comes back with the queue i have identified.  I click on Test Access but nothing passes. 

    Do i perhaps need to use a different url in when setting up the deployment now this server is set for IFD? For example, http://<orgname>.<domainname>/<orgname> and select Online Service Provider.

    Thanks for you continued help on my issue.

     

    Thursday, October 21, 2010 1:56 PM
  • Let's try to fix a single environment at a time, shall we?  As Mr. Jennaway states, each user has a default organization, which is configured strictly through the "SystemUser" table in the MSCRM_CONFIG database.  Only by changing the "DefaultOrganizationId" here to the GUID found in the Id column of the Organization table, for the new Org, can the users be able to access the "root" directory of the CRM site (i.e. without an Orgname in the Url).

    Please also address Mr. Jennaway's assertion that your mail server's host name does not properly resolve from the CRM server.  You may consider configuring the IP directly for the mail server, instead of using a DNS-resolvable name.

    I'm assuming that you haven't actually provisioned IIS to expose CRM on port "5555", so your suspicion about changing the AsyncSdkRootDomain entry would be correct.  This entry is used by the Async processing service, mainly, (but I believe also by the Email Router) to identify the host for CRM web services.


    Dave Berry - MVP Dynamics CRM - http:\\crmentropy.blogspot.com
    Thursday, October 21, 2010 3:30 PM
    Moderator
  • Hi David B and David J,

    Thanks for your continued support on this and sorry in my late reply in getting back to you.

    David B you are correct i think i have two environments that are configured wrongly but I would like to concentrate on getting the DEV server working initally as i think a lot of its issue have been caused by me renaming the organization.

    Based on the posts above here are my findings on DEV server:

    1. I checked the SystemUser and Organization tables.  In the SystemUser table the Name column is blank with the exception of the Administrator user.  The DefaultOrganizationId for Administrator is all zeros (0's) but for all other users the value  is for the organization that i renamed no the new organization.  I also noticed when I look at the Users through the Setting-->Admin-->Users in the CRM that the Id for users does not match what is displayed in address bar between the curly braces {}.  Do I need to manually run some SQL to update the DefaultOrganizationId for the users?  Do I also do this for Administrator user?
    2. I have only disabled the old organization using the Deployment Manager, should i delete it completely?

    I am not a DNS expert but I do have a technical contact who can help I just need to know what I need to ask them to do regardig DNS.

    Is anyone able to assist me further on the issues i am having?

     

     

    Monday, October 25, 2010 9:40 AM
  • Hi,

    Can anyone assist my my issues above?

    Any help would be greatly appreciated.

    Kind regards.

    geordie_123

    Tuesday, October 26, 2010 2:20 PM
  • I don't believe it's appropriate to alter the zero'd DefaultOrganizationId for the Administrator, as that is what I find in my working deployments.  However, you are correct that the only way at this time to alter the DefaultOrganizationId for other users is to do so directly in the SQL database (according to all the information I have viewed).

    As for the "Name" column, that is also "NULL" in my deployments for every user not listed as a Deployment Administrator in the Deployment Manager utility, so I think it's fine to leave it as such.  Additionally, I also see mismatches between the [MSCRM_CONFIG.SystemUser.Id] values and the [ORG_MSCRM.SystemUserBase.SystemUserId] values.  This is because the two tables are joined through another table:  [MSCRM_CONFIG.SystemUserOrganizations], which maps the "UserId" from [MSCRM_CONFIG.SystemUser.Id] to "CrmUserId" from [ORG_MSCRM.SystemUserBase.SystemUserId].

    This query, should sufficiently join both tables for you (from the MSCRM_CONFIG database):

    Select *
    From SystemUser Inner Join SystemUserOrganizations On SystemUserOrganizations.UserId = SystemUser.Id

    You'll notice that the Deployment Administrators don't show up in the results.  This is because the "CRM User" record established for those AD accounts is a second entry in the SystemUser catalog.  This is why they have a zero'd DefaultOrganizationId value, because the two separate entries in the "SystemUser" table identify two different uses in the CRM system: one as a CRM user, and one as a Deployment Administrator.  This is, however, speculation on my part--but that seems to be the most reasonable assessment.

     


    Dave Berry - MVP Dynamics CRM - http:\\crmentropy.blogspot.com
    Tuesday, October 26, 2010 5:52 PM
    Moderator
  • Hi David,

    I am really sorry it has took me this long to reply but I have been on holiday and also pulled onto other projects.

    As i understand from both your replies I need to updated the SystemUser table so that the value of DefaultOrganizationId is that of the Id from the Organization table of the new organization i have added? 

    Do I also have to update the OrganizationId in SystemUserOrganization table?

    Thanks in advance.

    Thursday, November 11, 2010 3:03 PM
  • I wouldn't update the SystemUserOrganization table, as the CrmUserId will be different for each Org as well.  As long as you have provisioned the users in the new deployment already, I think that all that's necessary is the update to the Organization table's DefaultOrganizationId column.  I haven't tried it myself though, so you're treading into territory I haven't personally explored.  In case you've forgotten during your hiatus, this is all highly unsupported--but again, the only thing I've read that works.
    Dave Berry - MVP Dynamics CRM - http:\\crmentropy.blogspot.com
    Thursday, November 11, 2010 4:27 PM
    Moderator
  • Hi Dave,

    Thanks for your reply.

    I realise it is unsupported but hey you only live once!

    I will let you know how it goes.

    Thursday, November 11, 2010 4:31 PM
  • If you're considering updating MSCRM_Config, then have a look at http://mscrmuk.blogspot.com/2010/11/when-is-default-organisation-not.html for some more information and some SQL, along with a few warnings...
    Microsoft CRM MVP - http://mscrmuk.blogspot.com  http://www.excitation.co.uk
    Thursday, November 11, 2010 6:18 PM
    Moderator