0

I have made an adjustment to my blueprinting structure, so that what was previously a publishable web publication has now been turned into a non publishable web publication at a parent level. A new child web publication has been created to take it's place.

As such, this has created a new publication ID. I've updated all configurations with this new ID, and been able to successfully publish content to the presentation servers on the file system. Dynamic component presentations are also being published into the broker database using the new ID.

However, recently one of my dynamic component templates has stopped publishing to the broker. It publishes to the file system, but no record of the component appears in the LINK_INFO table of the broker. This means dynamic linking for content using this template is failing on the website.

Could anyone possible tell me if they know why this is occurring?

UPDATE 2: Found something interesting.....dynamic linking is actually working but only for some component templates. I discovered this by using the ComponentLink.GetLink(string) method to see if it would return a link...for some content types it does, but for others which previously had links, it now doesn't, even after republishing these templates :s

UPDATE: cd_storage.xml

<Configuration Version="6.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:noNamespaceSchemaLocation="schemas/cd_storage_conf.xsd">
 <Global>
  <ObjectCache Enabled="false">
   <Policy Type="LRU" Class="com.tridion.cache.LRUPolicy">
    <Param Name="MemSize" Value="16mb"/>
   </Policy>
   <Features>
    <Feature Type="DependencyTracker" Class="com.tridion.cache.DependencyTracker"/>
   </Features>
  </ObjectCache>
  <Storages>
   <StorageBindings>
     <Bundle src="AudienceManagerDAOBundle.xml" />
   </StorageBindings>
   <Storage Type="persistence" Id="defaultdb" dialect="MSSQL"
            Class="com.tridion.storage.persistence.JPADAOFactory">
     <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
           CheckoutTimeout="120" />
     <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
      <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
      <Property Name="portNumber" Value="1433" />
      <Property Name="databaseName" Value="uat_mal_Tridion_Broker_2" />
      <Property Name="user" Value="uat_mal" />
      <Property Name="password" Value="mj][zdvd=h" />
     </DataSource>
    </Storage>
    <Storage Type="persistence" Id="profiledb" dialect="MSSQL" 
          Class="com.tridion.storage.persistence.JPADAOFactory" 
          defaultStorage="false">
      <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
            CheckoutTimeout="120" />
      <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
       <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
       <Property Name="portNumber" Value="1433" />
       <Property Name="databaseName" Value="uat_mal_Tridion_submgmt" />
       <Property Name="user" Value="uat_mal" />
       <Property Name="password" Value="mj][zdvd=h" />
      </DataSource>
    </Storage>
    <Storage Type="persistence" Id="trackingdb" dialect="MSSQL" 
          Class="com.tridion.storage.persistence.JPADAOFactory" 
          defaultStorage="false">
     <Pool Type="jdbc" Size="5" MonitorInterval="60" IdleTimeout="120" 
           CheckoutTimeout="120" />
      <DataSource Class="com.microsoft.sqlserver.jdbc.SQLServerDataSource">
        <Property Name="serverName" Value="lon1udb01.int.rroom.net" />
        <Property Name="portNumber" Value="1433" />
        <Property Name="databaseName" Value="uat_mal_Tridion_tracking" />
        <Property Name="user" Value="uat_mal" />
        <Property Name="password" Value="mj][zdvd=h" />
      </DataSource>
    </Storage>
    <Storage Type="filesystem"  Id="defaultFile" 
              Class="com.tridion.storage.filesystem.FSDAOFactory" 
              defaultFilesystem="false" 
              defaultStorage="false">
      <Root Path="c:\websites\live" />
    </Storage>
    <Storage Type="filesystem"  Id="defaultFileAssets" 
                Class="com.tridion.storage.filesystem.FSDAOFactory" 
                defaultFilesystem="false" 
                defaultStorage="true">
      <Root Path="c:\websites\live\malvern.com.en\Assets" />
    </Storage>
    <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory"
             Id="malenctrls" defaultFilesystem="false" defaultStorage="false">
      <Root Path="c:\websites\live\malvern.com.en\usercontrols" />
    </Storage> 
    <Storage Type="filesystem" Class="com.tridion.storage.filesystem.FSDAOFactory" 
             Id="malcnctrls" defaultFilesystem="false" defaultStorage="false">
      <Root Path="c:\websites\live\malvern.com.cn\usercontrols" />
    </Storage>      
    <SearchFilter Name="SearchFilter" 
                  Class="com.tridion.broker.components.meta.MsSqlSearchFilterHome" 
                  defaultStorageId="defaultdb"/>
  </Storages>
  <Transaction Timeout="60000" MonitorInterval="5000"/>
 </Global>
 <ItemTypes defaultStorageId="defaultdb" cached="false">
  <Item storageId="profiledb" typeMapping="AudienceManagerProfile" cached="false"/>
  <Item storageId="trackingdb" typeMapping="AudienceManagerTracking" cached="false" />
  <!-- GLOBAL MASTER -->
  <Publication Id="22" defaultStorageId="defaultdb" cached="false">
    <Item storageId="defaultFile" typeMapping="Page" cached="false" />
    <Item storageId="defaultFile" typeMapping="Binary" cached="false" />
    <Item storageId="malenctrls" typeMapping="ComponentPresentation" 
          itemExtension=".ascx" cached="false" />
  </Publication>
  <!-- CHINESE WEB -->
  <Publication Id="15" defaultStorageId="defaultdb" cached="false">
    <Item storageId="defaultFile" typeMapping="Page" cached="false" />
    <Item storageId="defaultFile" typeMapping="Binary" cached="false" />
    <Item storageId="malcnctrls" typeMapping="ComponentPresentation" 
          itemExtension=".ascx" cached="false" />
  </Publication>
 </ItemTypes>
 <License Location="c:/tridion/config/cd_licenses.xml"/>

