jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCR-4354) VFS (commons-vfs) based FileSystem for VFS backend based Persistence Manager
Date Wed, 08 Aug 2018 04:05:00 GMT

    [ https://issues.apache.org/jira/browse/JCR-4354?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16572641#comment-16572641

ASF GitHub Bot commented on JCR-4354:

GitHub user woonsan opened a pull request:


    JCR-4354: VFS (commons-vfs) based FileSystem for VFS backend based Persistence Manager

    I've made a pull request and I'd like to ask for your reviews.
    As described in https://issues.apache.org/jira/browse/JCR-4354, this PR implements `VFSFileSystem`
with a full unit test which behaves equivalently to `LocalFileSystem` with a difference that
the former uses Commons VFS2 library to access various backends such as SFTP server, instead
of local file system.
    For my own demonstration purpose, I also created an example project which shows how to
use this `VFSFileSystem` for `versioning` with an SFTP backend with instructions:
    - https://github.com/woonsanko/hippo-davstore-demo/tree/feature/vfs-file-system
    Could someone review the PR and merge it if okay?
    Thanks in advance,

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/woonsan/jackrabbit feature/JCR-4354

Alternatively you can review and apply these changes as the patch at:


To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #60
commit d5b60dae76a5b57efea4e8e526bebbe5d9eb7384
Author: Woonsan Ko <woonsan.ko@...>
Date:   2018-08-07T00:48:27Z

    JCR-4354: Initial VFSFileSystem implementation

commit 869e5068755e7238df23c6cf64d56c58cc8dad4e
Author: Woonsan Ko <woonsan.ko@...>
Date:   2018-08-08T03:35:07Z

    JCR-4354: close its vfs file system on close


> VFS (commons-vfs) based FileSystem for VFS backend based Persistence Manager
> ----------------------------------------------------------------------------
>                 Key: JCR-4354
>                 URL: https://issues.apache.org/jira/browse/JCR-4354
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>            Reporter: Woonsan Ko
>            Priority: Major
> I think it would be nice to have a VFS (commons-vfs) based {{FileSystem}} which then
can be used by {{BundleFsPersistenceManager}}.
> For example, I have worked with a Jackrabbit based WCMS product which recommends using
one of {{BundleDbPersistenceManager}} components for both workspaces and version, which makes
it easier for clustering.
> One typical problem is that the version storage in DBMS keeps increasing, so as a result
we've recommended cleaning up older version items periodically. (You may google "cms version
cleaner" for more info.)
> In this case, if they were able to configure a VFS based {{FileSystem}} and the generic
{{PersistenceManager}}, {{BundleFsPersistenceManager}}, for the versions, their DB size would
keep small enough, and they may keep the version items almost infinitely. Actually versioning
are used relatively less than other normal functionalities such as content retrieval and searching,
only when authoring users publish a document in our case. So, keeping version data separately
from database wouldn't be a problem, as long as it supports easier clustering (through WebDAV
or SFTP in this option).
> Another possible use case is that some people may use VFS based solution for both workspaces
and version, backed by a clustered WebDAV server or SFTP server. They can use VFS-based DataStore
provided by JCR-3975 as well. This would increase architectural options around Jackrabbit

This message was sent by Atlassian JIRA

View raw message