When I publish an item from Tridion, the fredhopper is processing the data and it saying that the item is added (based on the log); In the Query server(http://localhost:9180/preview/) as well as on the Indexer the count is getting increased; But If I search for the same in the catalog the item is not showing in the list.

Another strange thing noticed; If I open the catalog and filter on "View All" It shows the item on the Indexer. But in the Query server the item is not listing. E.g: Before publishing the item count in Query Sever/Indexer is 49; after publishing the item count is increased to 50. But still the item is not showing on the list .

Any clue what is going wrong?

  • Check all indexer logs (xmlloader, treebuilder, searchindexer): might be that one of them has failed to index the item.
    – ankon
    Apr 13, 2016 at 14:35

3 Answers 3


Important to note:

Usually, this issue occurs whenever you are trying to modify the existing used Smarttarget TBB enabled schema to add additional metadata fields, In my previous implementation every month we had an ongoing enhancement releases, we have modified the Banner schema to include new additional metadata fields after the deployment then this issue started appearing then realized that it's required to re-index if you changing the existing used smarttarget TBB schema.

And then every enhancement release if Banner schema modified then we did full-re-index to fix this issue and then noticed this issue gone.


This can happen when replication between indexer and query is not working for whatever reason.

Some of the reasons can be:

  • syncclient or qserver process on query is stuck
  • syncserver or qserver on indexer are stuck.

What most probably happened is that once you restarted server, by default you restarted all these processes, so it started working correctly.

Also, I don't know your maintenance procedure, but Fredhopper support suggests daily restart of qserver and syncclient/syncserver processes and weekly reindex.

In any case, these are the steps for restarting your query processes:

Stop status servlet using code below

# wget -qO-  http://hostURL:port/status?stop

After the status is stopped you have to wait 30 seconds for load balancer to exclude this instance

Stop qserver proccess

# ./bin/deployment-agent-client --location <SERVER> <INSTANCE> qserver stop
--Result: OK
# ./bin/deployment-agent-client --location <SERVER> <INSTANCE> qserver status

Start qserver and check status

# ./bin/deployment-agent-client --location <SERVER> <INSTANCE> qserver start
--Result: OK
# ./bin/deployment-agent-client --location <SERVER> <INSTANCE> qserver status

Wait few minutes and then check instance status

# wget -qO-  http://hostURL:port/status
--Result: Timestamp if status is available

If instance is available you can continue with second instance, otherwise check log files.


I was not sure what went wrong, it started working after restarting my server. After restarting the server, just restarted and started both indexer and query server; That's it...!!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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