1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2026-10-23 09:48:57 +03:00
Hemant Dangi 96b2c19e42 MDEV-38843: BF applier failed on a node causing complete Cluster lockup
log_dummy_write_set() is what releases commit order through
commit_order_leave() - which hands the apply error to the provider to
drive the inconsistency vote - and advances the storage engine
checkpoint. Skipping it on a rollback error leaves the seqno stuck in
commit order so all following appliers block on commit_order_enter, and
the node silently locks the cluster while staying in the primary
component.
Always call log_dummy_write_set() on the apply-error path, regardless of
the rollback result. The rollback result is still folded into ret so it
is not lost.
2026-05-28 13:17:39 +05:30
2025-01-14 12:35:12 +02:00
2018-06-18 18:55:38 +03:00

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)
Description
No description provided
Readme GPL-2.0 2.3 MiB
Languages
C++ 96.9%
CMake 2.6%
Shell 0.5%