Slot * lastSlotAttemptedToSend = NULL;
bool lastIsNewKey = false;
int lastNewSize = 0;
- Hashtable<Transaction *, List<int32_t> *> lastTransactionPartsSent = NULL;
- List<Entry*> *lastPendingSendArbitrationEntriesToDelete = NULL;
+ Hashtable<Transaction *, Vector<int32_t> *> lastTransactionPartsSent = NULL;
+ Vector<Entry*> *lastPendingSendArbitrationEntriesToDelete = NULL;
NewKey * lastNewKey = NULL;
Hashtable<IoTString *, KeyValue *> * pendingTransactionSpeculatedKeyValueTable = NULL; // Table of speculated key value pairs, if there is a speculative value from the pending transactions
Hashtable<IoTString *, NewKey *> * liveNewKeyTable = NULL; // Table of live new keys
Hashtable<int64_t, Pair<int64_t, Liveness*>*> *lastMessageTable = NULL; // Last message sent by a client machine id -> (Seq Num, Slot or LastMessage);
- Hashtable<int64_t, HashSet<RejectedMessage*>*> *rejectedMessageWatchListTable = NULL; // Table of machine Ids and the set of rejected messages they have not seen yet
+ Hashtable<int64_t, HashSet<RejectedMessage*>*> *rejectedMessageWatchVectorTable = NULL; // Table of machine Ids and the set of rejected messages they have not seen yet
Hashtable<IoTString*, int64_t> *arbitratorTable = NULL; // Table of keys and their arbitrators
Hashtable<Pair<int64_t, int64_t>*, Abort*> *liveAbortTable = NULL; // Table live abort messages
Hashtable<int64_t, Hashtable<Pair<int64_t, int32_t>*, TransactionPart*>*> *newTransactionParts = NULL; // transaction parts that are seen in this latest round of slots from the server
Hashtable<int64_t, Hashtable<int64_t, Commit*>> *liveCommitsTable = NULL;
Hashtable<IoTString*, Commit*> *liveCommitsByKeyTable = NULL;
Hashtable<int64_t, int64_t> *lastCommitSeenSequenceNumberByArbitratorTable = NULL;
- Vector<int64_t> * rejectedSlotList = NULL; // List of rejected slots that have yet to be sent to the server
- List<Transaction*> *pendingTransactionQueue = NULL;
- List<ArbitrationRound*> *pendingSendArbitrationRounds = NULL;
- List<Entry*> *pendingSendArbitrationEntriesToDelete = NULL;
- Hashtable<Transaction*, List<Integer*>*> *transactionPartsSent = NULL;
+ Vector<int64_t> * rejectedSlotVector = NULL; // Vector of rejected slots that have yet to be sent to the server
+ Vector<Transaction*> *pendingTransactionQueue = NULL;
+ Vector<ArbitrationRound*> *pendingSendArbitrationRounds = NULL;
+ Vector<Entry*> *pendingSendArbitrationEntriesToDelete = NULL;
+ Hashtable<Transaction*, Vector<int32_t*>*> *transactionPartsSent = NULL;
Hashtable<int64_t, TransactionStatus*> *outstandingTransactionStatus = NULL;
Hashtable<int64_t, Abort*> *liveAbortsGeneratedByLocal = NULL;
Hashset<Pair<int64_t, int64_t>*> *offlineTransactionsCommittedAndAtServer = NULL;
* Add a rejected message entry to the watch set to keep track of which clients have seen that
* rejected message entry and which have not.
*/
- void addWatchList(int64_t machineId, RejectedMessage entry);
+ void addWatchVector(int64_t machineId, RejectedMessage entry);
/**
* Check if the HMAC chain is not violated