Thanks, Jack. > How is first_publish_date defined?
<field name="first_publish_date" type="date" indexed="true" stored="true" /> with "date" being <fieldType name="date" class="solr.TrieDateField" precisionStep="0" positionIncrementGap="0" /> Yes, we need to fix the Boolean operators AND, OR and NOT as mentioned in http://searchhub.org/2011/12/28/why-not-and-or-and-not/ but I believe that is not an issue here, because the same query returns results few mins before the full index started. On Fri, Feb 28, 2014 at 8:39 AM, Jack Krupansky <j...@basetechnology.com>wrote: > How is first_publish_date defined? > > After queries start failing, do an explicit query of some of the document > IDs that you think should be present and see what the first_publish_date > field contains. > > Also, Solr and Lucene queries are not strict Boolean, so ANDing of a > purely negative term requires explicitly referring to all documents before > applying the negation. > > So, > > AND -tag_id:268702 > > should be: > > AND (*:* -tag_id:268702) > > Or, maybe you actually wanted this: > > first_publish_date:[NOW/DAY-33DAYS TO NOW/DAY-3DAYS] -tag_id:268702 > > -- Jack Krupansky > > -----Original Message----- From: Arun Rangarajan > Sent: Friday, February 28, 2014 11:15 AM > To: solr-user@lucene.apache.org > Subject: Date query not returning results only some time > > > Solr server version 4.2.1 > > I am facing a strange issue with a date query like this: > > q=first_publish_date:[NOW/DAY-33DAYS TO NOW/DAY-3DAYS] AND > -tag_id:268702&fq=(burial_score:[* TO 0.49] AND > -tag_id:286006)&rows=1&sort=random_906313237 asc&fl=id > > The only process by which we add documents to the core on which this query > executes is via data import handler full import. We do indexing on master > and queries are executed against a slave. > > This query returns results till the time full import starts (1 AM PST > daily). But the moment full import starts, it does not return any results. > Other queries return results. > > Our auto commit settings in solrconfig have openSearcher set to false as > shown below: > <updateHandler class="solr.DirectUpdateHandler2"> > <autoCommit> > <maxDocs>25000</maxDocs> > <maxTime>600000</maxTime> <!-- millis --> > <openSearcher>false</openSearcher> > </autoCommit> > > <updateLog> > <str name="dir">${solr.updatelog.dir:}</str> > </updateLog> > </updateHandler> > > It starts returning results after the full import finishes and issues a > commit, which takes about 1.5 hrs. The pollInterval for slave is set for > every hour: > > <requestHandler name="/replication" class="solr.ReplicationHandler" > > <lst name="master"> > <str name="enable">${enable.master:false}</str> > <str name="replicateAfter">startup</str> > <str name="replicateAfter">commit</str> > <str name="replicateAfter">optimize</str> > <str > name="confFiles">solrconfig.xml,data-config.xml,schema. > xml,stopwords.txt,synonyms.txt,elevate.xml</str> > </lst> > <lst name="slave"> > <str name="enable">${enable.slave:false}</str> > <str name="masterUrl">http://${master.ip}:${master.port}/solr/${ > solr.core.name}/replication</str> > <str name="pollInterval">01:00:00</str> > </lst> > </requestHandler> > > What am I doing wrong? Please let me know if you need any more details to > help me debug this. >