Hi Phil -
The default update chain now includes the distributed update processor by
default - and if in solrcloud mode it will be active.
Probably, what you want to do is define your own update chain (see the wiki).
Then you can add that update chain as the default for your json update handler
in solrconfig.xml.
<!-- referencing it in an update handler -->
<requestHandler name="/update/json" class="solr.JsonUpdateRequestHandler" >
<lst name="defaults">
<str name="update.chain">mychain</str>
</lst>
</requestHandler>
The default chain is:
new LogUpdateProcessorFactory(),
new DistributedUpdateProcessorFactory(),
new RunUpdateProcessorFactory()
So just use Log and Run instead to get your old behavior.
- Mark
On Mar 7, 2012, at 1:37 PM, Phil Hoy wrote:
> Hi,
>
> We have a large index and would like to shard by a particular field value, in
> our case surname. This way we can scale out to multiple machines, yet as most
> queries filter on surname we can use some application logic to hit just the
> one core to get the results we need.
>
> Furthermore as we anticipate the index will grow over time so it make sense
> (to us) to host a number of shards on a single machine until they get too big
> at which point we can then move them to another machine.
>
> We are using solrcloud and it is set up using a solrcore per shard, that way
> we can direct both queries and updates to the appropriate core/shard. To do
> this our solr.xml looks a bit like this:
>
> <cores defaultCoreName="default" adminPath="/admin/cores"
> zkClientTimeout="10000" hostPort="8983" >
> <core shard="default" name="aaa-ava"
> instanceDir="/data/recordsets/shards/aaa-ava" collection="recordsets" />
> <core shard="aaa-ava" name="aaa-ava"
> instanceDir="/data/recordsets/shards/aaa-ava" collection="recordsets" />
> <core shard="avb-bel" name="avb-bel"
> instanceDir="/data/recordsets/shards/avb-bel" collection="recordsets" />
> .......
>
> Directed updates via:
> http:/server/solr/aaa-ava/update/json [{surname:"adams"}]
>
> Directed queries via:
> http:/server/solr/select?surname:adams&shards=aaa-ava
>
> This setup used to work in version apache-solr-4.0-2011-12-12_09-14-13
> before the more recent solrcloud changes but now the update is not directed
> to the appropriate core. Is there a better way to achieve our needs?
>
> Phil
>
- Mark Miller
lucidimagination.com