# C API Transaction Logging Samples

> The build procedures for the C API SDK samples on all supported platforms are described in the "Getting Started" section.

> Please use the links below to view the description and specific instructions for individual samples in the following sub-directories:

> tlogappend | Demonstrates appending transactions to an already existing log file
> tlogapplypartial | Demonstrates how to apply a part of the log to a database
> tlogbasic | Demonstrates basic eXtremeDB Transaction Logging functionality
> tlogcheckpoint | Demonstrates the use of log option `MCO_TRANSLOG_SIZE_CLBK` to manage log file size
> tlogflush | Demonstrates the use of log flushing options `MCO_TRANSLOG_SYNC_TIMER` and `MCO_TRANSLOG_SYNC_COUNT`
> tlogiterdualout | Demonstrates the use of TL iteration using the `MCO_TRANSLOG_DUAL_OUT` flag which makes it possible to copy the log to a file while it is also transferred via a pipe and iterated by a reader application
> tlogiterdynpipe | Demonstrates the use of TL iteration functionality using dynamic pipes
> tlogiterevents | Demonstrates the use of a technique called “persistent events queue"
> tlogiterpipe | Demonstrates the use of flags `MCO_TRANSLOG_ITERABLE` and `MCO_TRANSLOG_PIPE` to transfer the log through a pipe
> tlogiterpipe_ddl | Dynamic DDL with the use of flags `MCO_TRANSLOG_ITERABLE` and `MCO_TRANSLOG_PIPE` to transfer the log through a pipe
> tlogitermultipipe | Demonstrates how to create more than one pipe channel and broadcast the log to multiple readers
> tloglabels | Demonstrates the use of the transaction log labeling feature
> tlogtruncate | Demonstrates transaction log truncation