Commit 7dc0787a authored by Tim Peters's avatar Tim Peters

Merge rev 38093 from 3.4 branch.

Comment out the undocumented method definitions in the
storage interfaces.  It would be better to define &
document them, but that takes time, and until time is
available better not to pretend that they're all really
part of "the" storage API.
parent 78f5f8aa
...@@ -80,7 +80,7 @@ class IConnection(Interface): ...@@ -80,7 +80,7 @@ class IConnection(Interface):
Two options affect consistency. By default, the mvcc and synch Two options affect consistency. By default, the mvcc and synch
options are enabled by default. options are enabled by default.
If you pass mvcc=True to db.open(), the Connection will never read If you pass mvcc=False to db.open(), the Connection will never read
non-current revisions of an object. Instead it will raise a non-current revisions of an object. Instead it will raise a
ReadConflictError to indicate that the current revision is ReadConflictError to indicate that the current revision is
unavailable because it was written after the current transaction unavailable because it was written after the current transaction
...@@ -332,97 +332,104 @@ class IStorage(Interface): ...@@ -332,97 +332,104 @@ class IStorage(Interface):
"""A storage is responsible for storing and retrieving data of objects. """A storage is responsible for storing and retrieving data of objects.
""" """
def load(oid, version): ## What follows is the union of methods found across various storage
"""TODO""" ## implementations. Exactly what "the storage API" is and means has
## become fuzzy over time. Methods should be uncommented here, or
def close(): ## even deleted, as the storage API regains a crisp definition.
"""TODO"""
## def load(oid, version):
def cleanup(): ## """TODO"""
"""TODO""" ##
## def close():
def lastSerial(): ## """TODO"""
"""TODO""" ##
## def cleanup():
def lastTransaction(): ## """TODO"""
"""TODO""" ##
## def lastSerial():
def lastTid(oid): ## """TODO"""
"""Return last serialno committed for object oid.""" ##
## def lastTransaction():
def loadSerial(oid, serial): ## """TODO"""
"""TODO""" ##
## def lastTid(oid):
def loadBefore(oid, tid): ## """Return last serialno committed for object oid."""
"""TODO""" ##
## def loadSerial(oid, serial):
def iterator(start=None, stop=None): ## """TODO"""
"""TODO""" ##
## def loadBefore(oid, tid):
def sortKey(): ## """TODO"""
"""TODO""" ##
## def iterator(start=None, stop=None):
def getName(): ## """TODO"""
"""TODO""" ##
## def sortKey():
def getSize(): ## """TODO"""
"""TODO""" ##
## def getName():
def history(oid, version, length=1, filter=None): ## """TODO"""
"""TODO""" ##
## def getSize():
def new_oid(): ## """TODO"""
"""TODO""" ##
## def history(oid, version, length=1, filter=None):
def set_max_oid(possible_new_max_oid): ## """TODO"""
"""TODO""" ##
## def new_oid():
def registerDB(db, limit): ## """TODO"""
"""TODO""" ##
## def set_max_oid(possible_new_max_oid):
def isReadOnly(): ## """TODO"""
"""TODO""" ##
## def registerDB(db, limit):
def supportsUndo(): ## """TODO"""
"""TODO""" ##
## def isReadOnly():
def supportsVersions(): ## """TODO"""
"""TODO""" ##
## def supportsUndo():
def tpc_abort(transaction): ## """TODO"""
"""TODO""" ##
## def supportsVersions():
def tpc_begin(transaction): ## """TODO"""
"""TODO""" ##
## def tpc_abort(transaction):
def tpc_vote(transaction): ## """TODO"""
"""TODO""" ##
## def tpc_begin(transaction):
def tpc_finish(transaction, f=None): ## """TODO"""
"""TODO""" ##
## def tpc_vote(transaction):
def getSerial(oid): ## """TODO"""
"""TODO""" ##
## def tpc_finish(transaction, f=None):
def loadSerial(oid, serial): ## """TODO"""
"""TODO""" ##
## def getSerial(oid):
def loadBefore(oid, tid): ## """TODO"""
"""TODO""" ##
## def loadSerial(oid, serial):
def getExtensionMethods(): ## """TODO"""
"""TODO""" ##
## def loadBefore(oid, tid):
def copyTransactionsFrom(): ## """TODO"""
"""TODO""" ##
## def getExtensionMethods():
def store(oid, oldserial, data, version, transaction): ## """TODO"""
""" ##
## def copyTransactionsFrom():
may return the new serial or not ## """TODO"""
""" ##
## def store(oid, oldserial, data, version, transaction):
## """
##
## may return the new serial or not
## """
class IStorageUndoable(IStorage): class IStorageUndoable(IStorage):
"""A storage supporting transactional undo.
"""
def undo(transaction_id, txn): def undo(transaction_id, txn):
"""TODO""" """TODO"""
...@@ -500,20 +507,26 @@ class IStorageUndoable(IStorage): ...@@ -500,20 +507,26 @@ class IStorageUndoable(IStorage):
def pack(t, referencesf): def pack(t, referencesf):
"""TODO""" """TODO"""
class IVersioningStorage(IStorage): class IStorageVersioning(IStorage):
"""A storage supporting versions.
def abortVersion(src, transaction): """
"""TODO"""
def commitVersion(src, dest, transaction):
"""TODO"""
def modifiedInVersion(oid):
"""TODO"""
def versionEmpty(version):
"""TODO"""
def versions(max=None):
"""TODO"""
## What follows is the union of methods found across various version storage
## implementations. Exactly what "the storage API" is and means has
## become fuzzy over time. Methods should be uncommented here, or
## even deleted, as the storage API regains a crisp definition.
## def abortVersion(src, transaction):
## """TODO"""
##
## def commitVersion(src, dest, transaction):
## """TODO"""
##
## def modifiedInVersion(oid):
## """TODO"""
##
## def versionEmpty(version):
## """TODO"""
##
## def versions(max=None):
## """TODO"""
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