[ 
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:

    https://github.com/apache/jackrabbit/pull/60

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

    Hi,
    
    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,
    
    Woonsan

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:

    https://github.com/apache/jackrabbit/pull/60.patch

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 ecosystem.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to