Couchbase Lite C
Couchbase Lite C API
Data Fields
CBLDatabaseConfiguration Struct Reference

Database configuration options. More...

#include <cbl/CBLDatabase.h>

Data Fields

FLString directory
 The parent directory of the database. More...
 
CBLEncryptionKey encryptionKey
 The database's encryption key (if any) More...
 
bool fullSync
 As Couchbase Lite normally configures its databases, There is a very small (though non-zero) chance that a power failure at just the wrong time could cause the most recently committed transaction's changes to be lost. More...
 
bool mmapDisabled
 Disable memory-mapped I/O. More...
 

Detailed Description

Database configuration options.

Field Documentation

◆ directory

FLString CBLDatabaseConfiguration::directory

The parent directory of the database.

◆ encryptionKey

CBLEncryptionKey CBLDatabaseConfiguration::encryptionKey

The database's encryption key (if any)

◆ fullSync

bool CBLDatabaseConfiguration::fullSync

As Couchbase Lite normally configures its databases, There is a very small (though non-zero) chance that a power failure at just the wrong time could cause the most recently committed transaction's changes to be lost.

This would cause the database to appear as it did immediately before that transaction.

Setting this mode true ensures that an operating system crash or power failure will not cause the loss of any data. FULL synchronous is very safe but it is also dramatically slower.

◆ mmapDisabled

bool CBLDatabaseConfiguration::mmapDisabled

Disable memory-mapped I/O.

By default, memory-mapped I/O is enabled. Disabling it may affect database performance. Typically, there is no need to modify this setting.

Note
Memory-mapped I/O is always disabled on macOS to prevent database corruption, so setting mmapDisabled value has no effect on the macOS platform.

The documentation for this struct was generated from the following file: