Share » Forums » Developer » search indexing logical bug

search indexing logical bug

search indexing logical bug

Thursday 15 July 2004 1:21:34 am - 2 replies

Author Message

Lior Solomon

Thursday 15 July 2004 7:59:21 am

ok since i dont get a lot of attention here
i will tell everyone what i discoverd hopfully someone will direct me if i'm write or wrong

when an article is being published it's been indexed. if that object is located among other nodes/folders still it has the same object id.

so if i try to search a folder full of articles that were assigned to this folder (from original place) i will get ZERO results!!!

meaning that if i have a siteaccess per folder with a naive intention to use same article as i do on my other siteaccess there is no support for that.

MEANING i have to use different databases for different siteaccess if i want to be able to search the articles per site.
no can anyone tell me how "Content Managment System" relates to this sad discovery?
well i do hope i'm wrong cause i count on Ez Crew that has been spending so much efforts into this wonderfull growing product.

Lior

Lior Solomon

Thursday 15 July 2004 10:29:51 pm

well ezsearchengine.php module submits the following sql query:

this part creates the temp table
<i>$db->createTempTable( "CREATE TEMPORARY TABLE ezsearch_tmp_0 ( contentobject_id int primary key not null, published int )" );
</i>

and this one submits the search query:
<i>
$db->query( "INSERT INTO ezsearch_tmp_0 SELECT DISTINCT ezsearch_object_word_link.contentobject_id, ezsearch_object_word_link.published
FROM
ezcontentobject,
ezsearch_object_word_link
$subTreeTable,
ezcontentclass,
$subTreeTable,
ezcontentclass,
$subTreeTable,
ezcontentclass,
ezcontentobject_tree
WHERE
$searchDateQuery
$sectionQuery
$classQuery
$classAttributeQuery
$searchPartText
$subTreeSQL
ezcontentobject.id=ezsearch_object_word_link.contentobject_id and
ezcontentobject.contentclass_id = ezcontentclass.id and
ezcontentclass.version = '0' and
ezcontentobject.id = ezcontentobject_tree.contentobject_id</i>
<b>ezcontentobject_tree.node_id = ezcontentobject_tree.main_node_id and </b><i>
$sqlPermissionCheckingString" );
</i>
the bold part makes the query returns only the contentobjectid with main_node_id. that causes my search not to find any objects that were related to other nodes then the main location.
by putting this line into comment i will get duplicated results, cause it will find the object many times on other sub folders(nodes).
now searching by SubTreeArray[] creteria on a certen folder(the one that is related to my siteaccess) will return only the objects that are under my siteaccess. VOULLA!!!

i will submit that as an option on the suggestion forum.

thanks for nothing
;-)

Lior

You must be logged in to post messages in this topic!

36 542 Users on board!

Forums menu