more than one text corpus with solr?

2012-06-30 Thread Giovanni Gherdovich
Hi all,

i am experimenting with solr, and I feel the need to
index more than just one corpus and search them
with solr independently.

is it possible to have this setup?
Several independent indices all managed by the same solr instance?

cheers,
Giovanni


how to retrieve a doc from its docID ?

2012-06-30 Thread Giovanni Gherdovich
Hi all,

when querying my solr instance, the answers I get
are the document IDs of my docs. Here is how one of my docs
looks like:

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
add
doc
field name=texthello solar!/field
field name=id123/field
/doc
/add
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

here is the response if I query for solar :

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
response
lst name=responseHeader/lst
result name=response numFound=1 start=0 maxScore=1.0
docfloat name=score1.0/float
str name=id123/str/doc
/result
/response
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

which is, solr gives me the doc ID. How to retrieve the doc's field text
given its id ?

cheers,
Giovanni


querying thru solritas gives me zero results

2012-06-30 Thread Giovanni Gherdovich
Hi all,

this morning I was very proud of myself since I managed
to set up solritas ( http://wiki.apache.org/solr/VelocityResponseWriter )
for the solr instance on my server (ubuntu natty).

This joy lasted only half a minute, since the only query
that gets more than zero results with solritas is the catchall *:*

for example:
http://my.server.com:8080/solr/select/?q=foobar has thousands of results,
​http://my.server.com:8080/solr/itas?q=foobar has none

Here the standard and velocity request handlers from my solrconfig.xml;

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
  requestHandler name=standard class=solr.SearchHandler default=true
 lst name=defaults
   str name=echoParamsexplicit/str
 /lst
  /requestHandler
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
  queryResponseWriter name=velocity
class=org.apache.solr.request.VelocityResponseWriter/
  requestHandler name=/itas class=solr.SearchHandler
lst name=defaults
  str name=wtvelocity/str
  str name=v.templatebrowse/str
  str name=titleSolr cookbook example/str
  str name=defTypedismax/str
  str name=q.alt*:*/str
  str name=rows10/str
  str name=fl*,score/str
  str name=qfname/str
/lst
  /requestHandler
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

any hint on how I can debug that?

cheers,
Giovanni


Re: how to retrieve a doc from its docID ?

2012-06-30 Thread Sascha Szott
Hi,

did you include the fl parameter in the Solr query URL? If that's the case make 
sure that the field name 'text' is mentioned there. You should also make sure 
that the field definition (in schema.xml) for 'text' says stored=true, 
otherwise the field will not be returned.

-Sascha



Giovanni Gherdovich g.gherdov...@gmail.com schrieb:

Hi all,

when querying my solr instance, the answers I get
are the document IDs of my docs. Here is how one of my docs
looks like:

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
add
doc
field name=texthello solar!/field
field name=id123/field
/doc
/add
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

here is the response if I query for solar :

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
response
lst name=responseHeader/lst
result name=response numFound=1 start=0 maxScore=1.0
docfloat name=score1.0/float
str name=id123/str/doc
/result
/response
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

which is, solr gives me the doc ID. How to retrieve the doc's field text
given its id ?

cheers,
Giovanni



Re: querying thru solritas gives me zero results

2012-06-30 Thread Sascha Szott
Hi,

Solritas uses the dismax query parser. The dismax config parameter 'qf' 
specifies the index fields to be searched in. Make sure that 'name' is your 
default search field.

-Sascha




Giovanni Gherdovich g.gherdov...@gmail.com schrieb:

Hi all,

this morning I was very proud of myself since I managed
to set up solritas ( http://wiki.apache.org/solr/VelocityResponseWriter )
for the solr instance on my server (ubuntu natty).

This joy lasted only half a minute, since the only query
that gets more than zero results with solritas is the catchall *:*

for example:
http://my.server.com:8080/solr/select/?q=foobar has thousands of results,
​http://my.server.com:8080/solr/itas?q=foobar has none

Here the standard and velocity request handlers from my solrconfig.xml;

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8
requestHandler name=standard class=solr.SearchHandler default=true
lst name=defaults
str name=echoParamsexplicit/str
/lst
/requestHandler
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8
queryResponseWriter name=velocity
class=org.apache.solr.request.VelocityResponseWriter/
requestHandler name=/itas class=solr.SearchHandler
lst name=defaults
str name=wtvelocity/str
str name=v.templatebrowse/str
str name=titleSolr cookbook example/str
str name=defTypedismax/str
str name=q.alt*:*/str
str name=rows10/str
str name=fl*,score/str
str name=qfname/str
/lst
/requestHandler
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8

any hint on how I can debug that?

cheers,
Giovanni



Re: querying thru solritas gives me zero results

2012-06-30 Thread Erik Hatcher
Debugging this you can add debugQuery=truewt=xml to get the full classic Solr 
XML output that drives it all. 

Erik

On Jun 30, 2012, at 7:36, Giovanni Gherdovich g.gherdov...@gmail.com wrote:

 Hi all,
 
 this morning I was very proud of myself since I managed
 to set up solritas ( http://wiki.apache.org/solr/VelocityResponseWriter )
 for the solr instance on my server (ubuntu natty).
 
 This joy lasted only half a minute, since the only query
 that gets more than zero results with solritas is the catchall *:*
 
 for example:
 http://my.server.com:8080/solr/select/?q=foobar has thousands of results,
 ​http://my.server.com:8080/solr/itas?q=foobar has none
 
 Here the standard and velocity request handlers from my solrconfig.xml;
 
 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
  requestHandler name=standard class=solr.SearchHandler default=true
 lst name=defaults
   str name=echoParamsexplicit/str
 /lst
  /requestHandler
 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
 
 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
  queryResponseWriter name=velocity
 class=org.apache.solr.request.VelocityResponseWriter/
  requestHandler name=/itas class=solr.SearchHandler
lst name=defaults
  str name=wtvelocity/str
  str name=v.templatebrowse/str
  str name=titleSolr cookbook example/str
  str name=defTypedismax/str
  str name=q.alt*:*/str
  str name=rows10/str
  str name=fl*,score/str
  str name=qfname/str
/lst
  /requestHandler
 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
 
 any hint on how I can debug that?
 
 cheers,
 Giovanni


Re: Using custom user-defined caches to store user app data while indexing

2012-06-30 Thread Dmitry Kan
Hello!

If you implement SolrCoreAware interface in your custom
UpdateRequestProcessorFactory, you could then access your cache via Solr
Core in the inform method, I think. Haven't tried it myself, but it looks
logical to me to start from there.

// Dmitry

On Fri, Jun 29, 2012 at 4:44 PM, Iana Atanassova
iana.atanass...@gmail.comwrote:

 Hi,

 I'm trying to implement a custom UpdateRequestProcessorFactory class that
 works with the XSLT Request handler for indexing.
 My UpdateRequestProcessorFactory has to examine some of the document fields
 and compare them against some regular expressions that are stored in an
 external MySQL database.
 Currently, my UpdateRequestProcessorFactory works by establishing a
 connection to the database and them retrieving the regular expressions for
 every new document that needs to be indexed.

 However, I would like to speed up this processing and store the regular
 expressions in memory. I tried to define a new user cache in solrconfig.xml
 (http://wiki.apache.org/solr/SolrCaching#User.2BAC8-Generic_Caches). As
 far
 as I understand, these caches can be used to store any user application
 data. But when I implement the UpdateRequestProcessorFactory, I do not
 arrive to access this cache.

 What would be the method to read/write into a user defined sorl cache while
 indexing? How can I access the current SolrIndexSearcher from my code? Are
 there any other solutions that I should look at?

 Thanks!

 Iana




-- 
Regards,

Dmitry Kan


Re: querying thru solritas gives me zero results

2012-06-30 Thread Giovanni Gherdovich
Hello Sascha,

Sascha:
 Solritas uses the dismax query parser.
 The dismax config parameter 'qf' specifies
 the index fields to be searched in.
 Make sure that 'name' is your default search field.

I am not sure I understand this; I have no field named 'name'.
My documents are like

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
add
   doc
   field name=texthello solar!/field
   field name=id123/field
   /doc
/add
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

so my understanding here is that they have two fields,
whose 'name' attributes are 'text' and 'id'. My intent
is to make searches over the 'text' field, so maybe this
is the default value for the 'qf' parameter I need to set up?

I am asking since actually my current default for 'qf'
in solritas __is__ 'name', from my solrconfig.xml:

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
 requestHandler name=/itas class=solr.SearchHandler
   lst name=defaults
 [...]
 str name=qfname/str
   /lst
 /requestHandler
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

and now that you make me look closely to that,
such a default makes little sense to me
(what? no field named 'name', how could that work
as a default for the query fields (qf) !!)

Here the details of those fieldTypes from my schema.xml:

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
field name=text type=text indexed=true stored=false
multiValued=true/
field name=id type=string indexed=true stored=true required=true /
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8


resuming:

1) I don't understand what does it mean defaulting 'qf' to 'name' in
disMax. I have no field named 'name'.
2) From what I understand, my 'qf' value for disMax should default to
'text', the name of the field I care of.

correct?

cheers,
Giovanni


Re: more than one text corpus with solr?

2012-06-30 Thread Giovanni Gherdovich
2012/6/30 Afroz Ahmad:
 You can set up multiple cores, each core managing a different index.
 See http://wiki.apache.org/solr/CoreAdmin


thank you very much Ahmad for this hint.

cheers,
Giovanni


Re: how to retrieve a doc from its docID ?

2012-06-30 Thread Jack Krupansky
Don't try doing this with the text field of the Solr example schema, which 
is a catchall field that is populated via CopyFields. Rather, add the 
original source field(s) to fl that was/were copied to the catchall field. 
The catchall field is designed for indexing, not result display.  But do 
make sure that stored=true for any field you want returned in search 
results.


-- Jack Krupansky

-Original Message- 
From: Sascha Szott

Sent: Saturday, June 30, 2012 6:39 AM
To: solr-user@lucene.apache.org
Subject: Re: how to retrieve a doc from its docID ?

Hi,

did you include the fl parameter in the Solr query URL? If that's the case 
make sure that the field name 'text' is mentioned there. You should also 
make sure that the field definition (in schema.xml) for 'text' says 
stored=true, otherwise the field will not be returned.


-Sascha



Giovanni Gherdovich g.gherdov...@gmail.com schrieb:

Hi all,

when querying my solr instance, the answers I get
are the document IDs of my docs. Here is how one of my docs
looks like:

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
add
doc
field name=texthello solar!/field
field name=id123/field
/doc
/add
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

here is the response if I query for solar :

-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --
response
lst name=responseHeader/lst
result name=response numFound=1 start=0 maxScore=1.0
docfloat name=score1.0/float
str name=id123/str/doc
/result
/response
-- -- 8 -- -- 8 -- -- 8 -- -- 8 -- -- 8 -- --

which is, solr gives me the doc ID. How to retrieve the doc's field text
given its id ?

cheers,
Giovanni



Re: querying thru solritas gives me zero results

2012-06-30 Thread Giovanni Gherdovich
2012/6/30 Erik Hatcher:
 Debugging this you can add debugQuery=truewt=xml to get
 the full classic Solr XML output that drives it all.

Thank you Erik, I'll see what I get from it.

cheers,
GGhh


Re: how do I search the archives for solr-user

2012-06-30 Thread Jack Krupansky
Just use a simple Google search for any Solr question using specific 
technical terms. Google will find the Solr archives as well as quite a few 
discussions on StackOverflow.


-- Jack Krupansky

-Original Message- 
From: Giovanni Gherdovich

Sent: Saturday, June 30, 2012 5:39 AM
To: solr-user@lucene.apache.org
Subject: how do I search the archives for solr-user

Hi all,

I am sure pretty much all of my questions have already
been answered.

Apart from using google with
site:http://mail-archives.apache.org/mod_mbox/lucene-solr-user/; ,
how do I search the archives?

thanks,
Giovanni 



Re: how to retrieve a doc from its docID ?

2012-06-30 Thread Giovanni Gherdovich
Sascha:
 You should also make sure that the field definition (in schema.xml) for 'text'
 says stored=true, otherwise the field will not be returned.

I guess you're hitting my problem.
The field I want to search on is declared with store=false in
the schema.xml:

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
field name=text type=text indexed=true stored=false
multiValued=true/
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

I guess I have to re-index all my corpus again,
after modifying that declaration in my schema.xml

(or choosing a different field in the example schema -- which one?)

Sascha:
 did you include the fl parameter in the Solr query URL?
 If that's the case make sure that the field name 'text' is mentioned there.

no, I am not using the fiel list (fl) param. should I?

Jack:
 Don't try doing this with the text field of the Solr example schema,
 copied to the catchall field. [...] he catchall field is designed for 
 indexing,
 not result display.

Uhm... I am using the field 'text', which is of fieldType 'text',
from the example schema. I choosed it with no clue -- I guessed
what could have been the fields for my docs, and picked up that one.
Should I have made a different choice?

Are you saying that all fields then are copied into some behind the scenes
'text' field, and that is the real purpose of the following field
in the example schema?

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
field name=text type=text indexed=true stored=false
multiValued=true/
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

Then, what is a better suited field from the pool of fields
that are available off-the-shelf in the example schema,
given that my goal is to make text searches into that field?

Jack:
 Rather, add the original source field(s)
 to fl that was/were copied to the catchall field.

If anything has been copied from a field to another,
this has happened beyond my intentions :-)
I picked up the 'text' field since I thought it was
good for text search. You're saying it isn't,
if I understand you correctly.

 But do make sure that stored=true for any field
 you want returned in search results.

ok noted.

cheers,
GGhh


how do I trash a whole index and start over?

2012-06-30 Thread Giovanni Gherdovich
Hi all,

how do I trash a whole index and start over
with a new fresh index of my corpus?

I need that since I modified my schema.xml
since my last indexing, and I'd like the changes
to be taken into account.

Cheers,
Giovanni


Atomic Multicore Operations - E.G. Move Docs

2012-06-30 Thread Nicholas Ball

Hey all,

Trying to figure out the best way to perform atomic operation across
multiple cores on the same solr instance i.e. a multi-core environment.

An example would be to move a set of docs from one core onto another core
and ensure that a softcommit is done as the exact same time. If one were to
fail so would the other.
Obviously this would probably require some customization but wanted to
know what the best way to tackle this would be and where should I be
looking in the source.

Many thanks for the help in advance,
Nicholas a.k.a. incunix


documentation on the pragmatics behind the example schema.xml

2012-06-30 Thread Giovanni Gherdovich
Hi all,

in the example schema.xml I can find a wide variety
of fieldType and field, already there to be used.

I believe each of them has been designed for a specific
usage case, with some pragmatics in mind.

Where can I find documentation on what those field / fieldTypes
were designed for? Is the best place to get those info
the schema.xml file and its comments?

cheers,
GGhh

here I cut and paste fields and fieldTypes I have:

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
   field name=id type=string indexed=true stored=true
required=true /
   field name=sku type=textTight indexed=true stored=true
omitNorms=true/
   field name=name type=textgen indexed=true stored=true/
   field name=alphaNameSort type=alphaOnlySort indexed=true
stored=false/
   field name=manu type=textgen indexed=true stored=true
omitNorms=true/
   field name=cat type=text_ws indexed=true stored=true
multiValued=true omitNorms=true /
   field name=features type=text indexed=true stored=true
multiValued=true/
   field name=includes type=text indexed=true stored=true
termVectors=true termPositions=true termOffsets=true /
   field name=weight type=float indexed=true stored=true/
   field name=price  type=float indexed=true stored=true/
   field name=popularity type=int indexed=true stored=true /
   field name=inStock type=boolean indexed=true stored=true /
   field name=title type=text indexed=true stored=true
multiValued=true/
   field name=subject type=text indexed=true stored=true/
   field name=description type=text indexed=true stored=true/
   field name=comments type=text indexed=true stored=true/
   field name=author type=textgen indexed=true stored=true/
   field name=keywords type=textgen indexed=true stored=true/
   field name=category type=textgen indexed=true stored=true/
   field name=content_type type=string indexed=true
stored=true multiValued=true/
   field name=last_modified type=date indexed=true stored=true/
   field name=links type=string indexed=true stored=true
multiValued=true/
   field name=text type=text indexed=true stored=false
multiValued=true/
   field name=text_rev type=text_rev indexed=true
stored=false multiValued=true/
   field name=manu_exact type=string indexed=true stored=false/
   field name=payloads type=payloads indexed=true stored=true/
   field name=timestamp type=date indexed=true stored=true
default=NOW multiValued=false/
-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

-- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
fieldType name=string class=solr.StrField
sortMissingLast=true omitNorms=true/
fieldType name=boolean class=solr.BoolField
sortMissingLast=true omitNorms=true/
fieldType name=int class=solr.TrieIntField precisionStep=0
omitNorms=true positionIncrementGap=0/
fieldType name=float class=solr.TrieFloatField
precisionStep=0 omitNorms=true positionIncrementGap=0/
fieldType name=long class=solr.TrieLongField
precisionStep=0 omitNorms=true positionIncrementGap=0/
fieldType name=double class=solr.TrieDoubleField
precisionStep=0 omitNorms=true positionIncrementGap=0/
fieldType name=tint class=solr.TrieIntField precisionStep=8
omitNorms=true positionIncrementGap=0/
fieldType name=tfloat class=solr.TrieFloatField
precisionStep=8 omitNorms=true positionIncrementGap=0/
fieldType name=tlong class=solr.TrieLongField
precisionStep=8 omitNorms=true positionIncrementGap=0/
fieldType name=tdouble class=solr.TrieDoubleField
precisionStep=8 omitNorms=true positionIncrementGap=0/
fieldType name=date class=solr.TrieDateField omitNorms=true
precisionStep=0 positionIncrementGap=0/
fieldType name=tdate class=solr.TrieDateField
omitNorms=true precisionStep=6 positionIncrementGap=0/
fieldType name=pint class=solr.IntField omitNorms=true/
fieldType name=plong class=solr.LongField omitNorms=true/
fieldType name=pfloat class=solr.FloatField omitNorms=true/
fieldType name=pdouble class=solr.DoubleField omitNorms=true/
fieldType name=pdate class=solr.DateField
sortMissingLast=true omitNorms=true/
fieldType name=sint class=solr.SortableIntField
sortMissingLast=true omitNorms=true/
fieldType name=slong class=solr.SortableLongField
sortMissingLast=true omitNorms=true/
fieldType name=sfloat class=solr.SortableFloatField
sortMissingLast=true omitNorms=true/
fieldType name=sdouble class=solr.SortableDoubleField
sortMissingLast=true omitNorms=true/
fieldType name=random class=solr.RandomSortField indexed=true /
fieldType name=text_greek class=solr.TextField
fieldType name=text_ws class=solr.TextField positionIncrementGap=100
fieldType name=text class=solr.TextField positionIncrementGap=100
fieldType name=textTight class=solr.TextField
positionIncrementGap=100 
fieldType name=textgen class=solr.TextField positionIncrementGap=100
fieldType name=text_rev class=solr.TextField
positionIncrementGap=100
fieldType name=textCharNorm class=solr.TextField
positionIncrementGap=100 
fieldType 

Re: how do I trash a whole index and start over?

2012-06-30 Thread Dmitry Kan
Hello,

The easiest way is to remove what's inside data/index directory; in case
you have a spell-checker index, remove it as well. This requires solr
instance restart.

Another way, without restarting the server, is to issue deleteByQuery over
http.

When you are done, you need to reindex your data in order to take changes
of new schema.xml into use.

// Dmitry

On Sat, Jun 30, 2012 at 4:44 PM, Giovanni Gherdovich g.gherdov...@gmail.com
 wrote:

 Hi all,

 how do I trash a whole index and start over
 with a new fresh index of my corpus?

 I need that since I modified my schema.xml
 since my last indexing, and I'd like the changes
 to be taken into account.

 Cheers,
 Giovanni




-- 
Regards,

Dmitry Kan


difference between stored=false and stored=true ?

2012-06-30 Thread Giovanni Gherdovich
Hi all,

when declaring a field in the schema.xml file you can
set the attributes 'indexed' and 'stored' to true or false.

What is the difference between a indexed=true stored=false
and a indexed=true stored=true?

I guess understanding this would require me to have
a closer look to lucene's index data structures;
what's the pointer to some doc I can read?

Cheers,
GGhh


Re: how do I trash a whole index and start over?

2012-06-30 Thread Giovanni Gherdovich
2012/6/30 Dmitry Kan:
 Hello,

 The easiest way is to remove what's inside data/index directory; in case
 you have a spell-checker index, remove it as well. This requires solr
 instance restart.

thanks dmitry, I'll go for this solution.

cheers,
GGhh


Re: difference between stored=false and stored=true ?

2012-06-30 Thread Jack Krupansky
indexed and stored are independent, orthogonal attributes - you can use 
any of the four combinations of true and false. indexed is used for search 
or query, the lookup portion of processing a query request. Once the 
search/query/lookup is complete and a set of documents is selected, stored 
is the set of fields whose values are available for display or return with 
the Solr response.


Part of the reason for the separation is that Solr/Lucene analyzes or 
transforms the input data into a more efficient form for faster and more 
relevant search/lookup. Unfortunately, that analyzed/transformed data is 
frequently no longer suitable for display and human consumption. In other 
words the analysis/transformation is not bidirectional/reversible. Setting 
stored=true guarantees that the original data can be retrieved in its 
original form.


-- Jack Krupansky

-Original Message- 
From: Giovanni Gherdovich

Sent: Saturday, June 30, 2012 8:57 AM
To: solr-user@lucene.apache.org
Subject: difference between stored=false and stored=true ?

Hi all,

when declaring a field in the schema.xml file you can
set the attributes 'indexed' and 'stored' to true or false.

What is the difference between a indexed=true stored=false
and a indexed=true stored=true?

I guess understanding this would require me to have
a closer look to lucene's index data structures;
what's the pointer to some doc I can read?

Cheers,
GGhh 



Re: difference between stored=false and stored=true ?

2012-06-30 Thread François Schiettecatte
Giovanni

stored=true means the data is stored in the index and can be returned with 
the search results (see the 'fl' parameter). This is independent of indexed=..

Which means that you can store but not index a field:

indexed=false stored=true

Best regards

François

On Jun 30, 2012, at 9:57 AM, Giovanni Gherdovich wrote:

 Hi all,
 
 when declaring a field in the schema.xml file you can
 set the attributes 'indexed' and 'stored' to true or false.
 
 What is the difference between a indexed=true stored=false
 and a indexed=true stored=true?
 
 I guess understanding this would require me to have
 a closer look to lucene's index data structures;
 what's the pointer to some doc I can read?
 
 Cheers,
 GGhh



Re: more than one text corpus with solr?

2012-06-30 Thread Gora Mohanty
On 30 June 2012 15:28, Giovanni Gherdovich g.gherdov...@gmail.com wrote:
 Hi all,

 i am experimenting with solr, and I feel the need to
 index more than just one corpus and search them
 with solr independently.

 is it possible to have this setup?
 Several independent indices all managed by the same solr instance?

Not quite sure what you mean by more than one
corpus, and by several independent indices in
this context, but maybe multi-core Solr will meet
your needs: http://wiki.apache.org/solr/CoreAdmin

Regards,
Gora


Re: difference between stored=false and stored=true ?

2012-06-30 Thread Giovanni Gherdovich
Thank you François and Jack for those explainations.

Cheers,
GGhh

2012/6/30 François Schiettecatte:
 Giovanni

 stored=true means the data is stored in the index and [...]


2012/6/30 Jack Krupansky:
 indexed and stored are independent [...]


Can't find solr.xml

2012-06-30 Thread Nabeel Sulieman
Hi,

 

I really hate bothering this group with something that should be trivial,
but I've been googling and experimenting to get this to work for the last
week now. I had no trouble getting my simple configuration working on 3.5,
but when I moved over to 3.6, I seem to have hit something strange.

 

As I said I'm on the latest version of solr (3.6.0), and I'm using exactly
the standard war file, with the solr/home section uncommented and set to
my Solr directory.

 

However, even though the path is correct, Solr/Tomcat don't seem to be able
to find the solr.xml file, nor the solrconfig.xml file. 

 

Java version is 1.6.0_29-b11, tomcat 5.5.35, CentOS.

 

What am I missing here?

 

Thanks. Below is the error log.

 

Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer$Initializer
initialize

INFO: looking for solr.xml: /home/dev/solr/solr.xml

Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer$Initializer
initialize

INFO: no solr.xml file found - using default

Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer load

INFO: Loading CoreContainer using Solr Home: '/home/dev/solr/'

Jun 30, 2012 12:47:58 PM org.apache.solr.core.SolrResourceLoader init

INFO: new SolrResourceLoader for directory: '/home/dev/solr/'

Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer create

INFO: Creating SolrCore '' using instanceDir: /home/dev/solr/.

Jun 30, 2012 12:47:58 PM org.apache.solr.core.SolrResourceLoader init

INFO: new SolrResourceLoader for directory: '/home/dev/solr/./'

Jun 30, 2012 12:47:58 PM org.apache.solr.common.SolrException log

SEVERE: java.lang.RuntimeException: Can't find resource 'solrconfig.xml' in
classpath or '/home/dev/solr/./conf/',
cwd=/usr/local/jakarta/apache-tomcat-5.5.35/bin

at
org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java
:273)

