missingParts(NULL),
fldisComplete(false),
hasLastPart(false),
- keyValueUpdateSet(new Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue>()),
+ keyValueUpdateSet(new Hashset<KeyValue *, uintptr_t, 0>()),
isDead(false),
sequenceNumber(-1),
machineId(-1),
missingParts(NULL),
fldisComplete(true),
hasLastPart(false),
- keyValueUpdateSet(new Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue>()),
+ keyValueUpdateSet(new Hashset<KeyValue *, uintptr_t, 0>()),
isDead(false),
sequenceNumber(_sequenceNumber),
machineId(_machineId),
}
CommitPart *previouslySeenPart = parts->setExpand(newPart->getPartNumber(), newPart);
- if(previouslySeenPart == NULL)
+ if (previouslySeenPart == NULL)
partCount++;
-
+
if (previouslySeenPart != NULL) {
// Set dead the old one since the new one is a rescued version of this part
previouslySeenPart->setDead();
}
}
-Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue> *Commit::getKeyValueUpdateSet() {
+Hashset<KeyValue *, uintptr_t, 0> *Commit::getKeyValueUpdateSet() {
return keyValueUpdateSet;
}
if (!isDead) {
isDead = true;
// Make all the parts of this transaction dead
- for (int32_t partNumber = 0; partNumber < parts->size(); partNumber ++) {
+ for (uint32_t partNumber = 0; partNumber < parts->size(); partNumber++) {
CommitPart *part = parts->get(partNumber);
- if (parts!=NULL)
+ if (parts != NULL)
part->setDead();
}
}
Array<char> *partData = new Array<char>(copySize);
System_arraycopy(charData, currentPosition, partData, 0, copySize);
- CommitPart* part = new CommitPart(NULL, machineId, sequenceNumber, transactionSequenceNumber, commitPartCount, partData, isLastPart);
+ CommitPart *part = new CommitPart(NULL, machineId, sequenceNumber, transactionSequenceNumber, commitPartCount, partData, isLastPart);
parts->setExpand(part->getPartNumber(), part);
// Update position, count and remaining
void Commit::decodeCommitData() {
// Calculate the size of the data section
int dataSize = 0;
- for (int i = 0; i < parts->size(); i++) {
+ for (uint i = 0; i < parts->size(); i++) {
CommitPart *tp = parts->get(i);
- if (tp!=NULL)
+ if (tp != NULL)
dataSize += tp->getDataSize();
}
int currentPosition = 0;
// Stitch all the data sections together
- for (int i = 0; i < parts->size(); i++) {
+ for (uint i = 0; i < parts->size(); i++) {
CommitPart *tp = parts->get(i);
- if (tp!=NULL) {
+ if (tp != NULL) {
System_arraycopy(tp->getData(), 0, combinedData, currentPosition, tp->getDataSize());
currentPosition += tp->getDataSize();
}
Array<char> *Commit::convertDataToBytes() {
// Calculate the size of the data
int sizeOfData = sizeof(int32_t); // Number of Update KV's
- SetIterator<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue> * kvit = keyValueUpdateSet->iterator();
- while(kvit->hasNext()) {
- KeyValue * kv = kvit->next();
+ SetIterator<KeyValue *, KeyValue *, uintptr_t, 0> *kvit = keyValueUpdateSet->iterator();
+ while (kvit->hasNext()) {
+ KeyValue *kv = kvit->next();
sizeOfData += kv->getSize();
}
delete kvit;
-
+
// Data handlers and storage
Array<char> *dataArray = new Array<char>(sizeOfData);
ByteBuffer *bbEncode = ByteBuffer_wrap(dataArray);
// Encode all the updates
kvit = keyValueUpdateSet->iterator();
- while(kvit->hasNext()) {
- KeyValue * kv = kvit->next();
+ while (kvit->hasNext()) {
+ KeyValue *kv = kvit->next();
kv->encode(bbEncode);
}
delete kvit;
-
+
return bbEncode->array();
}
-void Commit::setKVsMap(Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue> *newKVs) {
+void Commit::setKVsMap(Hashset<KeyValue *, uintptr_t, 0> *newKVs) {
keyValueUpdateSet->clear();
keyValueUpdateSet->addAll(newKVs);
liveKeys->clear();
- SetIterator<KeyValue*, uintptr_t, 0, hashKeyValue, equalsKeyValue> *kvit = newKVs->iterator();
- while(kvit->hasNext()) {
+ SetIterator<KeyValue *, KeyValue *, uintptr_t, 0> *kvit = newKVs->iterator();
+ while (kvit->hasNext()) {
liveKeys->add(kvit->next()->getKey());
}
delete kvit;
} else if (newer == NULL) {
return older;
}
- Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue> *kvSet = new Hashset<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue>();
- SetIterator<KeyValue *, uintptr_t, 0, hashKeyValue, equalsKeyValue> *kvit = older->getKeyValueUpdateSet()->iterator();
- while(kvit->hasNext()) {
- KeyValue* kv=kvit->next();
+ Hashset<KeyValue *, uintptr_t, 0> *kvSet = new Hashset<KeyValue *, uintptr_t, 0>();
+ SetIterator<KeyValue *, KeyValue *, uintptr_t, 0> *kvit = older->getKeyValueUpdateSet()->iterator();
+ while (kvit->hasNext()) {
+ KeyValue *kv = kvit->next();
kvSet->add(kv);
}
delete kvit;
kvit = newer->getKeyValueUpdateSet()->iterator();
- while(kvit->hasNext()) {
- KeyValue* kv=kvit->next();
+ while (kvit->hasNext()) {
+ KeyValue *kv = kvit->next();
kvSet->add(kv);
}
delete kvit;
-
+
int64_t transactionSequenceNumber = newer->getTransactionSequenceNumber();
if (transactionSequenceNumber == -1) {
transactionSequenceNumber = older->getTransactionSequenceNumber();