jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Mueller (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-3148) Online migration process for the binaries
Date Thu, 17 Sep 2015 09:29:45 GMT

    [ https://issues.apache.org/jira/browse/OAK-3148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14791835#comment-14791835
] 

Thomas Mueller commented on OAK-3148:
-------------------------------------

I merged the changes, and now unfortunately the following tests fail:

{noformat}
Tests in error: 
 blobsExistsOnTheNewBlobStore(org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest)
 blobsCanBeReadAfterSwitchingBlobStore(org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest)

blobsExistsOnTheNewBlobStore(org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest)
 Time elapsed: 10.124 sec  <<< ERROR!
java.lang.NullPointerException
	at org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest.createOldBlobStore(DocumentToExternalMigrationTest.java:62)
	at org.apache.jackrabbit.oak.plugins.blob.migration.AbstractMigratorTest.setup(AbstractMigratorTest.java:66)

blobsCanBeReadAfterSwitchingBlobStore(org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest)
 Time elapsed: 0 sec  <<< ERROR!
java.lang.NullPointerException
	at org.apache.jackrabbit.oak.plugins.blob.migration.DocumentToExternalMigrationTest.createOldBlobStore(DocumentToExternalMigrationTest.java:62)
	at org.apache.jackrabbit.oak.plugins.blob.migration.AbstractMigratorTest.setup(AbstractMigratorTest.java:66)
{noformat}

I think this is because I don't run MongoDB. Other tests don't fail if MongoDB is not running,
I will try to fix it.

> Online migration process for the binaries
> -----------------------------------------
>
>                 Key: OAK-3148
>                 URL: https://issues.apache.org/jira/browse/OAK-3148
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: blob, upgrade
>            Reporter: Tomek Rękawek
>            Assignee: Thomas Mueller
>            Priority: Minor
>             Fix For: 1.3.7
>
>
> For clients that want to migrate their blob stores, let's add a new feature that allows
copy them in the background.
> AC:
> # SplitBlobStore
> ## Administrator can configure Oak to use the {{SplitBlobStore}} that references the
source (old) and the destination (new) blob store.
> ## Data stores can be used as well via the {{DataStoreBlobStore}}.
> ## On the read operation, if the requested blob exists on the new store, SplitBlobStore
will return it.
> ## Otherwise, SplitBlobStore will try to read the blob from the old store.
> ## All write requests will be directed to the new blob store.
> # Copy process
> ## Administrator can start, stop and resume the copy process using JMX command.
> ## Administrator can see the progress in JMX and logs
> ## The process will read the {{SplitBlobStore}} configuration and copy the binaries from
source to destination
> ## Once a binary is moved, its reference in the {{NodeStore}} is updated and commited.
> ## Only the head revision has to be updated.
> The idea is that after all binaries are copied, the old revisions will be gradually removed
by the compaction mechanisms and then binaries will be removed from the source store by the
blob garbage collector. Future improvements are possible, eg. to invoke the compaction and
GC manually.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message