43 return sizeof(uint8_t) +
sizeof(uint8_t) +
sizeof(
Operator) * size;
96 for(uint8_t i = 0; i <
index; i++)
130 void MarkForDeletion(
const std::vector<Node*>& nodes,
const std::vector<Node*>& preds,
Desc* desc);
144 uint32_t g_count = 0;
145 uint32_t g_count_ins = 0;
146 uint32_t g_count_ins_new = 0;
147 uint32_t g_count_del = 0;
148 uint32_t g_count_del_new = 0;
149 uint32_t g_count_fnd = 0;
Desc * AllocateDesc(uint8_t size)
Definition: translist.cc:48
Node(uint32_t _key, Node *_next, NodeDesc *_nodeDesc)
Definition: translist.h:64
ASSERT_CODE(uint32_t g_count=0;uint32_t g_count_ins=0;uint32_t g_count_ins_new=0;uint32_t g_count_del=0;uint32_t g_count_del_new=0;uint32_t g_count_fnd=0;) uint32_t g_count_commit=0
Definition: translist.h:61
uint8_t index
Definition: translist.h:108
void Init()
Definition: translist.h:75
Definition: translist.h:22
volatile uint8_t status
Definition: translist.h:47
uint32_t key
Definition: translist.h:67
Definition: translist.h:16
Definition: allocator.h:10
uint8_t opid
Definition: translist.h:58
#define ASSERT(condition,...)
Definition: assert.h:27
NodeDesc(Desc *_desc, uint8_t _opid)
Definition: translist.h:54
Definition: translist.h:23
~TransList()
Definition: translist.cc:29
void Push(Desc *desc)
Definition: translist.h:80
Node * m_head
Definition: translist.h:136
void FinishPendingTxn(NodeDesc *nodeDesc, Desc *desc)
Definition: translist.cc:439
uint32_t key
Definition: translist.h:36
ReturnCode Insert(uint32_t key, Desc *desc, uint8_t opid, Node *&inserted, Node *&pred)
Definition: translist.cc:190
static size_t SizeOf(uint8_t size)
Definition: translist.h:41
uint8_t size
Definition: translist.h:48
void Pop()
Definition: translist.h:87
Operator ops[]
Definition: translist.h:49
Definition: translist.h:15
Definition: translist.h:73
ReturnCode Delete(uint32_t key, Desc *desc, uint8_t opid, Node *&deleted, Node *&pred)
Definition: translist.cc:291
bool IsSameOperation(NodeDesc *nodeDesc1, NodeDesc *nodeDesc2)
Definition: translist.cc:363
Node * next
Definition: translist.h:68
bool IsNodeExist(Node *node, uint32_t key)
Definition: translist.cc:434
static uint32_t g_count_commit
Definition: stmskip.cc:38
void LocatePred(Node *&pred, Node *&curr, uint32_t key)
Definition: translist.cc:463
Definition: translist.h:21
uint32_t g_count_abort
Definition: translist.h:153
Definition: translist.h:39
ReturnCode Find(uint32_t key, Desc *desc, uint8_t opid)
Definition: translist.cc:369
uint32_t g_count_fake_abort
Definition: translist.h:154
TransList(Allocator< Node > *nodeAllocator, Allocator< Desc > *descAllocator, Allocator< NodeDesc > *nodeDescAllocator)
Definition: translist.cc:21
bool ExecuteOps(Desc *desc)
Definition: translist.cc:57
Allocator< Node > * m_nodeAllocator
Definition: translist.h:138
Desc * helps[256]
Definition: translist.h:107
NodeDesc * nodeDesc
Definition: translist.h:70
Definition: translist.h:52
Definition: translist.h:29
Definition: translist.h:14
Allocator< Desc > * m_descAllocator
Definition: translist.h:139
void HelpOps(Desc *desc, uint8_t opid)
Definition: translist.cc:113
OpType
Definition: translist.h:26
Allocator< NodeDesc > * m_nodeDescAllocator
Definition: translist.h:140
Definition: translist.h:9
bool IsNodeActive(NodeDesc *nodeDesc)
Definition: translist.cc:450
Desc * desc
Definition: translist.h:57
Definition: translist.h:28
bool IsKeyExist(NodeDesc *nodeDesc)
Definition: translist.cc:455
Node()
Definition: translist.h:63
ReturnCode
Definition: translist.h:19
bool Contain(Desc *desc)
Definition: translist.h:94
OpStatus
Definition: translist.h:12
Definition: translist.h:30
void MarkForDeletion(const std::vector< Node * > &nodes, const std::vector< Node * > &preds, Desc *desc)
Definition: translist.cc:90
Definition: translist.h:33
uint8_t type
Definition: translist.h:35
void Print()
Definition: translist.cc:493
Node * m_tail
Definition: translist.h:135