3

I have been trying to publish a Dynamic Component Presentation but for some reason it keeps on failing with the following error:

enter image description here

When I preview the same component in the CMS getting below error:

Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. The wait operation timed out

enter image description here

5
  • Can you run the sp_updatestats in CM database and then try again? also monitor is there any query running or taking longer to execute?
    – Velmurugan
    Commented Feb 4, 2019 at 10:47
  • After running sp_updatestats in CM database publishing will work fine for one or two days after some days landing up again with same issue.
    – k951
    Commented Feb 4, 2019 at 10:54
  • If that's the case, then you'll probably want to schedule this to run every 12 - 24 hours. Commented Feb 4, 2019 at 11:21
  • Are you up to date with hotfixes? You will find at least one hotfix relating to getitems SP's. Commented Feb 4, 2019 at 11:44
  • We didn't go with any hotfixes for DB issue, if any hotfixes are available related to the above error please let me know
    – k951
    Commented Feb 4, 2019 at 11:53

4 Answers 4

6

This looks like a typical timeout issue and there are a lot of similar question on this topic. The first thing to check is whether you have regular database maintenance performed? If not, do one (and start doing it on a regular basis, if possible daily) and try again. Database maintenance (Tridion specific) described here.

You could increase the timeouts as described here, but in most cases that is just masking the problem.

Similar questions:

2

The components which were failing while publishing/previewing due to the database error was due to the Razor template which was taking more 90 to 200sec to execute that was causing the issue.

To resolve the above issue:

On the CMS and Publisher server went to the Programs > SDL Web > SDL Web Content Manager configuration in the Microsoft Windows Start menu.

Navigate to the Timeout settings section

In that we increased the timeout value from 50sec to 900sec for the Seconds before a timeout error is generated when executing a query.

After increasing the timeout restarted COM+ and required services on both the server to ensure updated settings are used.

With the above changes publishing was going smooth but it was taking more time at rendering phase and apart from these few more observations are:

  1. In the CMS DB when we checked the CPU usage was high sometimes it was reaching up to 99%.
  2. In the Publisher server when checked the Event Viewer in the application and server logs -> navigate to tridion when we are publishing template issues related components getting "n" no of warnings.

After trying with multiple options we came to know that main culprit is "Razor Template".

In the razor template we are calling function called "GetTemplateId("CPTest_CT") which was causing the issue.

To resolve this issue as per time being wherever they are calling GetTemplateId passing the hardcoded id of component template. After doing this changes all the above issues got resolved.

I'm explaining in detail if next time anyone encounter this issue it may help.

enter image description here

enter image description here

1

Timeout errors on a database pointing to lacking database maintenance, so first things I would recommend to look at is updating the database stats and rebuilding the indexes.

Always make sure you do regular database maintenance or its performance will deteriorate over time.

Ask your DBA team to schedule to run this sp_updatestats daily every 2hr or 3hr interval, Its'depends on your business how frequent CME used by the editor for content creation and editing.

I hope it helps

0

A database error occurred while executing Stored Procedure "EDA_PUBLICATIONS_GETITEMSOFTYPE_83". You may have some poor template code, especially if publishing is generally slow.

Diagnose

You can check this problem in the CMS Database

/****** Script for SelectTopNRows command from SSMS  ******/
SELECT [ID]
  ,[SOURCE_ITEM_REFERENCE_ID]
  ,[SOURCE_ITEM_TYPE]
  ,[PUBLICATION_ID]
  ,[PUBLICATION_TARGET_ID]
  ,[TRUSTEE_ID]
  ,[PRIORITY]
  ,[PUBLISH_ACTION]
  ,[STATE]
  ,[STATE_CHANGE_TIME]
  ,[PUBLISH_TIME]
  ,[DEPLOY_TIME]
  ,[PUBLISHER_REQUEST]
  ,[INFORMATION]
  ,[IGNORE_RENDER_FAILURES]
  ,[MAX_RENDER_FAILURES]
  ,[SOURCE_ITEM_TITLE]
  ,[SOURCE_ITEM_PATH]
  ,[TARGET_TYPE_ID]
  ,[PUBLISHER_HOST]
  ,[CREATED_AT]
  ,[STARTED_AT]
  ,[FINISHED_AT]
  ,[RESOLVING_TIME]
  ,[RENDERING_TIME]
FROM [tridion_cm].[dbo].[PUBLISH_TRANSACTIONS]
Where STATE_CHANGE_TIME Between GetDate()-1 AND GetDate()
order by STATE_CHANGE_TIME desc

You will see that the Rendering time is NULL because it failed to render.

Set your SDL Console Timeouts to Stupid No Timeouts

And restart your publisher

Then resubmit the failed publishing Tasks and check the rendering time when they are done. Carp Template Code

Failed tasks will still be null but you will see the impact of poor template code by the HUGE rendering times.

Resolution

Rewrite the bad template code until you get more sensible rendering times, Then you can reset the SDL Console timeouts to better values.

Publishing will now be so much faster.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.