at
org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:2
39)

at org.apache.solr.core.Config.init(Config.java:141)

at
org.apache.solr.core.SolrConfig.init(SolrConfig.java:138)

at
org.apache.solr.core.CoreContainer.create(CoreContainer.java:455)

at
org.apache.solr.core.CoreContainer.load(CoreContainer.java:335)

at
org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java
:165)

at
org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96)

at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilter
Config.java:221)

at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFil
terConfig.java:302)

at
org.apache.catalina.core.ApplicationFilterConfig.init(ApplicationFilterCon
fig.java:78)

at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:36
66)

at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4258)

at
org.apache.catalina.core.StandardContext.reload(StandardContext.java:3056)

at
org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:904)

at
org.apache.catalina.manager.HTMLManagerServlet.reload(HTMLManagerServlet.jav
a:496)

at
org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java
:99)

at
javax.servlet.http.HttpServlet.service(HttpServlet.java:627)

at
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:269)

at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:188)

at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:213)

at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:172)

at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
.java:563)

at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127
)

at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117
)

at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:108)

at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)

at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)

at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processC
onnection(Http11BaseProtocol.java:665)

at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.jav
a:528)

at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWo
rkerThread.java:81)

at

Re: more than one text corpus with solr?

2012-06-30 Thread Giovanni Gherdovich
Hi Gora,

yes I was actually looking for a multi-core setup.

thanks!

GGhh

2012/6/30 Gora Mohanty

 Not quite sure what you mean by more than one
 corpus, and by several independent indices in
 this context, but maybe multi-core Solr will meet
 your needs: http://wiki.apache.org/solr/CoreAdmin

 Regards,
 Gora


Re: Atomic Multicore Operations - E.G. Move Docs

2012-06-30 Thread Lance Norskog
Index all documents to both cores, but do not call commit until both
report that indexing worked. If one of the cores throws an exception,
call roll back on both cores.

On Sat, Jun 30, 2012 at 6:50 AM, Nicholas Ball
nicholas.b...@nodelay.com wrote:

 Hey all,

 Trying to figure out the best way to perform atomic operation across
 multiple cores on the same solr instance i.e. a multi-core environment.

 An example would be to move a set of docs from one core onto another core
 and ensure that a softcommit is done as the exact same time. If one were to
 fail so would the other.
 Obviously this would probably require some customization but wanted to
 know what the best way to tackle this would be and where should I be
 looking in the source.

 Many thanks for the help in advance,
 Nicholas a.k.a. incunix



-- 
Lance Norskog
goks...@gmail.com


Re: Can't find solr.xml

2012-06-30 Thread Lance Norskog
Try starting with the example/multicore directory. It shows how
solr.xml describes different available cores.

On Sat, Jun 30, 2012 at 11:28 AM, Nabeel Sulieman
nabeel.sulie...@gmail.com wrote:
 Hi,



 I really hate bothering this group with something that should be trivial,
 but I've been googling and experimenting to get this to work for the last
 week now. I had no trouble getting my simple configuration working on 3.5,
 but when I moved over to 3.6, I seem to have hit something strange.



 As I said I'm on the latest version of solr (3.6.0), and I'm using exactly
 the standard war file, with the solr/home section uncommented and set to
 my Solr directory.



 However, even though the path is correct, Solr/Tomcat don't seem to be able
 to find the solr.xml file, nor the solrconfig.xml file.



 Java version is 1.6.0_29-b11, tomcat 5.5.35, CentOS.



 What am I missing here?



 Thanks. Below is the error log.



 Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer$Initializer
 initialize

 INFO: looking for solr.xml: /home/dev/solr/solr.xml

 Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer$Initializer
 initialize

 INFO: no solr.xml file found - using default

 Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer load

 INFO: Loading CoreContainer using Solr Home: '/home/dev/solr/'

 Jun 30, 2012 12:47:58 PM org.apache.solr.core.SolrResourceLoader init

 INFO: new SolrResourceLoader for directory: '/home/dev/solr/'

 Jun 30, 2012 12:47:58 PM org.apache.solr.core.CoreContainer create

 INFO: Creating SolrCore '' using instanceDir: /home/dev/solr/.

 Jun 30, 2012 12:47:58 PM org.apache.solr.core.SolrResourceLoader init

 INFO: new SolrResourceLoader for directory: '/home/dev/solr/./'

 Jun 30, 2012 12:47:58 PM org.apache.solr.common.SolrException log

 SEVERE: java.lang.RuntimeException: Can't find resource 'solrconfig.xml' in
 classpath or '/home/dev/solr/./conf/',
 cwd=/usr/local/jakarta/apache-tomcat-5.5.35/bin

 at
 org.apache.solr.core.SolrResourceLoader.openResource(SolrResourceLoader.java
 :273)

 at
 org.apache.solr.core.SolrResourceLoader.openConfig(SolrResourceLoader.java:2
 39)

 at org.apache.solr.core.Config.init(Config.java:141)

 at
 org.apache.solr.core.SolrConfig.init(SolrConfig.java:138)

 at
 org.apache.solr.core.CoreContainer.create(CoreContainer.java:455)

 at
 org.apache.solr.core.CoreContainer.load(CoreContainer.java:335)

 at
 org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java
 :165)

 at
 org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96)

 at
 org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilter
 Config.java:221)

 at
 org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFil
 terConfig.java:302)

 at
 org.apache.catalina.core.ApplicationFilterConfig.init(ApplicationFilterCon
 fig.java:78)

 at
 org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:36
 66)

 at
 org.apache.catalina.core.StandardContext.start(StandardContext.java:4258)

 at
 org.apache.catalina.core.StandardContext.reload(StandardContext.java:3056)

 at
 org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:904)

 at
 org.apache.catalina.manager.HTMLManagerServlet.reload(HTMLManagerServlet.jav
 a:496)

 at
 org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java
 :99)

 at
 javax.servlet.http.HttpServlet.service(HttpServlet.java:627)

 at
 javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

 at
 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
 FilterChain.java:269)

 at
 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
 ain.java:188)

 at
 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
 va:213)

 at
 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
 va:172)

 at
 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
 .java:563)

 at
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127
 )

 at
 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117
 )

 at
 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
 :108)

 at
 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)

 at
 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)

 at
 

Re: Error loading class 'org.apache.solr.handler.dataimport.DataImportHandler'

2012-06-30 Thread Erick Erickson
What is the exception you're encountering? You might review:

http://wiki.apache.org/solr/UsingMailingLists

Best
Erick

On Thu, Jun 28, 2012 at 2:48 PM, derohit mailrohi...@gmail.com wrote:
 Hi All,

 I am facing an ecpetion while trying to use dataImportHandler for Indexing
 My solrcofig.xml help is:-
 ?xml version=1.0 encoding=UTF-8 ?   config
 abortOnConfigurationError${solr.abortOnConfigurationError:true}/abortOnConfigurationError
 luceneMatchVersionLUCENE_36/luceneMatchVersion lib
 dir=../../dist/ regex=apache-solr-dataimporthandler-d.*.jar /
 directoryFactory name=DirectoryFactory
 class=${solr.directoryFactory:solr.StandardDirectoryFactory}/
 updateHandler class=solr.DirectUpdateHandler2 / requestDispatcher
 handleSelect=true  requestParsers enableRemoteStreaming=false /
 /requestDispatcher requestHandler name=standard
 class=solr.StandardRequestHandler default=true / requestHandler
 name=/update   class=solr.JsonUpdateRequestHandler
 startup=lazy / requestHandler name=/admin/
 class=solr.admin.AdminHandlers / requestHandler name=/admin/ping
 class=solr.PingRequestHandler lst name=invariants  str
 name=qtsearch/str   str name=qsolrpingquery/str /lst
 lst name=defaults   str name=echoParamsall/str /lst
 /requestHandler   requestHandler name=/dataimport
 class=org.apache.solr.handler.dataimport.DataImportHandler lst
 name=defaults   str name=configdata-config.xml/str /lst
 /requestHandler admin defaultQuerysolr/defaultQuery
 /admin   /config


 and Jar's name is apache-solr-dataimporthandler-3.6.0.jar

 Please revert if someone has the solution to it.

 Regards
 Rohit




 --
 View this message in context: 
 http://lucene.472066.n3.nabble.com/Error-loading-class-org-apache-solr-handler-dataimport-DataImportHandler-tp3991940.html
 Sent from the Solr - User mailing list archive at Nabble.com.


Re: index writer in searchComponent

2012-06-30 Thread Erick Erickson
Lots of the index modification (all of it?) has been removed in 4.0
from IndexReaders...

It seems like you could always get the directory and open a
SolrIndexWriter wherever you wanted,
but I'm not sure it's a good idea, are there other processes that will
be writing to the index at the
same time?

What's the purpose here anyway? There might be a better approach

Best
Erick

On Thu, Jun 28, 2012 at 4:02 PM, Peyman Faratin pey...@robustlinks.com wrote:
 Hi

 Is it possible to add a new document to the index in a custom SearchComponent 
 (that also implements a SolrCoreAware)? I can get a reference to the 
 indexReader via the ResponseBuilder parameter of the process() method using

 rb.req.getSearcher().getReader()

 But is it possible to actually add a new document to the index _after_ 
 searching the index? I.e accessing the indexWriter?

 thank you

 Peyman


Re: Filtering a query by range returning unexpected results

2012-06-30 Thread Erick Erickson
This works fine for me with 3.6, float fields and even on a currency type.

I'm assuming a typo for 15.00.00 BTW.

I admit I'm not all that familiar with the currency type, which I infer you're
using given the USD bits. But I ran a quick test with currency types and
it worked at least the way I ran it... But another quick look shows that
some interesting things are being done with the currency type, so who knows?

