Commit 47622ceb authored by Barry Warsaw's avatar Barry Warsaw

Essentially, this is a rewrite of the Berkeley versionless, undoless

storage.  Some of the internal operations have changed, coding style
is a bit less compact.  Other substantive changes include:

- The implementation now uses the CommitLog.PacklessLog temporary
  transaction log class.  This avoids the problem with tempfiles being
  unlinked as soon as they are created (and then lost if the process
  exits abnormally).

- Minimal is now derived from BerkeleyBase instead of Base.

- Some updates to use the latest PyBSDDB API, e.g. get() instead of
  has_key().

- The table names have changed to 'serials' and 'pickles'.

- tpc_vote() is now supported.  BerkeleyBase.tpc_vote() calls
  Minimal._vote() and this is where the commit log is placed into the
  promised state.

- The semantics are now that when the transaction successfully
  commits, the commit log file is deleted.  This may need to be
  changed to either a truncation-on-close, or scribble-zero-in-header
  approach for performance reasons.
parent 1f28c122
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment