Monthly Archives: January 2012

Speeding up EPiServer dynamic properties

Dynamic properties are a very useful feature in EPiServer, however, they have always been know to be slow.

Pre EPiServer CMS 6 R2

There is a fix detailed in Svante Seleborg’s post “Dynamic Properties performance revisited“.

The speed problem is partly because the temporary table created within the netDynamicProperties stored procedure does not having an index. The fix is to add an index to the temporary table. Adding this line to the stored procedure creates the index:

create clustered index idx_tmpprop_fkParentID on #tmpprop ( fkParentID )

CMS6 R2 Onwards

The performance issues with dynamic properties have been fixed in EPiServer CMS 6 R2

The full details of the fix are detailed in Magnus StrĂ¥le’s post “Dynamic property performance improvements“.

There is a useful side effect to this, the addition of theanew NullLanguageSelector. This can be used in a call to the GetPage method, to return a non language specific PageData. Using this is supposed to give a 5-10% speed improvement.