You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "René Cordier (Jira)" <se...@james.apache.org> on 2019/12/12 08:07:00 UTC
[jira] [Created] (JAMES-3010) POC BlobId list in Cassandra -
pre-write check
René Cordier created JAMES-3010:
-----------------------------------
Summary: POC BlobId list in Cassandra - pre-write check
Key: JAMES-3010
URL: https://issues.apache.org/jira/browse/JAMES-3010
Project: James Server
Issue Type: Improvement
Reporter: René Cordier
Introduce a `BlobExistenceTester` API within blob-objectstorage:
```
interface BlobIdExistantTester {
Mono<Boolean> exists(ObjectStorageBucketName bucketName, BlobId blobId);
Mono<Void> persist(ObjectStorageBucketName bucketName, BlobId blobId);
Mono<Void> delete(ObjectStorageBucketName bucketName, BlobId blobId);
Mono<Void> deleteBucket(ObjectStorageBucketName bucketName);
}
```
Create a `FakeBlobExistenceTester` that always returns false.
Create a `MemoryBlobExistenceTester` and the related tests.
Create a `CassandraBlobExistenceTester` and the related tests.
Ensure `ObjectStorageBlobStore`:
- Don't persist small blobs that already exist
- Don't attempt to rename (copy) big blobs that already exist - deleting the intermediary blob supplied is enough - and faster.
when Cassandra is down, just store it as normal
Propose a proof of concept regarding these changes.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org