synchronized public Value put(Transaction tx, Key key, Value value) throws IOException { assertLoaded(); HashBin<Key,Value> bin = getBin(tx, key); int originalSize = bin.size(); Value result = bin.put(key,value); store(tx, bin); int newSize = bin.size(); if (newSize != originalSize) { metadata.size++; if (newSize == 1) { metadata.binsActive++; } } if (metadata.binsActive >= this.increaseThreshold) { newSize = Math.min(maximumBinCapacity, metadata.binCapacity*2); if(metadata.binCapacity!=newSize) { resize(tx, newSize); } } return result; }
for (Map.Entry<Key, Value> entry : bin.getAll(tx).entrySet()) { HashBin<Key,Value> resizeBin = getBin(tx, entry.getKey(), resizePageId, resizeCapacity); resizeBin.put(entry.getKey(), entry.getValue()); store(tx, resizeBin); if( resizeBin.size() == 1) {
for (Map.Entry<Key, Value> entry : bin.getAll(tx).entrySet()) { HashBin<Key,Value> resizeBin = getBin(tx, entry.getKey(), resizePageId, resizeCapacity); resizeBin.put(entry.getKey(), entry.getValue()); store(tx, resizeBin); if( resizeBin.size() == 1) {
synchronized public Value put(Transaction tx, Key key, Value value) throws IOException { assertLoaded(); HashBin<Key,Value> bin = getBin(tx, key); int originalSize = bin.size(); Value result = bin.put(key,value); store(tx, bin); int newSize = bin.size(); if (newSize != originalSize) { metadata.size++; if (newSize == 1) { metadata.binsActive++; } } if (metadata.binsActive >= this.increaseThreshold) { newSize = Math.min(maximumBinCapacity, metadata.binCapacity*2); if(metadata.binCapacity!=newSize) { resize(tx, newSize); } } return result; }
for (Map.Entry<Key, Value> entry : bin.getAll(tx).entrySet()) { HashBin<Key,Value> resizeBin = getBin(tx, entry.getKey(), resizePageId, resizeCapacity); resizeBin.put(entry.getKey(), entry.getValue()); store(tx, resizeBin); if( resizeBin.size() == 1) {
for (Map.Entry<Key, Value> entry : bin.getAll(tx).entrySet()) { HashBin<Key,Value> resizeBin = getBin(tx, entry.getKey(), resizePageId, resizeCapacity); resizeBin.put(entry.getKey(), entry.getValue()); store(tx, resizeBin); if( resizeBin.size() == 1) {
synchronized public Value put(Transaction tx, Key key, Value value) throws IOException { assertLoaded(); HashBin<Key,Value> bin = getBin(tx, key); int originalSize = bin.size(); Value result = bin.put(key,value); store(tx, bin); int newSize = bin.size(); if (newSize != originalSize) { metadata.size++; if (newSize == 1) { metadata.binsActive++; } } if (metadata.binsActive >= this.increaseThreshold) { newSize = Math.min(maximumBinCapacity, metadata.binCapacity*2); if(metadata.binCapacity!=newSize) { resize(tx, newSize); } } return result; }
synchronized public Value put(Transaction tx, Key key, Value value) throws IOException { assertLoaded(); HashBin<Key,Value> bin = getBin(tx, key); int originalSize = bin.size(); Value result = bin.put(key,value); store(tx, bin); int newSize = bin.size(); if (newSize != originalSize) { metadata.size++; if (newSize == 1) { metadata.binsActive++; } } if (metadata.binsActive >= this.increaseThreshold) { newSize = Math.min(maximumBinCapacity, metadata.binCapacity*2); if(metadata.binCapacity!=newSize) { resize(tx, newSize); } } return result; }