Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
Important
Description
h1. CURRENT ISSUES
Currently CouchbaseWriter.java lacks the ability to do the following:
- Use certificate based authentication
- Set document expiry (TTL)
- based on write time
- based on an offset specified field contained in the record's data (JSON)
- (WILL NOT ADRESS) set expiry based on a field contained in the record's data
- Set DNS SRV for bootstrap host discovery setting
- Missing documentation on CouchbaseWriter usage
- Testing does not bring in CouchbaseMock correctly and causes problems while bumping com.couchbase.client:java-client
h1. PROPOSED SOLUTIONS
- Add logic to connect using certificate based auth to the buckets (Will need to bump com.couchbase.client:java-client to a newer version like 2.7.6) and associated configs
- TTL implementation
- Add configs to allow setting a TTL (documentTTL) and also specify the timeunits (documentTTLUnits) of these settings
- Add logic to specify the path to key to the field containing the source timestamp (documentTTLOriginField) and its units (documentTTLOriginUnits) to disambiguate between UNIX (sec) timestamps and other formats like timestamps in milliseconds.
- N/A but logic would be similar to (2)
- Add missing dnsSrv config
- Write proper documentation
- Bring in CouchbaseMock from Gradle and adapt existing unit tests.
Attachments
Issue Links
- links to