Summary: This change introduces a pure virtual initial implementation of the transaction engine which is then implemented in two versions: single node and distributed. The interface classes now have the following hierarchy: ``` Engine (pure interface) | +----+---------- EngineDistributed (common logic) | | EngineSingleNode +-------+--------+ | | EngineMaster EngineWorker ``` In addition to this layout the `EngineMaster` uses `EngineSingleNode` as its underlying storage engine and only changes the necessary functions to make them work with the `EngineWorker`. After this change I recommend that you delete the following leftover files: ``` rm src/distributed/transactional_cache_cleaner_rpc_messages.* rm src/transactions/common.* rm src/transactions/engine_rpc_messages.* ``` Reviewers: teon.banek, msantl, buda Reviewed By: teon.banek Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D1589
15 lines
304 B
C++
15 lines
304 B
C++
/// @file
|
|
|
|
#include <cstdint>
|
|
|
|
// transcation and command types defined
|
|
// in a separate header to avoid cyclic dependencies
|
|
namespace tx {
|
|
|
|
/// Type of a tx::Transcation's id member
|
|
using TransactionId = uint64_t;
|
|
|
|
/// Type of a tx::Transcation's command id member
|
|
using CommandId = uint32_t;
|
|
}
|