rvm_truncate(3)

NAME
rvm_truncate - truncate the log

SYNOPSIS

#include "rvm.h"
rvm_return_t rvm_truncate ()

DESCRIPTION
rvm_truncate makes visible the log truncation operation. When the log is truncated, records for committed changes are used to update the committed images of modified segments. After modified data files are successfully updated, the records can be deleted and the log "truncated." Like log flushing, this operation is usually performed implicitly by RVM, but is available to the application if it wishes to schedule the operation itself. rvm_truncate performs a flush before truncating, and is synchronous with the calling thread. rvm_truncate requires virtual memory working space. If this space cannot be allocated, RVM_ENO_MEMORY is returned, and the truncation is aborted. If possible, the application can deallocate as much memory as possible and retry the truncation. This can done as many times as necessary. If no memory can be freed, this error should be considered fatal.

DIAGNOSTICS

RVM_SUCCESS
    success

RVM_ENO_MEMORY
    heap exhausted

RVM_EIO
    I/O or kernel error, errno has code number

RVM_ELOG
    no log file has been specified

RVM_EINIT
    RVM not initialized

SEE ALSO
rvm_flush (3)

AUTHOR
Hank Mashburn