Symisc Vedis

An Embeddable Datastore Engine

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


int vedis_begin(vedis *pStore);

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


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.



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