Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-2038

Corrupted Index After Commit

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.0-ALPHA
    • None
    • None

    Description

      If I run queries which have matches after I commit documents, I get IndexOutOfBounds exceptions.

      This is repeatable.

      ==== Details ====

      === Stack Trace ===
      HTTP ERROR 500

      Problem accessing /solr/select. Reason:

      Index: 114, Size: 36

      java.lang.IndexOutOfBoundsException: Index: 114, Size: 36
      at java.util.ArrayList.rangeCheck(ArrayList.java:571)
      at java.util.ArrayList.get(ArrayList.java:349)
      at org.apache.lucene.index.FieldInfos.fieldInfo(FieldInfos.java:264)
      at org.apache.lucene.index.FieldsReader.doc(FieldsReader.java:204)
      at org.apache.lucene.index.SegmentReader.document(SegmentReader.java:828)
      at org.apache.lucene.index.DirectoryReader.document(DirectoryReader.java:588)
      at org.apache.solr.search.SolrIndexReader.document(SolrIndexReader.java:266)
      at org.apache.solr.search.SolrIndexSearcher.doc(SolrIndexSearcher.java:429)
      at org.apache.solr.util.SolrPluginUtils.optimizePreFetchDocs(SolrPluginUtils.java:268)
      at org.apache.solr.handler.component.QueryComponent.doPrefetch(QueryComponent.java:287)
      at org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:186)
      at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:195)
      at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
      at org.apache.solr.core.SolrCore.execute(SolrCore.java:1323)
      at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:337)
      at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:240)
      at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
      at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
      at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
      at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      at org.mortbay.jetty.Server.handle(Server.java:326)
      at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
      at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
      at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
      at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
      at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
      at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
      </code>

      === Procedure ===

      Here is how I make it happen:

      • create a new cck node with some custom fields
      • run drupal's cron
      • run a solr query that should have results.
      • error message above appears.

      For example, I have a cck type 'authorized term', that has all text fields. I make a new 'authorized term' and run Drupal's cron. Then I execute this query:

      http://localhost:8983/solr/select?q=tape

      (there should be a result for this query)

      The stack trace above appears as the result.

      Note that if there are no results (e.g. http://localhost:8983/solr/select?q=asdfadf) then there is no error.

      If I delete the index and rebuild it, and then run the query, there are no errors and I get the results I expect.

      === related ===
      might be related to this message?

      http://lucene.472066.n3.nabble.com/Querying-throws-java-util-ArrayList-RangeCheck-td998369.html

      I'm using solr-4.0 because of the lucene syntax query parsing (I need fuzzy searches).

      If you need any other diagnostic info, just let me know. I'm fairly new to Solr, so my apologies if I'm missing anything.

      I think you all are doing great work on the project, and Solr has already been a tremendous help to me.

      Attachments

        1. schema.xml
          25 kB
          Alexander Dorsk
        2. solrconfig.xml
          30 kB
          Alexander Dorsk

        Activity

          People

            Unassigned Unassigned
            adorsk Alexander Dorsk
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: