repoze.zodbconn Change History
- In the connector middleware, abort the transaction before closing
the connection, to avoid an exception that would lead to leaked
- The ZConfig file parser now allows a config file to define multiple
- Added a zconfig URI parser, providing basic support for any
kind of storage that ZODB can load via ZConfig.
- Added a db_from_uri function, which is simpler to use than
dbfactory_from_uri; db_from_uri also supports
multi-databases. Replaced references in the documentation.
- Added connector, a WSGI framework component that connects to ZODB
and puts the connection in the WSGI environment. It unconditionally
closes the ZODB connection on exit.
- PersistentApplicationFinder now gets the ZODB connection
from the WSGI environment whenever it is provided.
- Moved db_from_uri and dbfactory_from_uri to a module
named uri, to avoid circular imports.
- Added cachecleanup, a WSGI framework component that keeps only
objects of certain classes in the ZODB cache. This helps control
- Added transferlog, a WSGI framework component that logs
how many ZODB objects were loaded and stored per request.
- The EnvironmentDeleterMiddleware (the “closer”) middleware did
not delete the environment key if the application raised an
exception, potentially causing connection leakage for applications
that depended upon it doing so.
- Added a LoggingCleanup implementation which can be passed to
PersistentApplicationFinder: it logs counts of loaded and saved
objects for the connection between the time it is instantiated (i.e.,
whe the database connection is opened) and the time the connection is
closed. See the “Customizing Connection Cleanup” section in the narrative
docs for notes on using this feature.
- Added cleanup argument to constructor of PersistentApplicationFinder,
to allow applications to register a custom cleanup object factory.
See the “Customizing Connection Cleanup” section in the narrative docs
for notes on using this feature.
- 100% unit test coverage.
- Fixed breakage with file: URIs having no query string.
Fix a bug in FileStorageURIResolver whereby fully-qualified paths to
Windows files (e.g. file://C:\foo\bar\baz?a=1) were parsed
incorrectly, resulting in a bogus file location.
Added support for multi-databases in PersistentApplicationFinder.
Just pass multiple URIs to the constructor, either as a list of
strings or a single string with URIs separated by whitespace. Each
database must have a distinct database_name. The first URI specifies
the root database.
dbfactory_from_uri now returns only a single argument (the
Docs updated with argument values for file:// and zeo:// URI
schemes; this file converted to real REST.
Pass layout to BlobStorage as a kwarg explicitly (for forward
Depend on ZODB3 3.8.1+.
Add connection_cache_size, connection_pool_size, and
database_name arguments to both FileStorage and ClientStorage URI
resolver schemes. connection_cache_size represents the ZODB
object cache size (the cache_size parameter to the DB
constructor), connection_pool_size represents the ZODB connection
pool size (the pool_size parameter to the DB constructor), and
database_name represents the ZODB database name (the
database_name parameter to the DB constructor).
connection_cache_size defaults to 10000 (overriding the too-low DB
constructor default of 400), connection_pool_size defaults to 7,
and database_name defaults to unnamed.
Add ‘egg:repoze.zodbconn#closer’ middleware.
Add blobstorage and demostorage support to zeo and file resolvers.