Dominic Cronin
  • 6,062
  • 2
  • 23
  • 56
Richard Read
  • 923
  • 6
  • 13
  • in that case may be broker logging ( set to "debug" mode) and profiling the Sql database (if you are using Sql server) give you a detail reason. – Ram Saurabh Sep 07 '12 at 09:47
  • 2
    You may have a publication-specific storage configuration. Can you share your cd_storage_conf.xml please? – Quirijn Sep 07 '12 at 10:06
  • 1
    Is it possible your cd_license.xml file has expired, and the deployer is dropping back to limited file system publishing? But I think @Quirijn's comment is more likely. – Chris Summers Sep 07 '12 at 11:24
  • Sorry I haven't got back to this, been off ill! Our cd_storage config is in the question – Richard Read Sep 10 '12 at 08:25
  • I don't think the cd_license file has expired as we only generated it 2 months ago, how would I check? – Richard Read Sep 10 '12 at 09:04
  • Just as a general update as well, this only effecting ONE template, all other templates appear to resolving dynamic links – Richard Read Sep 10 '12 at 10:12
  • @ Richard, Check your cd_license.xml file in the installtion folder.in this XML file there will be a node ... with expiration-date="" attribute. It should contain future date. – Ram Saurabh Sep 10 '12 at 12:42
  • There is no expiration-date attribute in any of the key nodes, I guess there should be one or the licence doesn't expire? – Richard Read Sep 10 '12 at 12:46
  • Tridion ships the XML schemas for the config files. It's always good to do a schema validation if you're getting weird results. – Dominic Cronin Oct 27 '12 at 08:19

3 Answers3

1

You have

<Storage Type="filesystem" Id="defaultFileAssets" 
  Class="com.tridion.storage.filesystem.FSDAOFactory" defaultFilesystem="false" 
  defaultStorage="true">

and no TypeMappings definition anywhere in your cd_storage_conf.xml. This makes the "defaultFileAssets" the storage location of choice for the deployer.

I would normally expect something like this

<ItemTypes defaultStorageId="defaultdb" cached="false">
    <Item typeMapping="Page" cached="false" storageId="defaultFile"/>
<Item typeMapping="Binary" storageId="defaultFile" cached="false"/>
</ItemTypes>

in your Configuration node.

It would also be very helpful to ensure that the configuration you have posted is actually being used; you can view this in the logfiles generated by Tridion (with debug logging enables) as it logs which config file it is using; there has been more than one occasion where I was puzzled with issues simply because I was looking at the wrong configuration file...

Bjørn van Dommelen
  • 1,057
  • 7
  • 13
1

I've removed a lot of unhelpful comments from the storage configuration in the question. Now it's easy to see that as Quirijn suspected, there are publication-specific configurations in play. If your web publication id was previously 15 or 22, and this has changed, that would explain your problem.

Dominic Cronin
  • 6,062
  • 2
  • 23
  • 56
0

I think the issue may be being caused by an expired cd_licence file but i can't confirm it, have asked SDL support to tell me if it's so

Richard Read
  • 923
  • 6
  • 13