File system abstraction ----------------------- Key: OAK-56 URL: https://issues.apache.org/jira/browse/OAK-56 Project: Jackrabbit Oak Issue Type: Improvement Components: core, mk Reporter: Thomas Mueller Assignee: Thomas Mueller Priority: Minor
A file system abstraction allows to add new features (cross cutting concerns) in a modular way, for example: - detection and special behavior of out-of-disk space situation - profiling and statistics over JMX - re-try on file system problems - encryption - file system monitoring - replication / real-time backup on the file system level (for clustering) - caching (improved performance for CRX) - allows to easily switch to faster file system APIs (FileChannel, memory mapped files) - debugging (for example, logging all file system operations) - allows to implement s3 / hadoop / mongodb / ... file systems - not only by us but from 3th party, possibly the end user - zip file system (for example to support read-only, compressed repositories) - testing: simulating out of disk space and out of memory (ensure the repository doesn't corrupt in this case) - testing: simulate very large files (using an in-memory file system) - splitting very large files in 2 gb blocks (FAT and other file systems that don't support large files) - data compression (if needed) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira