[ZODB-Dev] blob todos
Jim Fulton
jim at zope.com
Fri Jun 8 13:13:04 EDT 2007
On Jun 8, 2007, at 12:36 PM, Christian Theune wrote:
> Hi,
>
> (this goes mostly to Jim)
>
> I just noticed that the blob.py has a todo list at the end of it. We
> shouldn't let it stay there. Here are some comments about the various
> entries:
>
> # To do:
> #
> # Production
> #
> # - Ensure we detect and replay a failed txn involving blobs
> forward
> or
> # backward at startup.
> #
> # Jim: What does this mean?
>
> Chris McDonough came up with this, I'm not quite sure. It has
> something
> todo how FileStorage recovers when starting up AFAIR.
FileStorage doesn't play anything forward on startup. It does throw
away partial or uncommitted transactions. I don't see any
significant harm in leaving extra blob files around and they would
eventually be removed through packing. We do need to take a little
extra care in the packing code to deal with this possibility though.
>
> # Far future
> #
> # More options for blob directory structures (e.g. dirstorages
> # bushy/chunky/lawn/flat).
> #
> # Make the ClientStorage support minimizing the blob
> # cache. (Idea: LRU principle via mstat access time and a
> # size-based threshold) currently).
>
> I can put those into launchpad as blueprints.
+1
>
> # Savepoint support
> # =================
> #
> # - A savepoint represents the whole state of the data at a certain
> point in
> # time
> #
> # - Need special storage for blob savepointing (in the spirit of
> tmpstorage)
> #
> # - What belongs to the state of the data?
> #
> # - Data contained in files at that point in time
> #
> # - File handles are complex because they might be referred to from
> various
> # places. We would have to introduce an abstraction layer to
> allow
> # switching them around...
> #
> # Simpler solution: :
>
> Didn't you (Jim) do this?
Yes. Non-optimistic savepoints now work AFAIK. Interestingly, they
were mostly implemented already.
Good catch wrt this to-do list.
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the ZODB-Dev
mailing list