• Not Answered

Problem Installing Experience Commerce 9 as an Azure App Service...

Has anyone had any luck installing Experience Commerce 9 as an Azure App Service?  I've been fighting with this for a week and have not been able to get it to complete successfully.  It gets about an hour and a half into the installation and then fails with the following error:

New-AzureRmResourceGroupDeployment : 1:54:46 PM - Resource Microsoft.Web/sites/extensions 'dev-sc9-sandbox-commerce-cd/MSDeploy'
failed with message '{
  "status": "failed",
  "error": {
    "code": "ResourceDeploymentFailure",
    "message": "The resource operation completed with terminal provisioning state 'failed'.",
    "details": [
        "code": "Failed",
        "message": ".Net SqlClient Data Provider: Msg 1222, Level 16, State 51, Line 27771 Lock request time out period
exceeded.\r\n.Net SqlClient Data Provider: Msg 1222, Level 16, State 51, Line 27771 Lock request time out period exceeded.\r\nScript
execution error.


At C:\Sitecore 9\Tools\Sitecore Azure Toolkit 2.0.1\tools\Sitecore.Cloud.Cmdlets.psm1:115 char:35
+             $PSResGrpDeployment = New-AzureRmResourceGroupDeployment -Name $Name ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [New-AzureRmResourceGroupDeployment], Exception
    + FullyQualifiedErrorId : Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.NewAzureResourceGroupDeploymentCmdlet
New-AzureRmResourceGroupDeployment : 1:54:46 PM - .Net SqlClient Data Provider: Msg 1222, Level 16, State 51, Line 27771 Lock request
time out period exceeded.
.Net SqlClient Data Provider: Msg 1222, Level 16, State 51, Line 27771 Lock request time out period exceeded.
Script execution error.  The executed script:
    [Index] INT              NOT NULL,
    Data    IMAGE            NOT NULL,
    Created DATETIME         NOT NULL


It looks like the failure is occurring during the SXA storefront deployment.  I'm following the instructions here:  http://commercesdn.sitecore.net/SitecoreXC_9.0/Installation-Guide/Sitecore-XC-9.0_Installation_Guide(Cloud).pdf

Do these instructions, and the corresponding ARM templates actually work?  Anyone else run into this issue and know what the problem is?


10 Replies

  • To my understanding, we did not encounter such issue (might be intermittent) from PowerShell following the cloud deployment guide. But we have identified a possible SQL race condition when deploying WDPs from SXA storefront. There will soon be an update for the SXA storefront ARMs posted on Github targeting to address this issue.
  • In reply to Hao Liu:

    I don't think it's intermittent...I get the same error every time. However, it does look like these errors could be a race condition like you mentioned. Thanks for the info. I do have a support case open, but figured I'd get a quicker response here. :-)

  • In reply to Justin Klei:

    Looks there is an update posted on the GitHub ARM template for SXA storefront: github.com/.../SXA Storefront 1.0
  • In reply to Hao Liu:

    The ARM template for "Sitecore XC 9.0.0" is also updated: github.com/.../Sitecore XC 9.0.0. But as long as you use the link to these json files, e.g. "templateLink": "raw.githubusercontent.com/.../azuredeploy.json", it should always get the latest versions from Github

  • In reply to Hao Liu:

    Awesome, thanks for the heads up. I'll give it a try and see if that resolves the issue.
  • Okay, getting a different error now...2 hours into the deployment process.  In Azure I can see that it is failing on the bootloader portion of the install, so I'll be digging into that.

    VERBOSE: 11:52:04 AM - Resource Microsoft.Resources/deployments 'dev-sc9-sandbox-commerce-sxa-sf' provisioning status is succeeded
    VERBOSE: 11:52:05 AM - Checking deployment status in 5 seconds
    New-AzureRmResourceGroupDeployment : 11:52:14 AM - Resource Microsoft.Web/sites/extensions 'dev-sc9-sandbox-commerce-prc/MSDeploy' failed with message '{
    "status": "failed",
    "error": {
    "code": "ResourceDeploymentFailure",
    "message": "The resource operation completed with terminal provisioning state 'failed'.",
    "details": [
    "code": "Failed",
    "message": "Package deployment failed\r\nAppGallery Deploy Failed: 'Microsoft.Web.Deployment.DeploymentException: The path '' is not valid for the
    'dbDacFx' provider. ---> System.ArgumentNullException: Value cannot be null.\r\nParameter name: value\r\n --- End of inner exception stack trace ---\r\n
    at Microsoft.Web.Deployment.DeploymentProviderOptions.set_Path(String value)\r\n at
    Microsoft.Web.Deployment.ManifestProvider.<GetPostProvidersHelper>d__0.MoveNext()\r\n at
    Microsoft.Web.Deployment.WebDeployEventHelper.EventWriteManifest(String sessionId, DeploymentObjectProvider provider)\r\n at
    Microsoft.Web.Deployment.DeploymentObject.SyncToInternal(DeploymentObject destObject, DeploymentSyncOptions syncOptions, PayloadTable payloadTable,
    ContentRootTable contentRootTable, Nullable`1 syncPassId, String syncSessionId)\r\n at
    Microsoft.Web.Deployment.DeploymentObject.SyncTo(DeploymentProviderOptions providerOptions, DeploymentBaseOptions baseOptions, DeploymentSyncOptions
    syncOptions)\r\n at Microsoft.Web.Deployment.WebApi.AppGalleryPackage.Deploy(String deploymentSite, String siteSlotId, Boolean doNotDelete)\r\n at

  • In reply to Justin Klei:

    Okay, looks like my parameters file was pointing to the wrong web deploy package for the bootloader. Making the change and then hopefully I can finally finish an install.
  • Okay, I finally got the deployment to succeed without any errors. The new ARM templates addressed the issues I was seeing (thanks Hao!). However, I am now getting errors during the post-deployment steps when I try to generate the catalog templates (Update Data Templates). Below is the error I get...any ideas as to what might be missing from the deployment or how to troubleshoot?

    System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentNullException: Value cannot be null. Parameter name: key at System.Collections.Concurrent.ConcurrentDictionary`2.ContainsKey(TKey key) at Sitecore.Commerce.Engine.Connect.DataProvider.CatalogRepository.GetEntityView(String sitecoreId, String viewName, String forAction, String itemId) at Sitecore.Commerce.Engine.Connect.DataProvider.Templates.CatalogTemplateGenerator.BuildCatalogTemplates(Database database) --- End of inner exception stack trace --- at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) at Sitecore.Jobs.JobRunner.RunMethod(JobArgs args) at (Object , Object[] ) at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain) at Sitecore.Jobs.Job.DoExecute() at Sitecore.Jobs.Job.ThreadEntry(Object state)
  • In reply to Himanshu Agarwal:

    Try Delete Data Templates before Update?