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 forIRelStorageAdapterrelstorage.adapters.batch– Batch table row insert/delete supportrelstorage.adapters.connections– Connection management for the storage layerrelstorage.adapters.connmanagerAbstractConnectionManagerAbstractConnectionManager.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.dbiterrelstorage.adapters.drivers– Helpers for driversDriverNotImportableErrorAbstractModuleDriverAbstractModuleDriver.DriverNotAvailableErrorAbstractModuleDriver.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_PYPYAbstractModuleDriver.MODULE_NAMEAbstractModuleDriver.PRIORITYAbstractModuleDriver.PRIORITY_PYPYAbstractModuleDriver.REQUIREMENTSAbstractModuleDriver.STATIC_AVAILABLEAbstractModuleDriver.STRICTAbstractModuleDriver.cursor_arraysize
casefold()implement_db_driver_options()
relstorage.adapters.interfaces– Interfaces provided by RelStorage database adaptersAggregateOperationTimeoutErrorDriverNotAvailableErrorIConnectionManagerIConnectionManager.isolation_loadIConnectionManager.isolation_storeIConnectionManager.isolation_read_committedIConnectionManager.isolation_serializableIConnectionManager.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()
IDBDialectIDBDriverIDBDriver.__name__IDBDriver.disconnected_exceptionsIDBDriver.close_exceptionsIDBDriver.lock_exceptionsIDBDriver.use_replica_exceptionsIDBDriver.BinaryIDBDriver.dialectIDBDriver.cursor_arraysizeIDBDriver.supports_64bit_unsigned_idIDBDriver.connectIDBDriver.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()
IDBDriverFactoryIDBDriverOptionsIDBDriverSupportsCriticalIDBStatsIDatabaseIteratorILockerIManagedDBConnectionIManagedDBConnection.cursorIManagedDBConnection.connectionIManagedDBConnection.__bool__()IManagedDBConnection.drop()IManagedDBConnection.rollback_quietly()IManagedDBConnection.isolated_connection()IManagedDBConnection.restart_and_call()IManagedDBConnection.enter_critical_phase_until_transaction_end()
IManagedLoadConnectionIManagedStoreConnectionIOIDAllocatorIObjectMoverIObjectMover.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()
IPackUndoIPollerIRelStorageAdapterIRelStorageAdapter.driverIRelStorageAdapter.connmanagerIRelStorageAdapter.dbiterIRelStorageAdapter.keep_historyIRelStorageAdapter.lockerIRelStorageAdapter.moverIRelStorageAdapter.oidallocatorIRelStorageAdapter.packundoIRelStorageAdapter.pollerIRelStorageAdapter.runnerIRelStorageAdapter.schemaIRelStorageAdapter.statsIRelStorageAdapter.txncontrolIRelStorageAdapter.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()
IReplicaSelectorISchemaInstallerIScriptRunnerITransactionControlNoDriversAvailableErrorReplicaClosedExceptionStaleConnectionErrorUnableToAcquireCommitLockErrorUnableToAcquireLockErrorUnableToAcquirePackUndoLockErrorUnableToLockRowsDeadlockErrorUnableToLockRowsToModifyDeadlockErrorUnableToLockRowsToModifyErrorUnableToLockRowsToReadCurrentDeadlockErrorUnableToLockRowsToReadCurrentErrorUnknownDriverError
relstorage.adapters.locker– Locker implementationsrelstorage.adapters.mover– IObjectMover implementationAbstractObjectMoverAbstractObjectMover.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 installersOracleSchemaInstallerOracleSchemaInstaller.create_procedures()OracleSchemaInstaller.install_package()OracleSchemaInstaller.list_packages()OracleSchemaInstaller.list_procedures()OracleSchemaInstaller.COLTYPE_BINARY_STRINGOracleSchemaInstaller.COLTYPE_BLOB_CHUNKOracleSchemaInstaller.COLTYPE_BLOB_CHUNK_NUMOracleSchemaInstaller.COLTYPE_OID_TID
relstorage.adapters.oracle.scriptrunnerrelstorage.adapters.oracle.stats– Stats implementationsrelstorage.adapters.oracle.txncontrol– TransactionControl implementationsrelstorage.adapters.packundo– Pack/Undo implementationsrelstorage.adapters.pollerrelstorage.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.replicarelstorage.adapters.schema– Database schema installersAbstractSchemaInstallerAbstractSchemaInstaller.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_STRINGAbstractSchemaInstaller.COLTYPE_BLOB_CHUNKAbstractSchemaInstaller.COLTYPE_BLOB_CHUNK_NUMAbstractSchemaInstaller.COLTYPE_MD5AbstractSchemaInstaller.COLTYPE_OID_TIDAbstractSchemaInstaller.TRANSACTIONAL_TABLE_SUFFIX
relstorage.adapters.scriptrunnerrelstorage.adapters.sqlite.adapter– sqlite3 adapter for RelStoragerelstorage.adapters.sqlite.batchrelstorage.adapters.sqlite.connmanagerrelstorage.adapters.sqlite.dialect– sqlite3 dialectrelstorage.adapters.sqlite.driversrelstorage.adapters.sqlite.lockerrelstorage.adapters.sqlite.moverrelstorage.adapters.sqlite.oidallocator– sqlite3 adapter for RelStoragerelstorage.adapters.sqlite.pollerrelstorage.adapters.sqlite.schemarelstorage.adapters.sqlite.scriptrunnerrelstorage.adapters.sqlite.statsrelstorage.adapters.sqlite.txncontrolrelstorage.adapters.stats– Stats implementationsrelstorage.adapters.txncontrol– TransactionControl implementationsrelstorage.cache.interfacesrelstorage.cache.local_clientrelstorage.cache.local_database– The definition of how local cache databases are manipulatedrelstorage.cache.memcache_client– An implementation ofIStateCacheusing a memcache clientrelstorage.cache.mvcc– MVCC tracking for cache objectsrelstorage.cache.persistence– Helpers for various disk-based persistent storage formatrelstorage.cache.storage_cacheStorageCacheStorageCache.MVCCInternalConsistencyErrorStorageCache.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.tracerelstorage.config– ZConfig directive implementations for binding RelStorage to Zoperelstorage.interfaces– Interfaces for top-level RelStorage componentsrelstorage.optionsOptionsOptions.copy_valid_options()Options.copy()Options.new_instance()Options.adapterOptions.blob_cache_sizeOptions.blob_cache_size_checkOptions.blob_cache_size_check_externalOptions.blob_chunk_sizeOptions.blob_dirOptions.cache_delta_size_limitOptions.cache_local_compressionOptions.cache_local_dirOptions.cache_local_dir_compressOptions.cache_local_dir_countOptions.cache_local_dir_read_countOptions.cache_local_dir_write_max_sizeOptions.cache_local_mbOptions.cache_local_object_maxOptions.cache_module_nameOptions.cache_prefixOptions.cache_serversOptions.commit_lock_idOptions.commit_lock_timeoutOptions.create_schemaOptions.driverOptions.keep_historyOptions.nameOptions.pack_batch_timeoutOptions.pack_commit_busy_delayOptions.pack_gcOptions.pack_prepack_onlyOptions.pack_skip_prepackOptions.read_onlyOptions.replica_confOptions.replica_timeoutOptions.revert_when_staleOptions.ro_replica_confOptions.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