Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-2824

FunctionException: No target node found when executing hasNext on Lucene result

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.2.0
    • lucene
    • None

    Description

      The stack trace below is thrown during a race condition when a node is closing and calling hasNext on a Lucene result.

      It looks there was a CacheClosedException, but this execution was unable to find a target node to retry on. This execution then threw a FunctionException.

      We have code to unwrap CacheClosedExceptions from function exceptions, however this was just an ordinary function exception. The underlying cause is that the cache is closing at this time.

      We should probably wrap all function exceptions with either a LuceneQueryException or equivalent as a user would probably not expect a FunctionException when calling Lucene methods.

      The stack trace:

      at org.apache.geode.internal.cache.PartitionedRegion.executeOnMultipleNodes(PartitionedRegion.java:3459)
              at org.apache.geode.internal.cache.PartitionedRegion.executeFunction(PartitionedRegion.java:3367)
              at org.apache.geode.internal.cache.execute.PartitionedRegionFunctionExecutor.executeFunction(PartitionedRegionFunctionExecutor.java:228)
              at org.apache.geode.internal.cache.execute.AbstractExecution.execute(AbstractExecution.java:376)
              at org.apache.geode.internal.cache.partitioned.PRFunctionStreamingResultCollector.getResult(PRFunctionStreamingResultCollector.java:178)
              at org.apache.geode.cache.lucene.internal.PageableLuceneQueryResultsImpl.getValues(PageableLuceneQueryResultsImpl.java:112)
              at org.apache.geode.cache.lucene.internal.PageableLuceneQueryResultsImpl.getHitEntries(PageableLuceneQueryResultsImpl.java:91)
              at org.apache.geode.cache.lucene.internal.PageableLuceneQueryResultsImpl.advancePage(PageableLuceneQueryResultsImpl.java:139)
              at org.apache.geode.cache.lucene.internal.PageableLuceneQueryResultsImpl.hasNext(PageableLuceneQueryResultsImpl.java:148)
      

      Attachments

        Activity

          People

            zhouxj Xiaojian Zhou
            jasonhuynh Jason Huynh
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: