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

Pass the AbstractJournal into the RWStore from commitNow() rather than using setXXX() methods.


    • Type: Task
    • Status: Done
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: RWStore


      Remove setTransactionManager() and setCommitRecordIndex() from
      IBufferStrategy, AbstractBufferStrategy, WORMStrategy,
      DiskOnlyStrategy, and RWStrategy.

      Modify commitNow() to pass the AbstractJournal reference along.

      Modify RWStrategy and RWStore to use the journal reference to access
      the CommitRecordIndex and transaction manager as necessary during
      commit processing.

      Modify RWStore to incrementally evict blocks of deleted addressed to
      be eventually released, e.g., by writing them onto a PSOutputStream
      which is flushed during the commit protocol.

      Take out the optimization which seeks to immediately free allocations
      if the commit point from which they are reading has aged beyond the
      history retention time. This will increase the decoupling of the
      RWStore and the Journal and typical history periods will be long
      enough that the optimization does not yield much benefit.

      Note that System.currentTimeMillis() must not be used to obtain
      anything which can be compared with a commit time. Always go to
      ITransactionServer#nextTimestamp(). This allows us to change the
      semantics of the clock.


        There are no comments yet on this issue.


          • Assignee:
            martyncutcher martyncutcher
            bryanthompson bryanthompson
          • Votes:
            0 Vote for this issue
            1 Start watching this issue


            • Created: