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

Reduce the number of EntryNotFoundExceptions during AsyncEventQueue batch processing with conflation enabled

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.9.0
    • wan

    Description

      Reduce the number of EntryNotFoundExceptions during AsyncEventQueue batch processing with conflation enabled

      This test:

      3000 iterations of putAlls with the same 1500 keys into a partitioned region attached to async-event-queue:

      <async-event-queue id="test" batch-size="100000" batch-time-interval="250" dispatcher-threads="1" parallel="true" enable-batch-conflation="true">

      Produces these numbers in the current code (4 different runs):

      numBatches=645; numENFEs=8622196; totalPeekTime=178517; averagePeekTime=276; totalProcessBatchTime=38936; averageProcessBatchTime=60
      numBatches=660; numENFEs=8467986; totalPeekTime=182985; averagePeekTime=277; totalProcessBatchTime=34335; averageProcessBatchTime=52
      numBatches=646; numENFEs=8563364; totalPeekTime=179624; averagePeekTime=278; totalProcessBatchTime=37342; averageProcessBatchTime=57
      numBatches=632; numENFEs=8716942; totalPeekTime=175570; averagePeekTime=277; totalProcessBatchTime=39732; averageProcessBatchTime=62
      

      After some changes mainly in BucketRegionQueue:

      numBatches=782; numENFEs=3621039; totalPeekTime=195760; averagePeekTime=250; totalProcessBatchTime=18724; averageProcessBatchTime=23
      numBatches=791; numENFEs=3604933; totalPeekTime=197980; averagePeekTime=250; totalProcessBatchTime=18587; averageProcessBatchTime=23
      numBatches=790; numENFEs=3600038; totalPeekTime=197774; averagePeekTime=250; totalProcessBatchTime=18611; averageProcessBatchTime=23
      numBatches=795; numENFEs=3584490; totalPeekTime=199060; averagePeekTime=250; totalProcessBatchTime=18063; averageProcessBatchTime=22
      

      numBatches is the number of batches peeked
      numENFEs is the number of EntryNotFoundExceptions thrown
      totalPeekTime is the total time to peek all batches
      averagePeekTime is the average time to peek a batch
      totalProcessBatchTime is the total time to process all batches
      averageProcessBatchTime is the average time to process a batch (includes listener callback and remove from queue)

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              boglesby Barrett Oglesby
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m