Symisc Vedis

An Embeddable Datastore Engine



Vedis C/C++ API Reference - Transaction Manager.

Syntax

int vedis_begin(vedis *pStore);


Manually begin a write-transaction on the specified vedis handle.


Description


Begin a write-transaction on the specified database handle. If a write-transaction has already been opened, this function is a no-op.

Tip: For maximum concurrency, it is preferable to let vedis start the transaction for you automatically. An automatic transaction is started each time upper-layers or client code request a store, delete or an append operation.


Parameters


pStore

Vedis datastore handle.


Return value


VEDIS_OK is returned on success. Any other return value indicates failure such as:


VEDIS_READ_ONLY: Read-only database.


VEDIS_BUSY: Another thread or process have an exclusive lock on the database. In this case, the caller should wait until the lock holder relinquish it.


VEDIS_IOERR: OS specific error.


VEDIS_NOMEM: Out of memory (Unlikely scenario).


VEDIS_ABORT: Another thread have released the database handle.


For a human-readable error message, you can extract the database error log via vedis_config() with a configuration verb set to VEDIS_CONFIG_ERR_LOG.


See also


vedis_commit, vedis_rollback, vedis_open, vedis_close, vedis_config.



Symisc Systems
Copyright © Symisc Systems