mirror of
https://github.com/OpenHFT/Chronicle-Map.git
synced 2021-09-13 01:26:12 +00:00
Initial commit for FilePerMap implementation.
This commit is contained in:
@@ -63,9 +63,9 @@ public class FilePerKeyMap<K, V> implements ChronicleMap<K, V> {
|
||||
Path p = dirPath.resolve(fileName);
|
||||
String mapVal = getFileContents(p);
|
||||
if(isProgrammaticUpdate(p.toFile())){
|
||||
System.out.println("Programmatic create to " + mapKey + " : " + mapVal);
|
||||
System.out.println("Programmatic create to " + mapKey);// + " : " + mapVal);
|
||||
}else {
|
||||
System.out.println("created " + mapKey + " : " + mapVal);
|
||||
System.out.println("created " + mapKey);// + " : " + mapVal);
|
||||
}
|
||||
} else if (kind == StandardWatchEventKinds.ENTRY_DELETE) {
|
||||
Path p = dirPath.resolve(fileName);
|
||||
@@ -79,9 +79,9 @@ public class FilePerKeyMap<K, V> implements ChronicleMap<K, V> {
|
||||
Path p = dirPath.resolve(fileName);
|
||||
String mapVal = getFileContents(p);
|
||||
if(isProgrammaticUpdate(p.toFile())){
|
||||
System.out.println("Programmatic update to " + mapKey + " : " + mapVal);
|
||||
System.out.println("Programmatic update to " + mapKey);// + " : " + mapVal);
|
||||
}else {
|
||||
System.out.println("User modified " + mapKey + " : " + mapVal);
|
||||
System.out.println("User modified " + mapKey + " : ");// + mapVal);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,4 +119,32 @@ public class FilePerMapKeyTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void perfTest(){
|
||||
//There are no entries in the map so null should be returned
|
||||
FilePerKeyMap<String, String> map = new FilePerKeyMap<>("/tmp/filepermaptests");
|
||||
|
||||
//just in case it hasn't been cleared up last time
|
||||
map.clear();
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < 2_000_000; i++) {
|
||||
sb.append('x');
|
||||
}
|
||||
String value = sb.toString();
|
||||
|
||||
//warmup
|
||||
for (int i = 0; i < 1000; i++) {
|
||||
map.put("big file", value);
|
||||
}
|
||||
|
||||
|
||||
long time = System.currentTimeMillis();
|
||||
int iterations = 50;
|
||||
for (int i = 0; i < iterations; i++) {
|
||||
map.put("big file", value);
|
||||
}
|
||||
System.out.println("Time to update "+ iterations + " iterations " + (System.currentTimeMillis()-time));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user