- When content editor browses to certain ECL folders, error as below is seen in the CME notifications and folder cannot be expanded.
Unable to get the list of items A database error occurred while executing Stored Procedure "EDA_ORG_ITEMS_GETIDSFROMPATHS". at Tridion.ExternalContentLibrary.UI.Model.Services.GeneralImpl.GetList(String id, Int32 pageIndex, Filter filter, Int32 columns) at Tridion.ExternalContentLibrary.UI.Model.Services.General.GetList(String id, Int32 pageIndex, Filter filter, Int32 columns) at SyncInvokeGetList(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at Tridion.Web.UI.Core.Extensibility.DataExtenderOperationInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)- Other ECL folders can be expanded as expected by content editors. - Customer is integrating with an external DAM application via ECL framework. |
Issue due to long ECL URIs, which can be captured in a SQL Profiler trace, as below (some keywords have replaced with alphabetic strings)
ecl:0-clp-abcdefg!2F;residential!2D;abcd!2F;places!2F;a!2D;abcdefg!2D;abcdef!2D;abcdefghi!2D;the!2D;importance!2D;of!2D;abcdefgh!2D;ac!2D;coils!2D;and!2D;the!2D;abcde!2D;of!2D;abcde!2D;air!2D;abcdefghijklmn!2D;abcde!2D;and!2D;abcde!2D;abcdefghi!2D;abcde-abc!5F;img-fileThe maximum allowed length for an ECL URI is 256 characters, as the Content Manager has a maximum limitation of 256 characters of content item titles. Content editors can/should also use shorter filenames for assets as an alternative solution. |
It is the responsibility of the ECL Provider/Connector to ensure that long paths in the external system don't lead to long ECL URIs. Preferably, the ECL Provider/Connector does not put external system paths in the ECL URI at all, because this also means that if the item is moved in the external system, its ECL URIs changes, potentially leading to “broken links“ in CM. Some Connector implementations use an external GUID mapping to map paths in the external system to a GUID, which remains unchanged if the item is moved. This GUID is put in the ECL URI and that makes the ECL URI significantly shorter than 256 characters. |