So, let's see your relevant schema bits, and the results of your query
when you attach debugQuery=on to it.


Best
Erick

On Fri, Jun 29, 2012 at 2:43 PM, Andrew Meredith andymered...@gmail.com wrote:
 First off, I have to say that I am working on my first project that has
 required me to work with Solr, so my question my be very elementary - I
 just could not find an answer elsewhere.

 I am trying to add a ranged query filter that returns all items in a given
 prices range. In my situation, each item can have multiple prices, so it
 is a multivalued field. When I search a range, say, prices:[15.00.00 TO
 21.00], I want Solr to return all items that have *any* price in that
 range, rather than returning results where *all* prices are in the range.
 For example, if i have an item with the following prices, it will not be
 returned:
   arr name=prices
   str19.99,USD/str
   str22.50,USD/str
   /arr

 Is there any way to change the behaviour of Solr so that it will match
 documents in which any value of a multivalued field matches a ranged query
 filter?

 Thanks!

 --
 http://ofchristonearth.wordpress.com/
 S.D.G.


Re: Wildcard searches with leading and ending wildcard

2012-06-30 Thread Erick Erickson
for searching sub-strings, ngrams are generally preferred. To expand
on Jack's point.

The whole purpose behind reversed wildcards is that without them, searching for
*abcd requires that _every_ term in your field be enumerated, which can be very
expensive. Adding in reversed wildcards causes this to turn into a
trailing wildcard,
and enumerating bcda* is much easier/less costly.

Best
Erick

On Fri, Jun 29, 2012 at 9:21 AM, maurizio1976
maurizio.picc...@gmail.com wrote:
 Hi all,
 I've been searching for an answer to this everywhere but I can never find an
 answer that is perfect for my case, so I'll ask this myself.

 I'm on Solr 3.6.
 I'm using I use the *ReversedWildcardFilterFactory* in a field containing a
 telephone number.
 So only one word to be indexed, no phrases no strange tokens.
 To be more exact: filter class=solr.ReversedWildcardFilterFactory
 withOriginal=true
maxPosAsterisk=3 maxPosQuestion=2
 maxFractionAsterisk=0.33/

 I can check with Luke that two words are being indexed, one the reverse of
 the other. Perfect.

 I can run a query like this:*/ Num:*1234/* that will match docs starting
 with 1234
 and I can run a query like this:* /Num:1234*/* that will match docs ending
 with 1234

 but this is the question that everybody seems to be asking.
 Can I run in any way a query that will match records that contains the
 value 1234?

 If I write this: Num:*1234* this will match docs containing 1234 but also
 docs containing 4321 which is wrong. this means this query: /Num*4321*/ and
 this query: /Num:*1234*/ return exactly the same result.

 Is this the wrong approach? has anybody tried the N-gram solution to this
 problem?

 thanks very much
 Maurizio


 --
 View this message in context: 
 http://lucene.472066.n3.nabble.com/Wildcard-searches-with-leading-and-ending-wildcard-tp3992086.html
 Sent from the Solr - User mailing list archive at Nabble.com.


Re: documentation on the pragmatics behind the example schema.xml

2012-06-30 Thread Erick Erickson
Your very best way of figuring this out is to use the admin/analysis
page. It will show
you the exact effects of each element of the analysis chains for the
field type you
specify. From there it's just a matter of getting your head around the fact that
the various filters and tokenizers can be combined in many different
ways to suit your
particular purpose. Be sure to check the verbose checkbox!

But other than the comments in the schema file, there's no source of
documentation for
the purposes of the field types that I know of...

Best
Erick

On Sat, Jun 30, 2012 at 9:51 AM, Giovanni Gherdovich
g.gherdov...@gmail.com wrote:
 Hi all,

 in the example schema.xml I can find a wide variety
 of fieldType and field, already there to be used.

 I believe each of them has been designed for a specific
 usage case, with some pragmatics in mind.

 Where can I find documentation on what those field / fieldTypes
 were designed for? Is the best place to get those info
 the schema.xml file and its comments?

 cheers,
 GGhh

 here I cut and paste fields and fieldTypes I have:

 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
field name=id type=string indexed=true stored=true
 required=true /
field name=sku type=textTight indexed=true stored=true
 omitNorms=true/
field name=name type=textgen indexed=true stored=true/
field name=alphaNameSort type=alphaOnlySort indexed=true
 stored=false/
field name=manu type=textgen indexed=true stored=true
 omitNorms=true/
field name=cat type=text_ws indexed=true stored=true
 multiValued=true omitNorms=true /
field name=features type=text indexed=true stored=true
 multiValued=true/
field name=includes type=text indexed=true stored=true
 termVectors=true termPositions=true termOffsets=true /
field name=weight type=float indexed=true stored=true/
field name=price  type=float indexed=true stored=true/
field name=popularity type=int indexed=true stored=true /
field name=inStock type=boolean indexed=true stored=true /
field name=title type=text indexed=true stored=true
 multiValued=true/
field name=subject type=text indexed=true stored=true/
field name=description type=text indexed=true stored=true/
field name=comments type=text indexed=true stored=true/
field name=author type=textgen indexed=true stored=true/
field name=keywords type=textgen indexed=true stored=true/
field name=category type=textgen indexed=true stored=true/
field name=content_type type=string indexed=true
 stored=true multiValued=true/
field name=last_modified type=date indexed=true stored=true/
field name=links type=string indexed=true stored=true
 multiValued=true/
field name=text type=text indexed=true stored=false
 multiValued=true/
field name=text_rev type=text_rev indexed=true
 stored=false multiValued=true/
field name=manu_exact type=string indexed=true stored=false/
field name=payloads type=payloads indexed=true stored=true/
field name=timestamp type=date indexed=true stored=true
 default=NOW multiValued=false/
 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8

 -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8  -- -- 8
 fieldType name=string class=solr.StrField
 sortMissingLast=true omitNorms=true/
 fieldType name=boolean class=solr.BoolField
 sortMissingLast=true omitNorms=true/
 fieldType name=int class=solr.TrieIntField precisionStep=0
 omitNorms=true positionIncrementGap=0/
 fieldType name=float class=solr.TrieFloatField
 precisionStep=0 omitNorms=true positionIncrementGap=0/
 fieldType name=long class=solr.TrieLongField
 precisionStep=0 omitNorms=true positionIncrementGap=0/
 fieldType name=double class=solr.TrieDoubleField
 precisionStep=0 omitNorms=true positionIncrementGap=0/
 fieldType name=tint class=solr.TrieIntField precisionStep=8
 omitNorms=true positionIncrementGap=0/
 fieldType name=tfloat class=solr.TrieFloatField
 precisionStep=8 omitNorms=true positionIncrementGap=0/
 fieldType name=tlong class=solr.TrieLongField
 precisionStep=8 omitNorms=true positionIncrementGap=0/
 fieldType name=tdouble class=solr.TrieDoubleField
 precisionStep=8 omitNorms=true positionIncrementGap=0/
 fieldType name=date class=solr.TrieDateField omitNorms=true
 precisionStep=0 positionIncrementGap=0/
 fieldType name=tdate class=solr.TrieDateField
 omitNorms=true precisionStep=6 positionIncrementGap=0/
 fieldType name=pint class=solr.IntField omitNorms=true/
 fieldType name=plong class=solr.LongField omitNorms=true/
 fieldType name=pfloat class=solr.FloatField omitNorms=true/
 fieldType name=pdouble class=solr.DoubleField omitNorms=true/
 fieldType name=pdate class=solr.DateField
 sortMissingLast=true omitNorms=true/
 fieldType name=sint class=solr.SortableIntField
 sortMissingLast=true omitNorms=true/
 fieldType name=slong class=solr.SortableLongField
 sortMissingLast=true omitNorms=true/
 fieldType name=sfloat 

Re: index writer in searchComponent

2012-06-30 Thread Peyman Faratin
Hi Erik

The workflow I'd like to implement is 

1- search the index using the incoming query
2- the query is of the type does entity X exist
3- if X does not exist in the index then I'd like to add X to the index

Currently I am using a custom search component to achieve this by creating a 
solrserver within the init (or inform) method of the search component and using 
that instance to update (and commit) the index. I am not sure this is the best 
approach either and thought using the IndexReader of the search component 
itself maybe better. 

Is there a better approach in your opinion?

thank you Erik

Peyman

On Jun 30, 2012, at 8:13 PM, Erick Erickson wrote:

 Lots of the index modification (all of it?) has been removed in 4.0
 from IndexReaders...
 
 It seems like you could always get the directory and open a
 SolrIndexWriter wherever you wanted,
 but I'm not sure it's a good idea, are there other processes that will
 be writing to the index at the
 same time?
 
 What's the purpose here anyway? There might be a better approach
 
 Best
 Erick
 
 On Thu, Jun 28, 2012 at 4:02 PM, Peyman Faratin pey...@robustlinks.com 
 wrote:
 Hi
 
 Is it possible to add a new document to the index in a custom 
 SearchComponent (that also implements a SolrCoreAware)? I can get a 
 reference to the indexReader via the ResponseBuilder parameter of the 
 process() method using
 
 rb.req.getSearcher().getReader()
 
 But is it possible to actually add a new document to the index _after_ 
 searching the index? I.e accessing the indexWriter?
 
 thank you
 
 Peyman