Another trick I used when debugging is to setup the shards to point to
it's self.

Example:

http://localhost:8080/solr?q=iran?shards=localhost:8080/solr


-----Original Message-----
From: Woytowitz, Matthew [mailto:matthew.woytow...@mantech.com] 
Sent: Thursday, May 21, 2009 5:43 PM
To: solr-dev@lucene.apache.org
Subject: RE: Help Writing a Distributed Component

bin/catalina.sh jpda start

Starts tomcat in remote debugging mode.

Then I connect with eclipse.

Run --> Debug configs

Click Remote Java Application.
Click the "New Lauch Config" button.  Hover to find it

Click the debug button should work.




-----Original Message-----
From: Matt Weber [mailto:m...@mattweber.org] 
Sent: Thursday, May 21, 2009 5:03 PM
To: solr-dev@lucene.apache.org
Subject: Re: Help Writing a Distributed Component

Thanks Matt that worked!  My patch still doesn't work correctly, but  
at least I can actually get it calling the distributed methods now.   
Do you mind explaining how you run solr though a debugger?  That would  
sure make things easier for me!  Thanks again, I really appreciate  
your help.

Thanks,

Matt Weber
eSr Technologies
http://www.esr-technologies.com




On May 21, 2009, at 1:28 PM, Woytowitz, Matthew wrote:

> Matt,
>
> I applied you patch to the trunk and tossed it in the debugger.  I'm  
> not
> sure how your solrconfig.xml looks, but if your using the out of the  
> box
> autosuggest shards don't work.
>
> The reason is that the default search handler has the QueryComponent  
> in
> it's list and the autosuggest doesn't.
>
> Try stealing these lines from the end QueryComponent.prepare
>
>    // TODO: temporary... this should go in a different component.
>    String shards = params.get(ShardParams.SHARDS);
>    if (shards != null) {
>      List<String> lst = StrUtils.splitSmart(shards, ",", true);
>      rb.shards = lst.toArray(new String[lst.size()]);
>    }
>
> Matt Woytowitz
>
>
> -----Original Message-----
> From: Matt Weber [mailto:m...@mattweber.org]
> Sent: Wednesday, May 20, 2009 12:07 PM
> To: solr-dev@lucene.apache.org
> Subject: Re: Help Writing a Distributed Component
>
> Hey Grant,
>
> I have opened a new ticket with the current version of my patch at
> https://issues.apache.org/jira/browse/SOLR-1177
> .  What do you mean by configuring my shards?  I implemented the
> distributed methods (prepare, process, modifyRequest, etc) as is done
> in the other distributed components, then I just specify a shards
> parameter in the query.  I looked though the other distributed
> components and did not see them doing any special shard configuration
> other than modifying the query that is sent to the shards.  I must be
> missing something, but I can't seem to figure out due to my lack of
> knowledge on distributed components and the solr codebase in general.
> Thanks for your help!
>
> For my testing, I have 2 instances of Solr running in tomcat called
> solr1 and solr2.  My test query looks like:
>
>
http://localhost:8080/solr1/terms?shards=localhost:8080/solr1,localhost 
> :
> 8080/solr2&terms=true&terms.fl=spell&terms.prefix=f&terms.lower=f
>
> Thanks,
>
> Matt Weber
> eSr Technologies
> http://www.esr-technologies.com
>
>
> On May 20, 2009, at 7:24 AM, Grant Ingersoll wrote:
>
>> Matt,
>>
>> Perhaps you can post your patch even in it's current state on a JIRA
>> issue and then we can work through it?  Also, how are you
>> configuring your shards?
>>
>> I started that Wiki page as a way to make sure I understood what was
>> going on in distributed.  I'm not 100% sure it is correct, so it
>> would be good if others review/edit as well.
>>
>> -Grant
>>
>> On May 20, 2009, at 1:36 AM, Matt Weber wrote:
>>
>>> Hi all,
>>>
>>> I am working on a patch to get TermsComponent distributed and have
>>> run into a problem.  I have overridden the prepare, process,
>>> modifyRequest, handleResponses, and finishStage methods as
>>> described at
> http://wiki.apache.org/solr/WritingDistributedSearchComponents
>>> .  My problem is that only the prepare and process methods are
>>> called just as if it was non-distributed.  It looks like the shards
>>> parameter is not being honored for this handler.  For some reason
>>> rb.shards is always null.  I looked though all the other
>>> distributed components code (facets, stats, highlighting, etc) and
>>> did not notice them doing anything special that my handler is not.
>>> Is there some setting I need to enable for the shards parameter to
>>> be honored?
>>
>

Reply via email to