This sounds like a good idea, I'm assuming I'd need to make my own
UnInvertingReader (or subclass) to do this right?  Is there a way to do
this on the 5.x codebase or would I still need the solrindexer factory work
that Tomás mentioned previously?

Tomás, is there a ticket for the SolrIndexer factory?  I'd like to follow
it's work to know what version of 5.x (or later) I should be looking for
this in.

On Thu, Aug 27, 2015 at 1:06 PM, Yonik Seeley <ysee...@gmail.com> wrote:

> UnInvertingReader makes indexed fields look like docvalues fields.
> The caching itself is still done in FieldCache/FieldCacheImpl
> but you could perhaps wrap what is cached there to either screen out
> stuff or construct a new entry based on the user.
>
> -Yonik
>
>
> On Thu, Aug 27, 2015 at 12:55 PM, Jamie Johnson <jej2...@gmail.com> wrote:
> > I think a custom UnInvertingReader would work as I could skip the process
> > of putting things in the cache.  Right now in Solr 4.x though I am
> caching
> > based but including the users authorities in the key of the cache so
> we're
> > not rebuilding the UnivertedField on every request.  Where in 5.x is the
> > object actually cached?  Will this be possible in 5.x?
> >
> > On Thu, Aug 27, 2015 at 12:32 PM, Yonik Seeley <ysee...@gmail.com>
> wrote:
> >
> >> The FieldCache has become implementation rather than interface, so I
> >> don't think you're going to see plugins at that level (it's all
> >> package protected now).
> >>
> >> One could either subclass or re-implement UnInvertingReader though.
> >>
> >> -Yonik
> >>
> >>
> >> On Thu, Aug 27, 2015 at 12:09 PM, Jamie Johnson <jej2...@gmail.com>
> wrote:
> >> > Also in this vein I think that Lucene should support factories for the
> >> > cache creation as described @
> >> > https://issues.apache.org/jira/browse/LUCENE-2394.  I'm not endorsing
> >> the
> >> > patch that is provided (I haven't even looked at it) just the concept
> in
> >> > general.
> >> >
> >> > On Thu, Aug 27, 2015 at 12:01 PM, Jamie Johnson <jej2...@gmail.com>
> >> wrote:
> >> >
> >> >> That makes sense, then I could extend the SolrIndexSearcher by
> creating
> >> a
> >> >> different factory class that did whatever magic I needed.  If you
> >> create a
> >> >> Jira ticket for this please link it here so I can track it!  Again
> >> thanks
> >> >>
> >> >> On Thu, Aug 27, 2015 at 11:59 AM, Tomás Fernández Löbbe <
> >> >> tomasflo...@gmail.com> wrote:
> >> >>
> >> >>> I don't think there is a way to do this now. Maybe we should
> separate
> >> the
> >> >>> logic of creating the SolrIndexSearcher to a factory. Moving this
> logic
> >> >>> away from SolrCore is already a win, plus it will make it easier to
> >> unit
> >> >>> test and extend for advanced use cases.
> >> >>>
> >> >>> Tomás
> >> >>>
> >> >>> On Wed, Aug 26, 2015 at 8:10 PM, Jamie Johnson <jej2...@gmail.com>
> >> wrote:
> >> >>>
> >> >>> > Sorry to poke this again but I'm not following the last comment of
> >> how I
> >> >>> > could go about extending the solr index searcher and have the
> >> extension
> >> >>> > used.  Is there an example of this?  Again thanks
> >> >>> >
> >> >>> > Jamie
> >> >>> > On Aug 25, 2015 7:18 AM, "Jamie Johnson" <jej2...@gmail.com>
> wrote:
> >> >>> >
> >> >>> > > I had seen this as well, if I over wrote this by extending
> >> >>> > > SolrIndexSearcher how do I have my extension used?  I didn't
> see a
> >> way
> >> >>> > that
> >> >>> > > could be plugged in.
> >> >>> > > On Aug 25, 2015 7:15 AM, "Mikhail Khludnev" <
> >> >>> mkhlud...@griddynamics.com>
> >> >>> > > wrote:
> >> >>> > >
> >> >>> > >> On Tue, Aug 25, 2015 at 2:03 PM, Jamie Johnson <
> jej2...@gmail.com
> >> >
> >> >>> > wrote:
> >> >>> > >>
> >> >>> > >> > Thanks Mikhail.  If I'm reading the SimpleFacets class
> >> correctly,
> >> >>> out
> >> >>> > >> > delegates to DocValuesFacets when facet method is FC, what
> used
> >> to
> >> >>> be
> >> >>> > >> > FieldCache I believe.  DocValuesFacets either uses DocValues
> or
> >> >>> builds
> >> >>> > >> then
> >> >>> > >> > using the UninvertingReader.
> >> >>> > >> >
> >> >>> > >>
> >> >>> > >> Ah.. got it. Thanks for reminding this details.It seems like
> even
> >> >>> > >> docValues=true doesn't help with your custom implementation.
> >> >>> > >>
> >> >>> > >>
> >> >>> > >> >
> >> >>> > >> > I am not seeing a clean extension point to add a custom
> >> >>> > >> UninvertingReader
> >> >>> > >> > to Solr, would the only way be to copy the FacetComponent and
> >> >>> > >> SimpleFacets
> >> >>> > >> > and modify as needed?
> >> >>> > >> >
> >> >>> > >> Sadly, yes. There is no proper extension point. Also, consider
> >> >>> > overriding
> >> >>> > >> SolrIndexSearcher.wrapReader(SolrCore, DirectoryReader) where
> the
> >> >>> > >> particular UninvertingReader is created, there you can pass the
> >> own
> >> >>> one,
> >> >>> > >> which refers to custom FieldCache.
> >> >>> > >>
> >> >>> > >>
> >> >>> > >> > On Aug 25, 2015 12:42 AM, "Mikhail Khludnev" <
> >> >>> > >> mkhlud...@griddynamics.com>
> >> >>> > >> > wrote:
> >> >>> > >> >
> >> >>> > >> > > Hello Jamie,
> >> >>> > >> > > I don't understand how it could choose DocValuesFacets (it
> >> >>> occurs on
> >> >>> > >> > > docValues=true) field, but then switches to
> >> >>> > >> UninvertingReader/FieldCache
> >> >>> > >> > > which means docValues=false. If you can provide more
> details
> >> it
> >> >>> > would
> >> >>> > >> be
> >> >>> > >> > > great.
> >> >>> > >> > > Beside of that, I suppose you can only implement and inject
> >> your
> >> >>> own
> >> >>> > >> > > UninvertingReader, I don't think there is an extension
> point
> >> for
> >> >>> > this.
> >> >>> > >> > It's
> >> >>> > >> > > too specific requirement.
> >> >>> > >> > >
> >> >>> > >> > > On Tue, Aug 25, 2015 at 3:50 AM, Jamie Johnson <
> >> >>> jej2...@gmail.com>
> >> >>> > >> > wrote:
> >> >>> > >> > >
> >> >>> > >> > > > as mentioned in a previous email I have a need to provide
> >> >>> security
> >> >>> > >> > > controls
> >> >>> > >> > > > at the term level.  I know that Lucene/Solr doesn't
> support
> >> >>> this
> >> >>> > so
> >> >>> > >> I
> >> >>> > >> > had
> >> >>> > >> > > > baked something onto a 4.x baseline that was sufficient
> for
> >> my
> >> >>> use
> >> >>> > >> > cases.
> >> >>> > >> > > > I am now looking to move that implementation to 5.x and
> am
> >> >>> running
> >> >>> > >> into
> >> >>> > >> > > an
> >> >>> > >> > > > issue around faceting.  Previously we were able to
> provide a
> >> >>> > custom
> >> >>> > >> > cache
> >> >>> > >> > > > implementation that would create separate cache entries
> >> given a
> >> >>> > >> > > particular
> >> >>> > >> > > > set of security controls, but in Solr 5 some faceting is
> >> >>> delegated
> >> >>> > >> to
> >> >>> > >> > > > DocValuesFacets which delegates to UninvertingReader in
> my
> >> case
> >> >>> > (we
> >> >>> > >> are
> >> >>> > >> > > not
> >> >>> > >> > > > storing DocValues).  The issue I am running into is that
> >> before
> >> >>> > 5.x
> >> >>> > >> I
> >> >>> > >> > had
> >> >>> > >> > > > the ability to influence the FieldCache that was used at
> the
> >> >>> Solr
> >> >>> > >> level
> >> >>> > >> > > to
> >> >>> > >> > > > also include a security token into the key so each cache
> >> entry
> >> >>> was
> >> >>> > >> > scoped
> >> >>> > >> > > > to a particular level.  With the current implementation
> the
> >> >>> > >> FieldCache
> >> >>> > >> > > > seems to be an internal detail that I can't influence in
> >> >>> anyway.
> >> >>> > Is
> >> >>> > >> > this
> >> >>> > >> > > > correct?  I had noticed this Jira ticket
> >> >>> > >> > > > https://issues.apache.org/jira/browse/LUCENE-5427, is
> there
> >> >>> any
> >> >>> > >> > movement
> >> >>> > >> > > > on
> >> >>> > >> > > > this?  Is there another way to influence the information
> >> that
> >> >>> is
> >> >>> > put
> >> >>> > >> > into
> >> >>> > >> > > > these caches?  As always thanks in advance for any
> >> suggestions.
> >> >>> > >> > > >
> >> >>> > >> > > > -Jamie
> >> >>> > >> > > >
> >> >>> > >> > >
> >> >>> > >> > >
> >> >>> > >> > >
> >> >>> > >> > > --
> >> >>> > >> > > Sincerely yours
> >> >>> > >> > > Mikhail Khludnev
> >> >>> > >> > > Principal Engineer,
> >> >>> > >> > > Grid Dynamics
> >> >>> > >> > >
> >> >>> > >> > > <http://www.griddynamics.com>
> >> >>> > >> > > <mkhlud...@griddynamics.com>
> >> >>> > >> > >
> >> >>> > >> >
> >> >>> > >>
> >> >>> > >>
> >> >>> > >>
> >> >>> > >> --
> >> >>> > >> Sincerely yours
> >> >>> > >> Mikhail Khludnev
> >> >>> > >> Principal Engineer,
> >> >>> > >> Grid Dynamics
> >> >>> > >>
> >> >>> > >> <http://www.griddynamics.com>
> >> >>> > >> <mkhlud...@griddynamics.com>
> >> >>> > >>
> >> >>> > >
> >> >>> >
> >> >>>
> >> >>
> >> >>
> >>
>

Reply via email to