Microsoft CRM Asynchronous Processing Service not working

Today I spent some time trying to fix a problem with the Microsoft CRM Asynchronous Processing Service running on Dynamics CRM 4. I could start a “On demand” workflow, but nothing happend. It would fire off a System Event, but no Workflow, so nothing became visible in the Workflow tab on the entity I started it on.

We use 3 servers, all running Dynamics CRM 4.0.7333.1261 (Rollup 4) on Server 2003,

  • devcrm01: full server + sql
  • devcrm02: application server
  • devcrm03: platform server

This all worked fine, until today, when I wanted to deploy some custom workflow activities. After some testing I discovered that even trivial workflows (just create a task) didn’t even work, so I went looking for a solution. Eventually I got it working again by doing this:

  1. Searching for the faulting System Jobs (not spawning workflows) by using Advanced Find and selecting the Message column to actually see the error.
  2. This turned out to be System.Net.WebException 400 Bad Request
  3. This lead me to finding this weirdness in the MSCRM_CONFIG database:
    • SELECT NVarCharColumn FROM DeploymentProperties WHERE ColumnName = 'AsyncSdkRootDomain'
    • Result: NULL
  4. So I changed this by running:
    • UPDATE DeploymentProperties SET NVarCharColumn = 'devcrm01' WHERE ColumnName = 'AsyncSdkRootDomain'
  5. I retried my simple workflow, but it still wouldn’t work:
    • 0x80044309 Caller does not have enough privilege to set CallerOriginToken to the specified value
  6. Since I run the async service as administrator (it’s a development environment, so why not) this was strange. It turned out that if you install CRM on the same machine as SQL, you need to add your domain account to the PrivUserGroup yourself to make it work.

Now that this is solved, I’ll continue working on my custom workflow activities.

Currently rated 3.8 by 8 people

  • Currently 3.75/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Comments