[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