Actually it can be a problem.
For example your Solr is running in an application server with a limit on
the HttpRequestHeader.
So the server will refuse all the requests that exceeds that limit.

We are interested in only 3 metadata but Manifold extract n ( n>>3) for
each document.
We can configure the mapping to map those 3 metadata.
But the Post request is built with all the metadata from the document , it
exceeds the request header and the document will be Rejected without reason.

So if the meaning of the Solr field mapping in a Job with a Solr Connector
it's to index only those fields, so the current behaviour it's a bug.
For the reason I explained before.

Cheers


2013/12/13 Karl Wright <[email protected]>

> Hi Alessandro,
>
> Thank you for the clarification.
> If you believe it would be helpful to filter metadata, by all means open a
> ticket and attach a patch.  But I don't exactly see where there would be an
> issue, since metadata that is posted that is not in the Solr schema is
> simply going to be discarded.
>
> Karl
>
>
>
> On Fri, Dec 13, 2013 at 7:56 AM, Alessandro Benedetti <
> [email protected]> wrote:
>
> > Hi Karl,
> > I'm not referring to filter documents.
> > I'm referring to filter metadata associated to a document ( which will be
> > mapped in Solr fields by the Solr connector) .
> > Because now in the job metadata mapping screen, you can select a sub set
> of
> > metadata to be mapped in solr fields, but then all the metadata
> associated
> > to the document are sent to Solr ( in the way I expressed in the e mail).
> >
> > Cheers
> >
> >
> > 2013/12/13 Karl Wright <[email protected]>
> >
> > > Hi Alessandro,
> > >
> > > I'm not entirely sure I understand your use case, but so far in
> > ManifoldCF
> > > nobody has requested that an output connector perform document
> filtering,
> > > other than to reject documents by responding with "DOCUMENT_REJECTED".
> > > Usually document filtering is part of the repository connector's
> > > functionality, since filtering is most effective when it is described
> in
> > > terms of the individual repository's constructs.  At the repository
> > > connector level, you can describe an appropriate set of documents to
> > > include, rather than crawling everything and rejecting the ones you
> don't
> > > want.  This description is called the "Document Specification".  When
> you
> > > create and edit a job in the Crawler UI some of the job's tabs modify
> > that
> > > specification, and the repository connector code understands the
> > > specification and limits the documents being crawled using it.
> > >
> > > On the output side, e.g. in the Solr output connector, it's already too
> > > late to restrict which documents are crawled.  The best you can do is
> > just
> > > to not send them to the index, or explicitly reject them.  This makes
> the
> > > utility of any feature to filter documents in an output connector of
> > > limited utility, compared with doing the same thing in the Document
> > > Specification.
> > >
> > > Hope this helps,
> > > Karl
> > >
> > >
> > >
> > >
> > > On Fri, Dec 13, 2013 at 7:12 AM, Alessandro Benedetti <
> > > [email protected]> wrote:
> > >
> > > > Hi guys,
> > > > I have one question for you.
> > > > looking in the details of the SolrConnector it's possible to see
> that :
> > > >
> > > > org.apache.manifoldcf.agents.output.solr.HttpPoster
> > > >
> > > >  writeField(out,LITERAL+newFieldName,values);
> > > > // Write the commitWithin parameter
> > > >  if (commitWithin != null)
> > > >      writeField(out,COMMITWITHIN_METADATA,commitWithin);
> > > >      contentStreamUpdateRequest.setParams(out);
> > > >      contentStreamUpdateRequest.addContentStream(new
> > > >  RepositoryDocumentStream(is,length,contentType,contentName));
> > > >
> > > > In a Job using a Solr connector, it's possible to express the
> metadata
> > > > mapping, mapping specific metadata to solr field names.
> > > > But if you select only 3 mappings , what is happening is that all the
> > > > metadata in the manifold document are sent as params of the
> > > > contentStreamRequest and the mapping is used only to rename the
> fields
> > we
> > > > want to rename .
> > > >
> > > > In my opinion the mapping should be use as a filter as well.
> > > > Because if the user select only 3 metadata, he wants to see only
> those
> > > > metadata.
> > > > probably should be present at least a flag that allow the user to
> > filter
> > > > the metadata sent to solr or not.
> > > > A little change that can solve a lot of use cases when the user is
> > > > interested only in a subset of metadata and does not need to send
> > > > everithing in the header of the http POST.
> > > > I'm pretty new to ManifoldCF so let me know if this feature is
> already
> > > > there and I misunderstood something .
> > > >
> > > >
> > > > Cheers
> > > >
> > > >
> > > >
> > > >
> > > > --
> > > > --------------------------
> > > >
> > > > Benedetti Alessandro
> > > > Visiting card : http://about.me/alessandro_benedetti
> > > >
> > > > "Tyger, tyger burning bright
> > > > In the forests of the night,
> > > > What immortal hand or eye
> > > > Could frame thy fearful symmetry?"
> > > >
> > > > William Blake - Songs of Experience -1794 England
> > > >
> > >
> >
> >
> >
> > --
> > --------------------------
> >
> > Benedetti Alessandro
> > Visiting card : http://about.me/alessandro_benedetti
> >
> > "Tyger, tyger burning bright
> > In the forests of the night,
> > What immortal hand or eye
> > Could frame thy fearful symmetry?"
> >
> > William Blake - Songs of Experience -1794 England
> >
>



-- 
--------------------------

Benedetti Alessandro
Visiting card : http://about.me/alessandro_benedetti

"Tyger, tyger burning bright
In the forests of the night,
What immortal hand or eye
Could frame thy fearful symmetry?"

William Blake - Songs of Experience -1794 England

Reply via email to