Hello,

I'm trying to resolve a problem for which I've seen several posts but I have
not found any suitable answer.

I need to filter my results according to complex rights managment such as it
can't be part of a field or something like this. So let's say that the only
way to know if a user has access rights is by calling something like
accessRights(sessionID, docID) where docID is stored in a field.

My first idea was to simply delete results from rsp.getResults() after the
search process but it breaks faceting (expecially facet count). So since I
don't see any way to delete results from faceting it's not a good answer
(anyway it's ugly to build facets to delete them after).

I then decided to use a custom SearchComponent called right after index
querying (before faceting is done) but for what I have read it's not a good
idea to delete results because they are stored in more than one place and it
could break the caching system (I suppose that if I delete results for user
A they will be deleted for user B too if he makes the same query although he
does have access rights). Anyway I don't really understand where results are
stored in ResponseBuilder; DocSet / DocList are pretty obscur.

So here I am, I need a way to filter results from cache for each query
basing on an external function call but I don't see how without having to
write my own QueryComponent).


Thanks for your help.
-- 
View this message in context: 
http://www.nabble.com/Delete---filter---hide-query-results-tp21287332p21287332.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to