3

In our SmartTarget/Fredhopper implementation we're using the pick-up directory approach not the direct deploy web service (configured via smarttarget_conf.xml). This allows us to enrich the XML prior to sending it to Fredhopper.

Any template using the Add to SmartTarget TBB causes the Deployer to follow our config and dump some FAS XML in a folder.

Everything works fine but we noticed that when we un-publish a DCP that does not use this TBB, the Deployer still drops an XML file in our pick-up directory with FAS XML for a "delete" operation!

Is this behaviour correct?

Its odd that the Deployer can distinguish what needs to go to Fredhopper and what doesn't when you publish, but not when you unpublish - we're wasting a message to Fredhopper that need not go.

Cheers

| improve this question | | | | |
  • Templates are not executed when you unpublish, so this trade-off (deleting always) seems reasonable to me. – Nuno Linhares Dec 10 '13 at 11:49
2

I don't see anything in the docs, you might have (cough) to have a 'closer' look at the com.tridion.smarttarget.deployer.FredhopperUndeployModule to see what's actually happening under the hood.

I think it's actually a good idea to have the item process for a delete, it could be that there's a ton of content published and the template uses the 'Add to SmartTarget' TBB, this could then be removed meaning the content would never be taken out of FH. If it's not causing you any grief, i'd recommend keeping it as is.

| improve this answer | | | | |
  • Marking this as the answer as I took a "closer" look at the undeploy module and - although I'm no Java developer - it appears that becuase the unpublish instruction in the package sent to the Deployer doesn't contain any rendering metadata like it does when you publish - the module has no way to determine if this is a SmartTarget DCP or not so it doesn't even try to. It simply generates the delete operation regardless. Guess I could roll my own unpublish module and maybe check for configured templates Ids or something if I really wanted to. – Neil Dec 10 '13 at 9:19
3

Although unpublishing a CT will create a delete operation for FH The CT contains no "Add To ST" TBB, so no DCP's with that template will be in FH, so nothing will be deleted.

Indeed this is by design because a) we want to keep content in the Broker and in FH synchronized. b) we do not have the "Add To ST" information on unpublish

I will however add it to our backlog to have a look if we can not remove this overhead :)

| improve this answer | | | | |
1

What process do you follow to unpublish this specific Dynamic Component Presentation (DCP)?

When unpublishing a Component, Tridion unpublishes all its DCPs, which means if a single Dynamic Component Template (CT) contains the "Add to SmartTarget" TBB, it will send the Delete operation to Fredhopper (FH).

If you unpublish a specific CT which does not contain the "Add to SmartTarget" TBB, then I would not expect the delete operation to go to FH.

| improve this answer | | | | |
  • Phillippe - This is exactly what is happening. We unpublish a specific CT which does not contain the "Add to SmartTarget" TBB and yet the Deployer still creates a delete operation. – Neil Dec 10 '13 at 9:03
  • Like I said we do not have that information in our deployer extension on unpublish, so we can't decide whether or not to create the delete operation, always creating it will get us to the correct situation, the other option being not able to unpublish components from FH at all – Gertjan Assies Dec 12 '13 at 10:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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