I've done some larger testing with a wiki with 4000 documents. The
integration worked well (except some plexus init change needed).
However the system is quite slow when getting to big directories.
Although we can improve the server part, I think it's a bad idea to have
by design large directories. Operating System WebDAV client can be very
aggressive (downloading files to generate thumbnails, making requests
looking for temporary files). I was able to improve the speed of error
handling however there are still way too many calls to the server.
For example the attachment view has more than 1000 documents. This makes
more than 2000 request to display with the MAC OSX WebDAV client.
So I propose to change our view to make it almost impossible to get to
large directories in our WebDAV view. The general principle is to
breakdown by space name and then breakdown by the first letters for the
page name.
For example the attachment view instead of being
attachments/pagename/attachmentname
would beconde
attachments/spacename/firstletters/pagename/attachmentname
firstletters would be the first letters of pages existing in that view.
It could be one letter, two letters, three letters or could change based
on the number of pages in the view.
For example it could be one letter with less than 200 documents, two
with less 5000, three more than 5000.
We could go up to 100000 documents with folders of around 30 pages with
a 3 letter subdirectory.
I've detailed the view proposal here:
http://dev.xwiki.org/xwiki/bin/view/Design/WebDAVService
WDYT ?
Ludovic
--
Ludovic Dubost
Blog:
http://blog.ludovic.org/
XWiki:
http://www.xwiki.com
Skype: ldubost GTalk: ldubost