You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2014/03/18 10:42:43 UTC

[jira] [Created] (OAK-1556) Document and test additional BlobStore contracts

Thomas Mueller created OAK-1556:
-----------------------------------

             Summary: Document and test additional BlobStore contracts
                 Key: OAK-1556
                 URL: https://issues.apache.org/jira/browse/OAK-1556
             Project: Jackrabbit Oak
          Issue Type: Improvement
          Components: core
            Reporter: Thomas Mueller
            Assignee: Thomas Mueller
            Priority: Minor
             Fix For: 1.0


The original BlobStore implementations support an additional contract, which is tested, but so far the applications can't rely on. The contract is that concatenating multiple blobIds is a valid blobId, and means the binaries are concatenated. The use cases are to support partial and concurrent uploads / transfers. Depending on the backend, this can speed up transfers quite a bit. Also, it allows new use cases, for example "resume upload" without having to re-upload or stream the existing binary. 

The DataStore implementations don't support those use cases. Now, with the DataStoreBlobStore compatibility wrapper, this contract can't be supported by all BlobStore implementations. That's fine. However, the tests against the other BlobStores should still test this contract.

I will add a new marker interface "ChunkingBlobStore" so the unit tests can verify the contract.



--
This message was sent by Atlassian JIRA
(v6.2#6252)