Uploaded image for project: 'Blazegraph (by SYSTAP)'
  1. Blazegraph (by SYSTAP)
  2. BLZG-604

Eliminate unnecessary dechunking and rechunking

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Other
    • Labels:
      None

      Description

      The following areas have been identified where there is an unnecessary conversion between chunked and unchunked iterators. In several cases, this pattern has emerged due to the evolution of APIs. However, the SAIL/SPARQL query evaluation code paths no longer require this pattern and the QueryEngine no longer has any reliance on IAsynchronousIterator, which was another source of these conversions.

      Resolution of this issue might require that we rework BlockingBuffer to use a poison pill pattern rather than a spin loop since that class is another source of the IAsynchronousIterator pattern.

      ASTEvalHelper#evaluate() 
      HTreeHashJoinUtility#accept()
      

      Also, look for all uses of the Dechunkerator. That class is typically used to support this pattern.

      The ChunkConsumerIterator class can be used to turn an ICloseableIterator vising some array type into an IChunkedOrderedIterator for that element type without dechunking and rechunking.

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            bryanthompson bryanthompson
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated: