test8();
} else if (args[0].equals("9")) {
test9();
+ } else if (args[0].equals("10")) {
+ test10();
+ } else if (args[0].equals("11")) {
+ test11();
}
- // else if (args[0].equals("10")) {
- // test10();
- // }
}
- // static void test10() throws ServerException {
-
- // long startTime = 0;
- // long endTime = 0;
- // boolean foundError = false;
-
- // // Setup the 2 clients
- // Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
- // t1.initTable();
- // Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
- // t2.update();
-
- // if (t1.hasConnection()) {
- // System.out.println("Can see server");
- // }
-
- // LocalComm lc = new LocalComm(t1, t2);
- // t1.addLocalComm(t2.getId(), lc);
- // t2.addLocalComm(t1.getId(), lc);
-
- // // Make the Keys
- // System.out.println("Setting up keys");
- // startTime = System.currentTimeMillis();
- // for (int i = 0; i < NUMBER_OF_TESTS; i++) {
- // String a = "a" + i;
- // String b = "b" + i;
- // String c = "c" + i;
- // String d = "d" + i;
- // IoTString ia = new IoTString(a);
- // IoTString ib = new IoTString(b);
- // IoTString ic = new IoTString(c);
- // IoTString id = new IoTString(d);
- // t1.createNewKey(ia, 321);
- // t1.createNewKey(ib, 351);
- // t2.createNewKey(ic, 321);
- // t2.createNewKey(id, 351);
- // }
- // endTime = System.currentTimeMillis();
- // System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- // System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
- // System.out.println();
-
-
- // // Do Updates for the keys
- // System.out.println("Setting Key-Values...");
- // startTime = System.currentTimeMillis();
- // for (int i = 0; i < NUMBER_OF_TESTS; i++) {
- // String keyA = "a" + i;
- // String keyB = "b" + i;
- // String keyC = "c" + i;
- // String keyD = "d" + i;
- // String valueA = "a" + i;
- // String valueB = "b" + i;
- // String valueC = "c" + i;
- // String valueD = "d" + i;
-
- // IoTString iKeyA = new IoTString(keyA);
- // IoTString iKeyB = new IoTString(keyB);
- // IoTString iKeyC = new IoTString(keyC);
- // IoTString iKeyD = new IoTString(keyD);
- // IoTString iValueA = new IoTString(valueA);
- // IoTString iValueB = new IoTString(valueB);
- // IoTString iValueC = new IoTString(valueC);
- // IoTString iValueD = new IoTString(valueD);
-
- // while (true) {
- // t1.startTransaction();
- // t1.addKV(iKeyA, iValueA);
- // if (t1.commitTransactionLocal()) {
- // break;
- // }
- // }
-
- // while (true) {
- // t1.startTransaction();
- // t1.addKV(iKeyB, iValueB);
- // if (t1.commitTransactionLocal()) {
- // break;
- // }
- // }
-
- // while (true) {
- // t2.startTransaction();
- // t2.addKV(iKeyC, iValueC);
- // if (t2.commitTransactionLocal()) {
- // break;
- // }
- // }
-
- // while (true) {
- // t2.startTransaction();
- // t2.addKV(iKeyD, iValueD);
- // if (t2.commitTransactionLocal()) {
- // break;
- // }
- // }
- // }
- // endTime = System.currentTimeMillis();
- // System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- // System.out.println("Time Taken Per Update: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
- // System.out.println();
-
-
- // System.out.println("Checking Key-Values...");
- // for (int i = 0; i < NUMBER_OF_TESTS; i++) {
-
- // String keyA = "a" + i;
- // String keyB = "b" + i;
- // String keyC = "c" + i;
- // String keyD = "d" + i;
- // String valueA = "a" + i;
- // String valueB = "b" + i;
- // String valueC = "c" + i;
- // String valueD = "d" + i;
-
- // IoTString iKeyA = new IoTString(keyA);
- // IoTString iKeyB = new IoTString(keyB);
- // IoTString iKeyC = new IoTString(keyC);
- // IoTString iKeyD = new IoTString(keyD);
- // IoTString iValueA = new IoTString(valueA);
- // IoTString iValueB = new IoTString(valueB);
- // IoTString iValueC = new IoTString(valueC);
- // IoTString iValueD = new IoTString(valueD);
-
-
- // IoTString testValA1 = t1.getCommitted(iKeyA);
- // IoTString testValB1 = t1.getCommitted(iKeyB);
- // IoTString testValC1 = t1.getCommitted(iKeyC);
- // IoTString testValD1 = t1.getCommitted(iKeyD);
-
- // IoTString testValA2 = t2.getCommitted(iKeyA);
- // IoTString testValB2 = t2.getCommitted(iKeyB);
- // IoTString testValC2 = t2.getCommitted(iKeyC);
- // IoTString testValD2 = t2.getCommitted(iKeyD);
-
- // if ((testValA1 == null) || (testValA1.equals(iValueA) == false)) {
- // System.out.println("Key-Value t1 incorrect: " + keyA);
- // foundError = true;
- // }
-
- // if ((testValB1 == null) || (testValB1.equals(iValueB) == false)) {
- // System.out.println("Key-Value t1 incorrect: " + keyB);
- // foundError = true;
- // }
-
- // if ((testValC1 == null) || (testValC1.equals(iValueC) == false)) {
- // System.out.println("Key-Value t1 incorrect: " + keyC);
- // foundError = true;
- // }
-
- // if ((testValD1 == null) || (testValD1.equals(iValueD) == false)) {
- // System.out.println("Key-Value t1 incorrect: " + keyD);
- // foundError = true;
- // }
-
-
- // if ((testValA2 == null) || (testValA2.equals(iValueA) == false)) {
- // System.out.println("Key-Value t2 incorrect: " + keyA + " " + testValA2);
- // foundError = true;
- // }
-
- // if ((testValB2 == null) || (testValB2.equals(iValueB) == false)) {
- // System.out.println("Key-Value t2 incorrect: " + keyB + " " + testValB2);
- // foundError = true;
- // }
-
- // if ((testValC2 == null) || (testValC2.equals(iValueC) == false)) {
- // System.out.println("Key-Value t2 incorrect: " + keyC + " " + testValC2);
- // foundError = true;
- // }
-
- // if ((testValD2 == null) || (testValD2.equals(iValueD) == false)) {
- // System.out.println("Key-Value t2 incorrect: " + keyD + " " + testValD2);
- // foundError = true;
- // }
- // }
-
-
- // // System.out.println("Updating Clients...");
- // // t1.update();
- // // t2.update();
- // // t1.update();
- // // t2.update();
-
-
-
- // // System.out.println("Checking Key-Values...");
- // // for (int i = 0; i < NUMBER_OF_TESTS; i++) {
-
- // // String keyA = "a" + i;
- // // String keyB = "b" + i;
- // // String keyC = "c" + i;
- // // String keyD = "d" + i;
- // // String valueA = "a" + i;
- // // String valueB = "b" + i;
- // // String valueC = "c" + i;
- // // String valueD = "d" + i;
-
- // // IoTString iKeyA = new IoTString(keyA);
- // // IoTString iKeyB = new IoTString(keyB);
- // // IoTString iKeyC = new IoTString(keyC);
- // // IoTString iKeyD = new IoTString(keyD);
- // // IoTString iValueA = new IoTString(valueA);
- // // IoTString iValueB = new IoTString(valueB);
- // // IoTString iValueC = new IoTString(valueC);
- // // IoTString iValueD = new IoTString(valueD);
-
-
- // // IoTString testValA1 = t1.getCommitted(iKeyA);
- // // IoTString testValB1 = t1.getCommitted(iKeyB);
- // // IoTString testValC1 = t1.getCommitted(iKeyC);
- // // IoTString testValD1 = t1.getCommitted(iKeyD);
-
- // // IoTString testValA2 = t2.getCommitted(iKeyA);
- // // IoTString testValB2 = t2.getCommitted(iKeyB);
- // // IoTString testValC2 = t2.getCommitted(iKeyC);
- // // IoTString testValD2 = t2.getCommitted(iKeyD);
-
- // // if ((testValA1 == null) || (testValA1.equals(iValueA) == false)) {
- // // System.out.println("Key-Value t1 incorrect: " + keyA);
- // // foundError = true;
- // // }
-
- // // if ((testValB1 == null) || (testValB1.equals(iValueB) == false)) {
- // // System.out.println("Key-Value t1 incorrect: " + keyB);
- // // foundError = true;
- // // }
-
- // // if ((testValC1 == null) || (testValC1.equals(iValueC) == false)) {
- // // System.out.println("Key-Value t1 incorrect: " + keyC);
- // // foundError = true;
- // // }
-
- // // if ((testValD1 == null) || (testValD1.equals(iValueD) == false)) {
- // // System.out.println("Key-Value t1 incorrect: " + keyD);
- // // foundError = true;
- // // }
-
-
- // // if ((testValA2 == null) || (testValA2.equals(iValueA) == false)) {
- // // System.out.println("Key-Value t2 incorrect: " + keyA + " " + testValA2);
- // // foundError = true;
- // // }
-
- // // if ((testValB2 == null) || (testValB2.equals(iValueB) == false)) {
- // // System.out.println("Key-Value t2 incorrect: " + keyB + " " + testValB2);
- // // foundError = true;
- // // }
-
- // // if ((testValC2 == null) || (testValC2.equals(iValueC) == false)) {
- // // System.out.println("Key-Value t2 incorrect: " + keyC + " " + testValC2);
- // // foundError = true;
- // // }
-
- // // if ((testValD2 == null) || (testValD2.equals(iValueD) == false)) {
- // // System.out.println("Key-Value t2 incorrect: " + keyD + " " + testValD2);
- // // foundError = true;
- // // }
- // // }
-
-
- // if (foundError) {
- // System.out.println("Found Errors...");
- // } else {
- // System.out.println("No Errors Found...");
- // }
-
-
- // System.out.println();
- // System.out.println();
- // System.out.println();
- // t1.printSlots();
- // System.out.println();
- // System.out.println();
- // t2.printSlots();
- // }
-
- static void test9() {
+ static void test11() {
boolean foundError = false;
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
-
while (true) {
try {
t1.initTable();
}
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
+ while (t2.update().getFirst() == false) {}
+
+ LocalComm lc = new LocalComm(t1, t2);
+ t1.addLocalComm(t2.getId(), lc);
+ t2.addLocalComm(t1.getId(), lc);
+
+ // Make the Keys
+ System.out.println("Setting up keys");
+ for (int i = 0; i < 4; i++) {
+ String a = "a" + i;
+ String b = "b" + i;
+ String c = "c" + i;
+ String d = "d" + i;
+ IoTString ia = new IoTString(a);
+ IoTString ib = new IoTString(b);
+ IoTString ic = new IoTString(c);
+ IoTString id = new IoTString(d);
+ while (true) {
+ try {
+ t1.createNewKey(ia, 321);
+ break;
+ } catch (Exception e) {}
+ }
+
+ while (true) {
+ try {
+ t1.createNewKey(ib, 351);
+ break;
+ } catch (Exception e) {}
+ }
+
+ while (true) {
+ try {
+ t2.createNewKey(ic, 321);
+ break;
+ } catch (Exception e) {}
+ }
+
+ while (true) {
+ try {
+ t2.createNewKey(id, 351);
+ break;
+ } catch (Exception e) {}
+ }
+ }
+
+ // Do Updates for the keys
+ System.out.println("Setting Key-Values...");
+ for (int t = 0; t < NUMBER_OF_TESTS; t++) {
+ for (int i = 0; i < 4; i++) {
+ String keyA = "a" + i;
+ String valueA = "a" + (i + t);
+
+ IoTString iKeyA = new IoTString(keyA);
+ IoTString iValueA = new IoTString(valueA);
+
+ t1.startTransaction();
+ t1.addKV(iKeyA, iValueA);
+ t1.commitTransaction();
+ }
+ }
+
+ t2.updateFromLocal(321);
+ System.out.println("Checking Key-Values...");
+ for (int i = 0; i < 4; i++) {
+
+ String keyA = "a" + i;
+ String valueA = "a" + (i + NUMBER_OF_TESTS - 1);
+
+ IoTString iKeyA = new IoTString(keyA);
+ IoTString iValueA = new IoTString(valueA);
+
+ IoTString testValA1 = t1.getCommitted(iKeyA);
+ IoTString testValA2 = t2.getCommitted(iKeyA);
+
+ if ((testValA1 == null) || (testValA1.equals(iValueA) == false)) {
+ System.out.println("Key-Value t1 incorrect: " + keyA + " " + testValA1 + " " + iValueA);
+ foundError = true;
+ }
+
+ if ((testValA2 == null) || (testValA2.equals(iValueA) == false)) {
+ System.out.println("Key-Value t2 incorrect: " + keyA + " " + testValA2 + " " + iValueA);
+ foundError = true;
+ }
+ }
+
+ if (foundError) {
+ System.out.println("Found Errors...");
+ } else {
+ System.out.println("No Errors Found...");
+ }
+ }
+
+ static void test10() {
+
+ boolean foundError = false;
+
+ // Setup the 2 clients
+ Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
while (true) {
try {
- t2.update();
+ t1.rebuild();
break;
} catch (Exception e) {}
}
+ Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
+ while (true) {
+ try {
+ t2.rebuild();
+ break;
+ } catch (Exception e) {}
+ }
+
+ LocalComm lc = new LocalComm(t1, t2);
+ t1.addLocalComm(t2.getId(), lc);
+ t2.addLocalComm(t1.getId(), lc);
+
+
+ System.out.println("Checking Key-Values...");
+ for (int i = 0; i < 4; i++) {
+
+ String keyA = "a" + i;
+ String keyB = "b" + i;
+ String keyC = "c" + i;
+ String keyD = "d" + i;
+ String valueA = "a" + (i + NUMBER_OF_TESTS - 1);
+ String valueB = "b" + (i + NUMBER_OF_TESTS - 1);
+ String valueC = "c" + (i + NUMBER_OF_TESTS - 1);
+ String valueD = "d" + (i + NUMBER_OF_TESTS - 1);
+
+ IoTString iKeyA = new IoTString(keyA);
+ IoTString iKeyB = new IoTString(keyB);
+ IoTString iKeyC = new IoTString(keyC);
+ IoTString iKeyD = new IoTString(keyD);
+ IoTString iValueA = new IoTString(valueA);
+ IoTString iValueB = new IoTString(valueB);
+ IoTString iValueC = new IoTString(valueC);
+ IoTString iValueD = new IoTString(valueD);
+
+
+ IoTString testValA1 = t1.getCommitted(iKeyA);
+ IoTString testValB1 = t1.getCommitted(iKeyB);
+ IoTString testValC1 = t1.getCommitted(iKeyC);
+ IoTString testValD1 = t1.getCommitted(iKeyD);
+
+ IoTString testValA2 = t2.getCommitted(iKeyA);
+ IoTString testValB2 = t2.getCommitted(iKeyB);
+ IoTString testValC2 = t2.getCommitted(iKeyC);
+ IoTString testValD2 = t2.getCommitted(iKeyD);
+
+ if ((testValA1 == null) || (testValA1.equals(iValueA) == false)) {
+ System.out.println("Key-Value t1 incorrect: " + keyA + " " + testValA1 + " " + iValueA);
+ foundError = true;
+ }
+
+ if ((testValB1 == null) || (testValB1.equals(iValueB) == false)) {
+ System.out.println("Key-Value t1 incorrect: " + keyB + " " + testValB1 + " " + iValueB);
+ foundError = true;
+ }
+
+ if ((testValC1 == null) || (testValC1.equals(iValueC) == false)) {
+ System.out.println("Key-Value t1 incorrect: " + keyC + " " + testValC1 + " " + iValueC);
+ foundError = true;
+ }
+
+ if ((testValD1 == null) || (testValD1.equals(iValueD) == false)) {
+ System.out.println("Key-Value t1 incorrect: " + keyD + " " + testValD1 + " " + iValueD);
+ foundError = true;
+ }
+
+ if ((testValA2 == null) || (testValA2.equals(iValueA) == false)) {
+ System.out.println("Key-Value t2 incorrect: " + keyA + " " + testValA2 + " " + iValueA);
+ foundError = true;
+ }
+
+ if ((testValB2 == null) || (testValB2.equals(iValueB) == false)) {
+ System.out.println("Key-Value t2 incorrect: " + keyB + " " + testValB2 + " " + iValueB);
+ foundError = true;
+ }
+
+ if ((testValC2 == null) || (testValC2.equals(iValueC) == false)) {
+ System.out.println("Key-Value t2 incorrect: " + keyC + " " + testValC2 + " " + iValueC);
+ foundError = true;
+ }
+
+ if ((testValD2 == null) || (testValD2.equals(iValueD) == false)) {
+ System.out.println("Key-Value t2 incorrect: " + keyD + " " + testValD2 + " " + iValueD);
+ foundError = true;
+ }
+ }
+
+ if (foundError) {
+ System.out.println("Found Errors...");
+ } else {
+ System.out.println("No Errors Found...");
+ }
+ }
+
+ static void test9() {
+
+ boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
+
+ // Setup the 2 clients
+ Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
+ while (true) {
+ try {
+ t1.initTable();
+ break;
+ } catch (Exception e) {}
+ }
+
+ Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
+ while (t2.update().getFirst() == false) {}
+
+ // LocalComm lc = new LocalComm(t1, t2);
+ // t1.addLocalComm(t2.getId(), lc);
+ // t2.addLocalComm(t1.getId(), lc);
+
+
+
// Make the Keys
System.out.println("Setting up keys");
for (int i = 0; i < 4; i++) {
// Do Updates for the keys
System.out.println("Setting Key-Values...");
- System.out.println("Setting b...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyB = "b" + i;
IoTString iKeyB = new IoTString(keyB);
IoTString iValueB = new IoTString(valueB);
- try {
- t1.startTransaction();
- t1.getSpeculativeAtomic(iKeyB);
- t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
- System.out.println("Server Success");
- } catch (Exception e) {
- System.out.println("Server Fail");
- }
+ t1.startTransaction();
+ t1.getSpeculativeAtomic(iKeyB);
+ t1.addKV(iKeyB, iValueB);
+ transStatusList.add(t1.commitTransaction());
}
}
- System.out.println("Checking b");
+ while (t1.update().getFirst() == false) {}
+
+
for (int i = 0; i < 4; i++) {
String keyB = "b" + i;
}
}
- System.out.println("Setting c...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyC = "c" + i;
IoTString iKeyC = new IoTString(keyC);
IoTString iValueC = new IoTString(valueC);
- try {
- t2.startTransaction();
- t2.getSpeculativeAtomic(iKeyC);
- t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
- System.out.println("Server Success");
- } catch (Exception e) {
- System.out.println("Server Fail");
- }
-
+ t2.startTransaction();
+ t2.getSpeculativeAtomic(iKeyC);
+ t2.addKV(iKeyC, iValueC);
+ transStatusList.add(t2.commitTransaction());
}
}
- System.out.println("Checking c");
+ while (t2.update().getFirst() == false) {}
+
for (int i = 0; i < 4; i++) {
String keyC = "c" + i;
String valueC = "c" + (i + NUMBER_OF_TESTS - 1);
}
}
- System.out.println("Setting a and b...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyA = "a" + i;
IoTString iValueA = new IoTString(valueA);
IoTString iValueD = new IoTString(valueD);
- try {
- t1.startTransaction();
- t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
- System.out.println("Server Success");
-
- } catch (Exception e) {
- System.out.println("Server Fail");
- }
- try {
- t2.startTransaction();
- t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
- System.out.println("Server Success");
-
- } catch (Exception e) {
- System.out.println("Server Fail");
- }
+ t1.startTransaction();
+ t1.addKV(iKeyA, iValueA);
+ transStatusList.add(t1.commitTransaction());
+ t2.startTransaction();
+ t2.addKV(iKeyD, iValueD);
+ transStatusList.add(t2.commitTransaction());
}
}
System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
- System.out.println("Updating Clients...");
-
- try {
- Thread.sleep(3000);
- } catch (Exception e) {
-
- }
-
- System.out.println("Updating Clients... T1 first");
- while (true) {
- try {
- t1.update();
- break;
- } catch (Exception e) {
- e.printStackTrace();
- System.out.println("Fail");
- }
- }
-
- System.out.println("Updating Clients... T2 first");
- while (true) {
- try {
- t2.update();
- break;
- } catch (Exception e) {
- System.out.println("Fail");
- }
- }
-
- System.out.println("Updating Clients... T1 second");
- while (true) {
- try {
- t1.update();
- break;
- } catch (Exception e) {
- System.out.println("Fail");
- }
- }
-
- System.out.println("Updating Clients... T2 second");
- while (true) {
- try {
- t2.update();
- break;
- } catch (Exception e) {
- System.out.println("Fail");
- }
- }
+ while (t1.update().getFirst() == false) {}
+ while (t2.update().getFirst() == false) {}
System.out.println("Checking Key-Values...");
for (int i = 0; i < 4; i++) {
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ System.out.println(status.getStatus());
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
}
static void test8() {
- boolean foundError = false;
+ boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
}
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
- while (true) {
- try {
- t2.update();
- break;
- } catch (Exception e) {}
- }
+ while (t2.update().getFirst() == false) {}
+
+ LocalComm lc = new LocalComm(t1, t2);
+ t1.addLocalComm(t2.getId(), lc);
+ t2.addLocalComm(t1.getId(), lc);
// Make the Keys
System.out.println("Setting up keys");
IoTString iValueCPrev = new IoTString(valueCPrev);
IoTString iValueDPrev = new IoTString(valueDPrev);
- try {
- t1.startTransaction();
- if (i != 0) {
- IoTString tmp = t1.getSpeculative(iKeyAPrev);
- if ((tmp == null) || !tmp.equals(iValueAPrev)) {
- System.out.println("Key a Error: " + i);
- foundError = true;
- }
+ t1.startTransaction();
+ if (i != 0) {
+ IoTString tmp = t1.getSpeculative(iKeyAPrev);
+ if ((tmp == null) || !tmp.equals(iValueAPrev)) {
+ System.out.println("Key a Error: " + i);
+ foundError = true;
}
- t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
- } catch (Exception e) {
- System.out.println("Connection Failure!");
}
+ t1.addKV(iKeyA, iValueA);
+ transStatusList.add(t1.commitTransaction());
- try {
- t1.startTransaction();
- if (i != 0) {
- IoTString tmp = t1.getSpeculative(iKeyBPrev);
- if ((tmp == null) || !tmp.equals(iValueBPrev)) {
- System.out.println("Key b Error: " + i);
- foundError = true;
- }
- }
- t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
- } catch (Exception e) {
- System.out.println("Connection Failure!");
- }
- try {
- t2.startTransaction();
- if (i != 0) {
- IoTString tmp = t2.getSpeculative(iKeyCPrev);
- if ((tmp == null) || !tmp.equals(iValueCPrev)) {
- System.out.println("Key c Error: " + i);
- foundError = true;
- }
- }
- t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
- } catch (Exception e) {
- System.out.println("Connection Failure!");
- }
- try {
- t2.startTransaction();
- if (i != 0) {
- IoTString tmp = t2.getSpeculative(iKeyDPrev);
- if ((tmp == null) || !tmp.equals(iValueDPrev)) {
- System.out.println("Key d Error: " + i);
- foundError = true;
- }
+ t1.startTransaction();
+ if (i != 0) {
+ IoTString tmp = t1.getSpeculative(iKeyBPrev);
+ if ((tmp == null) || !tmp.equals(iValueBPrev)) {
+ System.out.println("Key b Error: " + i);
+ foundError = true;
}
- t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
- } catch (Exception e) {
- System.out.println("Connection Failure!");
- }
- }
-
- while (true) {
- try {
- t1.update();
- break;
- } catch (Exception e) {
-
}
- }
+ t1.addKV(iKeyB, iValueB);
+ transStatusList.add(t1.commitTransaction());
- while (true) {
- try {
- t2.update();
- break;
- } catch (Exception e) {
+ t2.startTransaction();
+ if (i != 0) {
+ IoTString tmp = t2.getSpeculative(iKeyCPrev);
+ if ((tmp == null) || !tmp.equals(iValueCPrev)) {
+ System.out.println("Key c Error: " + i);
+ foundError = true;
+ }
}
- }
-
- while (true) {
- try {
- t1.update();
- break;
- } catch (Exception e) {
+ t2.addKV(iKeyC, iValueC);
+ transStatusList.add(t2.commitTransaction());
+ t2.startTransaction();
+ if (i != 0) {
+ IoTString tmp = t2.getSpeculative(iKeyDPrev);
+ if ((tmp == null) || !tmp.equals(iValueDPrev)) {
+ System.out.println("Key d Error: " + i);
+ foundError = true;
+ }
}
+ t2.addKV(iKeyD, iValueD);
+ transStatusList.add(t2.commitTransaction());
}
- while (true) {
- try {
- t2.update();
- break;
- } catch (Exception e) {
- }
- }
+ System.out.println("Updating...");
+ while (t1.update().getFirst() == false) {}
+ while (t2.update().getFirst() == false) {}
System.out.println("Checking Key-Values...");
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
if (foundError) {
System.out.println("Found Errors...");
} else {
static void test7() throws ServerException {
- long startTime = 0;
- long endTime = 0;
boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
t2.update();
- startTime = System.currentTimeMillis();
// Make the Keys
System.out.println("Setting up keys");
for (int i = 0; i < 4; i++) {
t2.createNewKey(ic, 321);
t2.createNewKey(id, 351);
}
- endTime = System.currentTimeMillis();
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (4)) );
- System.out.println();
// Do Updates for the keys
System.out.println("Setting Key-Values...");
- startTime = System.currentTimeMillis();
- System.out.println("Setting b...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyB = "b" + i;
t1.startTransaction();
t1.getSpeculativeAtomic(iKeyB);
t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
}
}
- endTime = System.currentTimeMillis();
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (4 * NUMBER_OF_TESTS)) );
- System.out.println();
-
-
- System.out.println("Checking b");
for (int i = 0; i < 4; i++) {
String keyB = "b" + i;
}
}
- startTime = System.currentTimeMillis();
- System.out.println("Setting c...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyC = "c" + i;
t2.startTransaction();
t2.getSpeculativeAtomic(iKeyC);
t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
}
- endTime = System.currentTimeMillis();
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (4 * NUMBER_OF_TESTS)) );
- System.out.println();
-
- System.out.println("Checking c");
for (int i = 0; i < 4; i++) {
String keyC = "c" + i;
String valueC = "c" + (i + NUMBER_OF_TESTS - 1);
}
}
- System.out.println("Setting a and b...");
for (int t = 0; t < NUMBER_OF_TESTS; t++) {
for (int i = 0; i < 4; i++) {
String keyA = "a" + i;
t1.startTransaction();
t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t2.startTransaction();
t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
}
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
}
}
- static void test6() throws ServerException {
- long startTime = 0;
- long endTime = 0;
+ static void test6() throws ServerException {
+
+ boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
t2.update();
-
// Make the Keys
System.out.println("Setting up keys");
- startTime = System.currentTimeMillis();
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
String a = "a" + i;
String b = "b" + i;
t2.createNewKey(ic, 321);
t2.createNewKey(id, 351);
}
- endTime = System.currentTimeMillis();
-
-
-
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
- System.out.println();
-
// Do Updates for the keys
System.out.println("Setting Key-Values...");
- startTime = System.currentTimeMillis();
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
String keyA = "a" + i;
String keyB = "b" + i;
t1.startTransaction();
t1.getCommittedAtomic(iKeyA);
t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t1.startTransaction();
t1.getCommittedAtomic(iKeyB);
t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t2.startTransaction();
t2.getCommittedAtomic(iKeyC);
t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
t2.startTransaction();
t2.getCommittedAtomic(iKeyD);
t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
- endTime = System.currentTimeMillis();
-
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Update: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
- System.out.println();
-
System.out.println("Updating Clients...");
t1.update();
t2.update();
- t1.update();
- t2.update();
-
- boolean foundError = false;
System.out.println("Checking Key-Values...");
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
System.out.println("No Errors Found...");
}
-
- // System.out.println();
- // System.out.println();
- // System.out.println();
- // t1.printSlots();
- // System.out.println();
- // System.out.println();
- // System.out.println();
- // t2.printSlots();
}
static void test5() throws ServerException {
- long startTime = 0;
- long endTime = 0;
boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
t2.createNewKey(ic, 321);
t2.createNewKey(id, 351);
}
- endTime = System.currentTimeMillis();
-
-
-
- System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
- System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (4)) );
- System.out.println();
-
// Do Updates for the keys
System.out.println("Setting Key-Values...");
t1.startTransaction();
t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
}
}
t2.startTransaction();
t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
}
t1.startTransaction();
t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t2.startTransaction();
t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
}
System.out.println("Updating Clients...");
t1.update();
t2.update();
- t1.update();
- t2.update();
System.out.println("Checking Key-Values...");
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
static void test4() throws ServerException {
+ boolean foundError = false;
long startTime = 0;
long endTime = 0;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
t2.update();
-
// Make the Keys
System.out.println("Setting up keys");
startTime = System.currentTimeMillis();
t2.createNewKey(id, 351);
}
endTime = System.currentTimeMillis();
-
-
-
System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
System.out.println();
t1.startTransaction();
t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t1.startTransaction();
t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t2.startTransaction();
t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
t2.startTransaction();
t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
}
endTime = System.currentTimeMillis();
-
System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
System.out.println("Time Taken Per Update: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 16)) );
System.out.println();
System.out.println("Updating Clients...");
t1.update();
t2.update();
- t1.update();
- t2.update();
- boolean foundError = false;
System.out.println("Checking Key-Values...");
for (int i = 0; i < 4; i++) {
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
long endTime = 0;
boolean foundError = false;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
+
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
t1.initTable();
t2.createNewKey(id, 351);
}
endTime = System.currentTimeMillis();
-
-
-
System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
System.out.println();
t1.startTransaction();
t1.addKV(iKeyB, iValueB);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
}
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
t2.startTransaction();
t2.addKV(iKeyC, iValueC);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
t1.startTransaction();
t1.addKV(iKeyA, iValueA);
- t1.commitTransaction();
+ transStatusList.add(t1.commitTransaction());
t2.startTransaction();
t2.addKV(iKeyD, iValueD);
- t2.commitTransaction();
+ transStatusList.add(t2.commitTransaction());
}
endTime = System.currentTimeMillis();
-
System.out.println("Time Taken: " + (double) ((endTime - startTime) / 1000.0) );
System.out.println("Time Taken Per Update: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
System.out.println();
System.out.println("Updating Clients...");
t1.update();
t2.update();
- t1.update();
- t2.update();
System.out.println("Checking Key-Values...");
}
}
+ for (TransactionStatus status : transStatusList) {
+ if (status.getStatus() != TransactionStatus.StatusCommitted) {
+ foundError = true;
+ }
+ }
+
if (foundError) {
System.out.println("Found Errors...");
} else {
static void test2() throws ServerException {
+ boolean foundError = false;
long startTime = 0;
long endTime = 0;
+ List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Setup the 2 clients
Table t1 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 321);
Table t2 = new Table("127.0.0.1", "http://127.0.0.1/test.iotcloud/", "reallysecret", 351);
t2.update();
- List<TransactionStatus> transStatusList = new ArrayList<TransactionStatus>();
// Make the Keys
System.out.println("Setting up keys");
System.out.println("Time Taken Per Key: " + (double) (((endTime - startTime) / 1000.0) / (NUMBER_OF_TESTS * 4)) );
System.out.println();
-
// Do Updates for the keys
System.out.println("Setting Key-Values...");
startTime = System.currentTimeMillis();
System.out.println("Updating Clients...");
t1.update();
t2.update();
- t1.update();
- t2.update();
- boolean foundError = false;
System.out.println("Checking Key-Values...");
for (int i = 0; i < NUMBER_OF_TESTS; i++) {
} else {
System.out.println("No Errors Found...");
}
-
-
- System.out.println();
- System.out.println();
- System.out.println();
- t1.printSlots();
- System.out.println();
- System.out.println();
- t2.printSlots();
}
}