mirror of
https://github.com/codership/wsrep-lib.git
synced 2026-01-04 04:13:04 +03:00
096b5c5c7a28a5ad73870ffca58bad839a7e638e
This patch removes log_position from streaming_context. The log_position was meant for keeping track of the database specific position corresponding to the changes that have been already replicated by a streaming transaction. In reality, things may be more complex in the DBMS side and a size_t may be unsufficient to keep track of the progress of a streaming transaction. For example, in MariaDB, it may be necessary to keep track of positions in both transaction and statement caches. Suggesting that the responsibility of tracking these position(s) should be delegated to client_service. The log_position was also used to do sanity checks in streaming_step(). Those sanity checks are preserved by simply keeping track of the number of bytes that were certified by the streaming transaction.
Introduction
Project name: wsrep-lib - Integration library for WSREP API
The purpose of this project is to implement C++ wrapper for wsrep API with additional convenience for transaction processing.
This project will abstract away most of the transaction state management required on DBMS side and will provide simple C++ interface for key set population, data set population, commit processing, write set applying etc.
Build Instructions
In order to build the library, run
cmake . make
Build Requirements
- C++ compiler (g++ 5.4 or later recommended)
- CMake version 2.8 or later
- The following Boost libraries are required if the unit tests and
the sample program is compiled
- Unit Test Framework
- Program Options
- Filesystem
- Thread
CMake Options
- WSREP_LIB_WITH_UNIT_TESTS - Compile unit tests (default ON)
- WSREP_LIB_WITH_AUTO_TEST - Run unit tests automatically as a part of compilation (default OFF)
- WSREP_LIB_WITH_DBSIM - Compile sample program (default ON)
- WSREP_LIB_WITH_ASAN - Enable address sanitizer instrumentation (default OFF)
- WSREP_LIB_WITH_TSAN - Enable thread sanitizer instrumentation (default OFF)
- WSREP_LIB_WITH_DOCUMENTATION - Generate documentation, requires Doxygen (default OFF)
- WSREP_LIB_WITH_COVERAGE - Compile with coverage instrumentation (default OFF)
- WSREP_LIB_STRICT_BUILD_FLAGS - Compile with strict build flags, currently enables -Weffc++ (default OFF)
- WSREP_LIB_MAINTAINER_MODE - Make every compiler warning to be treated as error, enables -Werror compiler flag (default OFF)
Languages
C++
96.9%
CMake
2.6%
Shell
0.5%