code: @Override
      public LogCursor sections()
      {
          if (tc.isEntryEnabled())
              Tr.entry(tc, "sections", this);
  
          java.util.Collection recoverableUnitSectionsValues = _recoverableUnitSections.values();
  
          LogCursorImpl cursor = new LogCursorImpl(null, recoverableUnitSectionsValues, false, null);
  
          if (tc.isEntryEnabled())
              Tr.exit(tc, "sections", cursor);
  
          return cursor;
      }
docs: <p>
  Returns a LogCursor that can be used to itterate through all active
  recoverable unit sections. The order in which they are returned is not defined.
  </p>
  
  <p>
  The LogCursor must be closed when it is no longer needed or its itteration
  is complete. (See the LogCursor class for more information)
  </p>
  
  <p>
  Objects returned by <code>LogCursor.next</code> or <code>LogCursor.last</code>
  must be cast to type RecoverableUnitSection(Impl).
  </p>
  
  <p>
  Care must be taken not remove or add recoverable unit sections whilst the
  resulting LogCursor is open. Doing so will result in a
  ConcurrentModificationException being thrown.
  </p>
  
  <p>
  If there are no active recoverable unit sections then the resulting LogCursor
  object will return null from its next() and last() methods, 0 from the initialSize()
  method and false from hasNext()
  <p>
  
  @return A LogCursor that can be used to cycle through all active recoverable unit
  sections