Skip to main content

SDL Tridion: Which folders do we need to ensure to exclude from anti-virus scanning to publish items successfully?

 Many times, I have come across publishing issues due to one of the error messages below:

ERROR HTTPSTransportConnector - Unable to execute HTTP POST
java.io.FileNotFoundException: D:\Tridion\bin\transactions\tcm_0-4074583-66560.Content.zip (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method) ~[na:1.6.0_22]
    at java.io.FileInputStream.<init>(Unknown Source) ~[na:1.6.0_22]
    at org.apache.http.entity.mime.content.FileBody.writeTo(FileBody.java:100) ~[httpmime.jar:4.1.2]
    at org.apache.http.entity.mime.HttpMultipart.doWriteTo(HttpMultipart.java:206)

(...)

or

java.io.IOException: The process cannot access the file because another process has locked a portion of the file
    at java.io.FileInputStream.readBytes(Native Method)
    at java.io.FileInputStream.read(Unknown Source)
    at com.tridion.util.FileUtils.readFile(FileUtils.java:370)
    at com.tridion.util.FileUtils.readFile(FileUtils.java:352)
    at com.tridion.util.FileUtils.readFile(FileUtils.java:339)
   at Codemesh.JuggerNET.NTypeValue.Throw(Int64 inst)


These messages can happen when having an active anti-virus that is randomly locking and/or removing files that the Publisher/Transport and Deployer need to process packages. To avoid seeing similar error messages, ensure to exclude the folders mentioned below:
  • On the Content Manager servers exclude:
    • the root storage folder for the Publisher (by default, C:\temp) defined under Tridion Content Manager Snap-in > Publisher Settings;
    • the temporary path location (by default, C:\Windows\TEMP) defined under Tridion Content Manager Snap-in > General Settings;
    • the tridion_home location;
  • On the Content Deployer servers exclude: 
    • the incoming folder location defined on your cd_deployer_conf.xml;
    • the temporary location that the deployer uses to unzip packages, by default , the locate defined in the java.ip.tmpDir variable (c:\windows\temp or c:\temp or c:\Users\<username>\AppData\Local\Temp\1);
    • the TempFileSystemTransactionLocation set in each cd_storage_conf.xml - if multiple deployers are running on the same server;
    • the tridion_home location; 
Note: For security reasons, if your company cannot exclude c:\windows\temp and c:\temp from scanning, you can choose for the following approach:
  • For the Content Manager server in the :
    • Tridion Content Manager Snap-in > Publisher Settings - change the root storage folder to a separate location from the default C:\temp;
    • Tridion Content Manager Snap-in > General Settings - change the temporary path location to a separate location from the default C:\Windows\TEMP; 
  • For the Content Deployer server, you can specify  a different temporary location where the deployer will unzip the packages, by adding the element TempFileSystemTransactionLocation, for example:
<Storages TempFileSystemTransactionLocation="c:\tridion\deployer">

Comments

Popular posts from this blog

SDL Tridion: Tips to troubleshoot and resolve the 'Throttling' status

The throttling status should be a temporary state, so although you might see some items in the Publishing Queue with that state, it should resolve itself once the deployer has available threads to pick up more packages. In case the items stay 'stuck' in this status, there are a few things you can check that I enumerate below:
·As mentioned in the documentation, ensure that the window size is equal to or larger than the total number of Transport Service threads configured on the Content Manager side. This settings can be found in the cd_transport_conf.xml, as follows:
<Workers NormalPriorityPoolSize="5" HighPriorityPoolSize="5" TransportPriorityPoolSize="5"/>
By default, this section is commented out and these are the default values. If the deployer’s window size is lower than 5 then you need to change it to ensure that it is set to 5 or higher.
·Check if the database maintenance tasks for the broker database are in place and the frequency tha…

SDL Tridion: How to enable Profiling and Personalization in 2013 using Tracking Keys

When attempting to setup Profiling and Personalization in Tridion, I have faced some challenges and once I was able to get it to work, I have made a small list of steps that were essential to finish this setup.

Here you can find the steps I have followed to be able to enable P&P in my SDL Tridion 2013 environment using Tracking Keys:

Add the cd_wai.jar to your deployer and website's lib folder;

Add the cd_wai_conf.xml to your deployer and website's config folder;

Update the cd_wai_conf.xml to include a reference to the host name, in other words, the location of your website. In my case, I have changed it to the following:

<Host Domain="localhost" Port="83" Protocol="http" Path="/"/>

In the same configuration file, ensure to enable Personalization, as follows:

<Personalization Enabled="true" Persistence="cookies">

Now in your CME, create your target groups, by selecting your publication folder where yo…

Tips for configuring the SDL Tridion Cache Channel Service

When installing and configuring cache, you may have one of these two scenarios below:
Scenario 1: The deployer, CCS and websites all reside in the same server
When the deployer, CCS and websites are running on the same server, open the cd_storage_conf.xml of one of these components and make the following changes: ·Enable caching by setting the following flag to true: <ObjectCache Enabled=“true"> ·Leave the RMI section commented out:
<!-- RMI CacheChannel Connector example <RemoteSynchronization Queuesize="128" ServiceMonitorInterval="10000" FlushCacheDuringDisconnectInterval="20000"> <Connector Class="com.tridion.cache.RMICacheChannelConnector" Host="127.0.0.1" Port="1099" /> </RemoteSynchronization>--> ·Enable the item types that you would like to cache, by explicitly adding the cached element and setting it to true:
<Item typeMapping="Metadata" cached="true"(..)/> <Item ty…