#3172 - Deep upload directory structures

Identifier #3172
Issue type Feature request or suggestion
Title Deep upload directory structures
Status Completed
Tags

Type: Cross-cutting feature (custom)

Type: Performance (custom)

Type: Usability (major) (custom)

Handling member Chris Graham
Addon core
Description Currently all uploads of a certain type are kept in a single directory.

This is slow to navigate using file browsers (e.g. FTP).

It is also a bit disorganised for people manually administration their content directories, especially for galleries.

It shouldn't perform any performance degradation within Composr though, as B-Tree or hashmap indexing exists in all modern filesystems that may be in use (HFS+, NTFS, ext3, ext4, Btrfs).

Here are upload directories that should be split up by category hierarchy...

downloads
gallery images
& thumbs
gallery videos
& thumbs
catalogues
repimages

Here are upload directories that should be split up alphabetically, using an infinite tree growth algorithm...

attachments
& thumbs
auto_thumbs
cns_avatars
cns_photos
& thumbs

It will be technically difficult to implement this because directory positions would need changing when entries are moved between categories, and on moving you can't do a naive move because of the possibility of a filename conflict in the new destination - so it needs to do a re-check for an adjusted non-conflicting filename.

It should also be optional, so people can temporarily disable it if it is buggy.

For the case of infinite tree growth, files would need to be moved around each time a new tree growth happens.
Steps to reproduce

Additional information References...

http://serverfault.com/questions/98235/how-many-files-in-a-directory-is-too-many-downloading-data-from-net

https://compo.sr/forum/topicview/browse/designing/two-type-of-galleries.htm?post_id=2118&topic_id=398&timestamp=1490957280&redirected=1&redirected=1
Funded? No
The system will post a comment when this issue is modified (e.g., status changes). To be notified of this, click "Enable comment notifications".

Rating

Unrated