Flex  0.17.9
compact_transaction.h
Go to the documentation of this file.
1 
16 #ifndef GRAPHSCOPE_DATABASE_COMPACT_TRANSACTION_H_
17 #define GRAPHSCOPE_DATABASE_COMPACT_TRANSACTION_H_
18 
20 #include "grape/serialization/in_archive.h"
21 
22 namespace gs {
23 
24 class MutablePropertyFragment;
25 class IWalWriter;
26 class VersionManager;
27 
29  public:
33 
34  timestamp_t timestamp() const;
35 
36  bool Commit();
37 
38  void Abort();
39 
40  private:
45 
46  grape::InArchive arc_;
47 };
48 
49 } // namespace gs
50 
51 #endif // GRAPHSCOPE_DATABASE_COMPACT_TRANSACTION_H_
Definition: compact_transaction.h:28
bool Commit()
Definition: compact_transaction.cc:34
CompactTransaction(MutablePropertyFragment &graph, IWalWriter &logger, VersionManager &vm, timestamp_t timestamp)
Definition: compact_transaction.cc:23
timestamp_t timestamp_
Definition: compact_transaction.h:44
VersionManager & vm_
Definition: compact_transaction.h:43
void Abort()
Definition: compact_transaction.cc:58
grape::InArchive arc_
Definition: compact_transaction.h:46
MutablePropertyFragment & graph_
Definition: compact_transaction.h:41
IWalWriter & logger_
Definition: compact_transaction.h:42
~CompactTransaction()
Definition: compact_transaction.cc:30
timestamp_t timestamp() const
Definition: compact_transaction.cc:32
Definition: wal.h:57
Definition: mutable_property_fragment.h:37
Definition: version_manager.h:34
Definition: adj_list.h:23
uint32_t timestamp_t
Definition: types.h:30