On 7/24/2019 3:50 PM, Natarajan, Rajeswari wrote:
Hi,

With the below API , the QueryResponse , sometimes have the "lastTimestamp" , 
sometimes not.
protected static QueryResponse getCdcrQueue(CloudSolrClient client) throws 
SolrServerException, IOException {
     ModifiableSolrParams params = new ModifiableSolrParams();
     params.set(CommonParams.QT, "/cdcr");
     params.set(CommonParams.ACTION, CdcrParams.QUEUES);
     return client.query(params);
   }

Side note: Setting the handler path with the qt parameter was deprecated in Solr 3.6, which was released seven years ago. I'm surprised it even still works.

Use a SolrQuery object instead of ModifiableSolrParams, and call its setRequestHandler method to set the request handler.

Invoking http://<hostname>:<port>/solr/<collectionName>/cdcr?action=QUEUES  has 
the same issue

But if invoked as http://<hostname>:<port>/solr/<coreName>/cdcr?action=QUEUES always gets 
the " lastTimestamp" value. Would like to know
How to get the cdcr queues always return " lastTimestamp" value reliabily by 
CloudSolrClient.

This part I really have no idea about. The API documentation does say that monitoring actions are done at the core level and control actions are done at the collection level, so this might not be considered a bug. Someone who knows CDCR really well will need to comment.

https://lucene.apache.org/solr/guide/8_1/cdcr-api.html

Thanks,
Shawn

Reply via email to