On 12/3/2017 9:27 AM, Mahmoud Almokadem wrote:
We're facing an issue related to the dataimporter status on new Admin UI
(7.0.1).

Calling to the API
http://solrip/solr/collection/dataimport?_=1512314812090&command=status&indent=on&wt=json

returns different status despite the importer is running
The messages are swapped between the following when refreshing the page:

<snip>

The old Admin UI was working well.

Is that a bug on the new Admin UI?

What I'm going to say below is based on the idea that you're running SolrCloud. If you're not, then this seems extremely odd and should not be happening.

The first part of your message has a URL that accesses the API directly, *not* the admin UI, so I'm going to concentrate on that, and not discuss the admin UI, because the admin UI is not involved when using that kind of URL.

When requests are sent to a collection name rather than directly to a core, SolrCloud load balances those requests across the cloud, picking different replicas and shards so each individual request ends up on a different core, and possibly on a different server.

This load balancing is a general feature of SolrCloud, and happens even with the dataimport handler. You never know which shard/replica is going to actually get a /dataimport request. So what is happening here is that one of the cores in your collection is actually doing a dataimport, but all the others aren't. When the status command is load balanced to the core that did the import, then you see the status with actual data, and when load balancing sends the request to one of the other cores, you see the empty status.

If you want to reliably see the status of an import on SolrCloud, you're going to have to choose one of the cores (collection_shardN_replicaM) on one of the servers in your cloud, and send both the import command and the status command to that one core, instead of the collection. You might even need to add a distrib=false parameter to the request to keep it from being load balanced, but I am not sure whether that's needed for /dataimport.

Thanks,
Shawn

Reply via email to