Uploaded image for project: 'Couchbase Mobile'
  1. Couchbase Mobile
  2. CM-1196

CBL Full Disk Persistence

    XMLWordPrintable

Details

    • New Feature
    • Resolution: Unresolved
    • Major
    • None
    • None
    • CouchbaseLite

    Description

      Background: A customer reported an issue in CBSE-16247 where data was not being persisted to disk upon saving a document using the collection.save(doc) function. The customer provided code samples and additional information demonstrating this failure, indicating that data was lost upon running the function. A VF was produced, however, the feature has not been productised and we have had escalation from the accounts teams on this issue.

      Objective: Ensure that data is reliably persisted to disk even in the event of a power outage when using the collection.save(doc) function.

      Requirements:

      • Configurable Synchronization Mode:
        • Introduce a configurable option to enable full synchronization.
        • This option should not be enabled by default to avoid performance impacts for users who do not require this level of persistence.
      • API Changes:
        • Example API from VF discussion. To be fleshed out by Dev in a one pager.
          public enum Options { FULL_SYNC, ... }public DatabaseConfiguration setOptions(Option... options);public EnumSet getOptions();
          {{}}
      • Synchronous Level Configuration:
        • Internally, adjust the SQLite synchronous level when FULL_SYNC is enabled to ensure data is flushed to disk immediately{}
      • Docs Impact:
        • Document the new synchronization option to users, highlighting the trade-offs between data safety and performance.
        • Inform customers about the potential performance impact of enabling full synchronization.
      • QE Impact:
        • Conduct testing to verify that data is persisted to disk reliably when FULL_SYNC is enabled.
        • Simulate power outage scenarios to ensure data integrity is maintained.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            iveta.dulova Iveta Dulova
            iveta.dulova Iveta Dulova
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty