7 Hashtable<int32_t, CommitPart *, int32_t> *parts;
8 Hashset<int32_t, int32_t> *missingParts;
11 Hashset<KeyValue *> *keyValueUpdateSet;
13 int64_t sequenceNumber;
15 int64_t transactionSequenceNumber;
16 Hashset<IoTString *> *liveKeys;
17 Array<char> *convertDataToBytes();
18 void setKVsMap(Hashtable<IoTString *, KeyValue *> *newKVs);
22 Commit(int64_t _sequenceNumber, int64_t _machineId, int64_t _transactionSequenceNumber);
24 void addPartDecode(CommitPart *newPart);
25 int64_t getSequenceNumber();
26 int64_t getTransactionSequenceNumber();
27 Hashtable<int32_t, CommitPart *, int32_t> *getParts();
28 void addKV(KeyValue *kv);
29 void invalidateKey(IoTString *key);
30 Hashset<KeyValue *> *getKeyValueUpdateSet();
31 int32_t getNumberOfParts();
32 int64_t getMachineId() { return machineId; }
33 bool isComplete() { return fldisComplete; }
34 bool isLive() { return !isDead; }
36 CommitPart *getPart(int32_t index);
37 void createCommitParts();
38 void decodeCommitData();
41 Commit *Commit_merge(Commit *newer, Commit *older, int64_t newSequenceNumber);