On Jan 27, 2011, at 3:17 PM, Caleb James DeLisle wrote:

> 
> 
> On 01/27/2011 07:26 AM, Vincent Massol wrote:
>> Hi Caleb,
>> 
>> Thanks for the detailed information. 
>> 
>> So if my count is ok there's work left for a minimum of 21 men/days to 
>> finish it. We have 6 days till 3.0M2, 10 more for RC1 and 10 more for final, 
>> so a total of 26 days.
>> 
>> However if we want to include it in 3.0 final (and we do want this since 
>> it's in our roadmap :)), I suggest that you'd need to have something usable 
>> (with known issues/limitations) in XE 3.0M2, planned for the 7th of February 
>> 2011. Is that doable on your side? The idea is to let users start using it 
>> and provide feedback and find potential issues which we could fix in 3.0 RC1 
>> and RC2.
> 
> I could shift my attention back to FilesystemAttachmentStore and 
> FilesystemAttachmentVersioningStore
> so that people can use the code and avoid memory exhaustion by disabling the 
> attachment recycle bin
> (which is not currently available the user interface IIRC). Locking is the 
> only part which
> critically needs attention for that path.
> WDYT?

Sounds good to me, better have something operation that can be tested than 
nothing!

>> I'm also +1 to move your work in platform ASAP (you need to start an 
>> official vote for this in a separate thread). Could you explain where it 
>> would go? Would you suggest to have it all go in platform/core/xwiki-store 
>> module? Does it have deps on the old xwiki-core?
> 
> Yes, platform/core/xwiki-store module is the path I have so far taken.
> 
> xwiki-store/xwiki-store-filesystem-attachments depends on the old core.
> xwiki-store/xwiki-store-filesystem, xwiki-store/xwiki-store-serialization,
> xwiki-store/xwiki-store-transaction and xwiki-store-api do not.

Could you send a vote mail on this?

Thanks
-Vincent

>> Thanks
>> -Vincent
>> 
>> On Jan 26, 2011, at 6:59 PM, Caleb James DeLisle wrote:
>> 
>>> Hello,
>>> Here's an update on the current state of new filesystem attachment storage:
>>> There are a couple platforms on which attachment storage sits:
>>> * Transaction handling - This is finished to my satisfaction. We may decide 
>>> later that it is
>>> inadequate or needs changing but it serves this purpose now.
>>> * Transaction safe file save/delete - Finished (based on transaction 
>>> handling)
>>> * Serialization - Finished refactoring of XMLWriter and generic Serializer 
>>> and XMLSerializer.
>>> * Providing of files - Mostly finished, needs review to see if there is a 
>>> cleaner way. Barring any
>>> major changes, this should not take longer than 1 day to complete.
>>> * Locking - Needed, lock management exists but does not handle deadlock nor 
>>> "greedy thread"
>>> situations. 3 days needed to do code review on Apache commons LockManager 
>>> to determine if it handles
>>> these situations, I'm guessing 2 days are needed to integrate LockManager 
>>> and in place of the
>>> existing lock mechanism and a further 3 days to implement one of the 
>>> features on top of LockManager
>>> if need be.
>>> 
>>> "Consumer" code:
>>> * FilesystemAttachmentStore - Complete, enabling requires adding the .jar 
>>> file to WEB-INF and
>>> changing a line in xwiki.cfg. Suffers from deadlock because the locking 
>>> mechanism, is inadequate.
>>> * FilesystemAttachmentVersioningStore - Complete but needs tests, enabling 
>>> is same as for
>>> FilesystemAttachmentStore. 1-2 days should be adequate for testing.
>>> * FilesystemAttachmentRecycleBinStore - in progress, 3 days to complete and 
>>> test (?). Finished
>>> DeletedFilesystemAttachment, need TransactionRunnables for saving and 
>>> deleting and serializer for
>>> deleted attachment meta-data.
>>> * Need a plan for migrating data from old system. FilesystemAttachmentStore 
>>> fails over to old store
>>> if an attachment cannot be found. Is this correct? Should migration scripts 
>>> be distributed instead?
>>> WDYT?
>>> * Consumer code all needs more tests. Any amount of time could be spent on 
>>> this, I think a week is
>>> adequate.
>>> 
>>> Since this contains a large amount of code and all storage code is 
>>> critical, I think this should go
>>> through a release cycle in the platform but disabled by default so that it 
>>> can be beta tested before
>>> it becomes official. WDYT?
>>> 
>>> Caleb
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to