Internal Details¶
Caution
This document is a reference for exploring the code base and tracing errors. The details are subject to change.
relstorage.adapters.adapter
– Base class forIRelStorageAdapter
relstorage.adapters.batch
– Batch table row insert/delete supportrelstorage.adapters.connections
– Connection management for the storage layerrelstorage.adapters.connmanager
AbstractConnectionManager
AbstractConnectionManager.add_on_load_opened()
AbstractConnectionManager.add_on_store_opened()
AbstractConnectionManager.check_replica()
AbstractConnectionManager.close()
AbstractConnectionManager.open()
AbstractConnectionManager.open_and_call()
AbstractConnectionManager.open_for_pre_pack()
AbstractConnectionManager.open_for_store()
AbstractConnectionManager.restart_load()
AbstractConnectionManager.restart_store()
AbstractConnectionManager.set_on_store_opened()
connection_callback()
relstorage.adapters.dbiter
relstorage.adapters.drivers
– Helpers for driversDriverNotImportableError
AbstractModuleDriver
AbstractModuleDriver.DriverNotAvailableError
AbstractModuleDriver.configure_from_options()
AbstractModuleDriver.enter_critical_phase_until_transaction_end()
AbstractModuleDriver.exit_critical_phase()
AbstractModuleDriver.get_driver_module()
AbstractModuleDriver.is_in_critical_phase()
AbstractModuleDriver.synchronize_cursor_for_rollback()
AbstractModuleDriver.AVAILABLE_ON_PYPY
AbstractModuleDriver.MODULE_NAME
AbstractModuleDriver.PRIORITY
AbstractModuleDriver.PRIORITY_PYPY
AbstractModuleDriver.REQUIREMENTS
AbstractModuleDriver.STATIC_AVAILABLE
AbstractModuleDriver.STRICT
AbstractModuleDriver.cursor_arraysize
casefold()
implement_db_driver_options()
relstorage.adapters.interfaces
– Interfaces provided by RelStorage database adaptersAggregateOperationTimeoutError
DriverNotAvailableError
IConnectionManager
IConnectionManager.isolation_load
IConnectionManager.isolation_store
IConnectionManager.isolation_read_committed
IConnectionManager.isolation_serializable
IConnectionManager.open()
IConnectionManager.close()
IConnectionManager.rollback_and_close()
IConnectionManager.rollback()
IConnectionManager.rollback_quietly()
IConnectionManager.begin()
IConnectionManager.open_and_call()
IConnectionManager.open_for_load()
IConnectionManager.restart_load()
IConnectionManager.open_for_store()
IConnectionManager.restart_store()
IConnectionManager.open_for_pre_pack()
IConnectionManager.open_for_pack_lock()
IConnectionManager.cursor_for_connection()
IConnectionManager.add_on_store_opened()
IConnectionManager.add_on_load_opened()
IConnectionManager.describe_connection()
IDBDialect
IDBDriver
IDBDriver.__name__
IDBDriver.disconnected_exceptions
IDBDriver.close_exceptions
IDBDriver.lock_exceptions
IDBDriver.use_replica_exceptions
IDBDriver.Binary
IDBDriver.dialect
IDBDriver.cursor_arraysize
IDBDriver.supports_64bit_unsigned_id
IDBDriver.connect
IDBDriver.cursor()
IDBDriver.binary_column_as_state_type()
IDBDriver.binary_column_as_bytes()
IDBDriver.enter_critical_phase_until_transaction_end()
IDBDriver.is_in_critical_phase()
IDBDriver.exit_critical_phase()
IDBDriver.exception_is_deadlock()
IDBDriverFactory
IDBDriverOptions
IDBDriverSupportsCritical
IDBStats
IDatabaseIterator
ILocker
IManagedDBConnection
IManagedDBConnection.cursor
IManagedDBConnection.connection
IManagedDBConnection.__bool__()
IManagedDBConnection.drop()
IManagedDBConnection.rollback_quietly()
IManagedDBConnection.isolated_connection()
IManagedDBConnection.restart_and_call()
IManagedDBConnection.enter_critical_phase_until_transaction_end()
IManagedLoadConnection
IManagedStoreConnection
IOIDAllocator
IObjectMover
IObjectMover.load_current()
IObjectMover.load_currents()
IObjectMover.load_revision()
IObjectMover.exists()
IObjectMover.load_before()
IObjectMover.get_object_tid_after()
IObjectMover.current_object_tids()
IObjectMover.on_store_opened()
IObjectMover.make_batcher()
IObjectMover.store_temps()
IObjectMover.restore()
IObjectMover.detect_conflict()
IObjectMover.replace_temps()
IObjectMover.move_from_temp()
IObjectMover.update_current()
IObjectMover.download_blob()
IObjectMover.upload_blob()
IPackUndo
IPoller
IRelStorageAdapter
IRelStorageAdapter.driver
IRelStorageAdapter.connmanager
IRelStorageAdapter.dbiter
IRelStorageAdapter.keep_history
IRelStorageAdapter.locker
IRelStorageAdapter.mover
IRelStorageAdapter.oidallocator
IRelStorageAdapter.packundo
IRelStorageAdapter.poller
IRelStorageAdapter.runner
IRelStorageAdapter.schema
IRelStorageAdapter.stats
IRelStorageAdapter.txncontrol
IRelStorageAdapter.new_instance()
IRelStorageAdapter.release()
IRelStorageAdapter.close()
IRelStorageAdapter.__str__()
IRelStorageAdapter.lock_database_and_choose_next_tid()
IRelStorageAdapter.lock_database_and_move()
IRelStorageAdapter.lock_objects_and_detect_conflicts()
IReplicaSelector
ISchemaInstaller
IScriptRunner
ITransactionControl
NoDriversAvailableError
ReplicaClosedException
StaleConnectionError
UnableToAcquireCommitLockError
UnableToAcquireLockError
UnableToAcquirePackUndoLockError
UnableToLockRowsDeadlockError
UnableToLockRowsToModifyDeadlockError
UnableToLockRowsToModifyError
UnableToLockRowsToReadCurrentDeadlockError
UnableToLockRowsToReadCurrentError
UnknownDriverError
relstorage.adapters.locker
– Locker implementationsrelstorage.adapters.mover
– IObjectMover implementationAbstractObjectMover
AbstractObjectMover.current_object_tids()
AbstractObjectMover.download_blob()
AbstractObjectMover.exists()
AbstractObjectMover.get_object_tid_after()
AbstractObjectMover.load_before()
AbstractObjectMover.load_current()
AbstractObjectMover.load_currents()
AbstractObjectMover.load_revision()
AbstractObjectMover.move_from_temp()
AbstractObjectMover.on_load_opened()
AbstractObjectMover.on_store_opened()
AbstractObjectMover.replace_temps()
AbstractObjectMover.store_temps()
AbstractObjectMover.update_current()
AbstractObjectMover.upload_blob()
RowBatcherStoreTemps
relstorage.adapters.mysql.adapter
– MySQL adapter for RelStoragerelstorage.adapters.mysql.connmanager
– MySQL adapter for RelStoragerelstorage.adapters.mysql.locker
– Locker implementationsrelstorage.adapters.mysql.mover
– IObjectMover implementationrelstorage.adapters.mysql.oidallocator
– IOIDAllocator implementationsrelstorage.adapters.mysql.packundo
– Pack/Undo implementationsrelstorage.adapters.mysql.schema
– Database schema installersrelstorage.adapters.mysql.stats
– Stats implementationsrelstorage.adapters.mysql.txncontrol
– TransactionControl implementationsrelstorage.adapters.oidallocator
– IOIDAllocator implementationsrelstorage.adapters.oracle.adapter
– Oracle adapter for RelStoragerelstorage.adapters.oracle.batch
– Batch table row insert/delete supportrelstorage.adapters.oracle.connmanager
– Oracle adapter for RelStoragerelstorage.adapters.oracle.dialect
– The Oracle dialectrelstorage.adapters.oracle.drivers
– Oracle IDBDriver implementationsrelstorage.adapters.oracle.locker
– Locker implementationsrelstorage.adapters.oracle.mover
– IObjectMover implementationrelstorage.adapters.oracle.oidallocator
– IOIDAllocator implementationsrelstorage.adapters.oracle.packundo
– Pack/Undo implementationsrelstorage.adapters.oracle.schema
– Database schema installersOracleSchemaInstaller
OracleSchemaInstaller.create_procedures()
OracleSchemaInstaller.install_package()
OracleSchemaInstaller.list_packages()
OracleSchemaInstaller.list_procedures()
OracleSchemaInstaller.COLTYPE_BINARY_STRING
OracleSchemaInstaller.COLTYPE_BLOB_CHUNK
OracleSchemaInstaller.COLTYPE_BLOB_CHUNK_NUM
OracleSchemaInstaller.COLTYPE_OID_TID
relstorage.adapters.oracle.scriptrunner
relstorage.adapters.oracle.stats
– Stats implementationsrelstorage.adapters.oracle.txncontrol
– TransactionControl implementationsrelstorage.adapters.packundo
– Pack/Undo implementationsrelstorage.adapters.poller
relstorage.adapters.postgresql.adapter
– PostgreSQL adapter for RelStoragerelstorage.adapters.postgresql.batch
– Batch table row insert/delete supportrelstorage.adapters.postgresql.connmanager
– PostgreSQL adapter for RelStoragerelstorage.adapters.postgresql.locker
– Locker implementationsrelstorage.adapters.postgresql.mover
– IObjectMover implementationrelstorage.adapters.postgresql.oidallocator
– IOIDAllocator implementationsrelstorage.adapters.postgresql.schema
– Database schema installersrelstorage.adapters.postgresql.stats
– Stats implementationsrelstorage.adapters.postgresql.txncontrol
– TransactionControl implementationsrelstorage.adapters.postgresql.util
– PostgreSQL utilitiesrelstorage.adapters.replica
relstorage.adapters.schema
– Database schema installersAbstractSchemaInstaller
AbstractSchemaInstaller.CREATE_BLOB_CHUNK_TMPL()
AbstractSchemaInstaller.CREATE_OBJECT_REFS_ADDED_TMPL()
AbstractSchemaInstaller.CREATE_OBJECT_REF_TMPL()
AbstractSchemaInstaller.CREATE_OBJECT_STATE_TMPL()
AbstractSchemaInstaller.create_procedures()
AbstractSchemaInstaller.create_sequences()
AbstractSchemaInstaller.create_tables()
AbstractSchemaInstaller.create_triggers()
AbstractSchemaInstaller.drop_all()
AbstractSchemaInstaller.update_schema()
AbstractSchemaInstaller.zap_all()
AbstractSchemaInstaller.COLTYPE_BINARY_STRING
AbstractSchemaInstaller.COLTYPE_BLOB_CHUNK
AbstractSchemaInstaller.COLTYPE_BLOB_CHUNK_NUM
AbstractSchemaInstaller.COLTYPE_MD5
AbstractSchemaInstaller.COLTYPE_OID_TID
AbstractSchemaInstaller.TRANSACTIONAL_TABLE_SUFFIX
relstorage.adapters.scriptrunner
relstorage.adapters.sqlite.adapter
– sqlite3 adapter for RelStoragerelstorage.adapters.sqlite.batch
relstorage.adapters.sqlite.connmanager
relstorage.adapters.sqlite.dialect
– sqlite3 dialectrelstorage.adapters.sqlite.drivers
relstorage.adapters.sqlite.locker
relstorage.adapters.sqlite.mover
relstorage.adapters.sqlite.oidallocator
– sqlite3 adapter for RelStoragerelstorage.adapters.sqlite.poller
relstorage.adapters.sqlite.schema
relstorage.adapters.sqlite.scriptrunner
relstorage.adapters.sqlite.stats
relstorage.adapters.sqlite.txncontrol
relstorage.adapters.stats
– Stats implementationsrelstorage.adapters.txncontrol
– TransactionControl implementationsrelstorage.cache.interfaces
relstorage.cache.local_client
relstorage.cache.local_database
– The definition of how local cache databases are manipulatedrelstorage.cache.memcache_client
– An implementation ofIStateCache
using a memcache clientrelstorage.cache.mvcc
– MVCC tracking for cache objectsrelstorage.cache.persistence
– Helpers for various disk-based persistent storage formatrelstorage.cache.storage_cache
StorageCache
StorageCache.MVCCInternalConsistencyError
StorageCache.after_tpc_finish()
StorageCache.clear()
StorageCache.close()
StorageCache.load()
StorageCache.loadSerial()
StorageCache.new_instance()
StorageCache.release()
StorageCache.remove_all_cached_data_for_oids()
StorageCache.remove_cached_data()
StorageCache.save()
StorageCache.stats()
StorageCache.zap_all()
relstorage.cache.trace
relstorage.config
– ZConfig directive implementations for binding RelStorage to Zoperelstorage.interfaces
– Interfaces for top-level RelStorage componentsrelstorage.options
Options
Options.copy()
Options.copy_valid_options()
Options.new_instance()
Options.adapter
Options.blob_cache_size
Options.blob_cache_size_check
Options.blob_cache_size_check_external
Options.blob_chunk_size
Options.blob_dir
Options.cache_delta_size_limit
Options.cache_local_compression
Options.cache_local_dir
Options.cache_local_dir_compress
Options.cache_local_dir_count
Options.cache_local_dir_read_count
Options.cache_local_dir_write_max_size
Options.cache_local_mb
Options.cache_local_object_max
Options.cache_module_name
Options.cache_prefix
Options.cache_servers
Options.commit_lock_id
Options.commit_lock_timeout
Options.create_schema
Options.driver
Options.keep_history
Options.name
Options.pack_batch_timeout
Options.pack_commit_busy_delay
Options.pack_gc
Options.pack_prepack_only
Options.pack_skip_prepack
Options.read_only
Options.replica_conf
Options.replica_timeout
Options.revert_when_stale
Options.ro_replica_conf
Options.shared_blob_dir
COMMIT_EXIT_CRITICAL_SECTION_EARLY
relstorage.pylibmc_wrapper
– A wrapper around pylibmc to make it not raise memcache errorsrelstorage.treemark
– OID tree traversal for the garbage collection phase of packingrelstorage.zodbconvert
– ZODB storage conversion utilityrelstorage.zodbpack
– ZODB storage packing utilityrelstorage.zodburi_resolver