Integrated review comments by ankgup87
- Added tests - Minor code-style changes
This commit is contained in:
parent
2c1bd8846f
commit
b011e201fa
@ -39,11 +39,13 @@ test: java
|
||||
javac org/rocksdb/test/*.java
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.WriteBatchTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.BackupableDBTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.BlockBasedTableConfigTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.ColumnFamilyTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.FilterTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.KeyMayExistTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.MemTableTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.OptionsTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.PlainTableConfigTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.ReadOnlyTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.MergeTest
|
||||
java -ea -Djava.library.path=.:../ -cp "$(ROCKSDB_JAR):.:./*" org.rocksdb.test.ReadOptionsTest
|
||||
|
@ -14,6 +14,7 @@ public class BlockBasedTableConfig extends TableFormatConfig {
|
||||
public BlockBasedTableConfig() {
|
||||
noBlockCache_ = false;
|
||||
blockCacheSize_ = 8 * 1024 * 1024;
|
||||
blockCacheNumShardBits_ = 0;
|
||||
blockSize_ = 4 * 1024;
|
||||
blockSizeDeviation_ = 10;
|
||||
blockRestartInterval_ = 16;
|
||||
@ -22,6 +23,7 @@ public class BlockBasedTableConfig extends TableFormatConfig {
|
||||
cacheIndexAndFilterBlocks_ = false;
|
||||
hashIndexAllowCollision_ = true;
|
||||
blockCacheCompressedSize_ = 0;
|
||||
blockCacheCompressedNumShardBits_ = 0;
|
||||
checksumType_ = ChecksumType.kCRC32c;
|
||||
indexType_ = IndexType.kBinarySearch;
|
||||
}
|
||||
|
@ -16,11 +16,11 @@ public enum ChecksumType {
|
||||
/**
|
||||
* CRC32 Checksum
|
||||
*/
|
||||
kCRC32c((byte)1),
|
||||
kCRC32c((byte) 1),
|
||||
/**
|
||||
* XX Hash
|
||||
*/
|
||||
kxxHash((byte)2);
|
||||
kxxHash((byte) 2);
|
||||
|
||||
private final byte value_;
|
||||
|
||||
|
@ -22,7 +22,7 @@ public enum EncodingType {
|
||||
/**
|
||||
* Always write full keys without any special encoding.
|
||||
*/
|
||||
kPlain((byte)0),
|
||||
kPlain((byte) 0),
|
||||
/**
|
||||
* <p>Find opportunity to write the same prefix once for multiple rows.
|
||||
* In some cases, when a key follows a previous key with the same prefix,
|
||||
@ -36,7 +36,7 @@ public enum EncodingType {
|
||||
* bitwise compared to the prefix extractors stored in the file. An error
|
||||
* will be returned if the two don't match.</p>
|
||||
*/
|
||||
kPrefix((byte)1);
|
||||
kPrefix((byte) 1);
|
||||
|
||||
private final byte value_;
|
||||
|
||||
|
@ -18,7 +18,7 @@ public enum IndexType {
|
||||
* The hash index, if enabled, will do the hash lookup when
|
||||
* {@code Options.prefix_extractor} is provided.
|
||||
*/
|
||||
kHashSearch((byte)1);
|
||||
kHashSearch((byte) 1);
|
||||
|
||||
private final byte value_;
|
||||
|
||||
|
@ -131,11 +131,11 @@ public class PlainTableConfig extends TableFormatConfig {
|
||||
*
|
||||
* <p>See linux doc Documentation/vm/hugetlbpage.txt</p>
|
||||
*
|
||||
* @param hugePageTlbSize_
|
||||
* @param hugePageTlbSize
|
||||
* @return the reference to the current config.
|
||||
*/
|
||||
public PlainTableConfig setHugePageTlbSize_(int hugePageTlbSize_) {
|
||||
this.hugePageTlbSize_ = hugePageTlbSize_;
|
||||
public PlainTableConfig setHugePageTlbSize(int hugePageTlbSize) {
|
||||
this.hugePageTlbSize_ = hugePageTlbSize;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
64
java/org/rocksdb/test/BlockBasedTableConfigTest.java
Normal file
64
java/org/rocksdb/test/BlockBasedTableConfigTest.java
Normal file
@ -0,0 +1,64 @@
|
||||
// Copyright (c) 2014, Facebook, Inc. All rights reserved.
|
||||
// This source code is licensed under the BSD-style license found in the
|
||||
// LICENSE file in the root directory of this source tree. An additional grant
|
||||
// of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
package org.rocksdb.test;
|
||||
|
||||
import org.rocksdb.BlockBasedTableConfig;
|
||||
import org.rocksdb.ChecksumType;
|
||||
import org.rocksdb.IndexType;
|
||||
|
||||
public class BlockBasedTableConfigTest {
|
||||
|
||||
public static void main(String[] args) {
|
||||
BlockBasedTableConfig blockBasedTableConfig =
|
||||
new BlockBasedTableConfig();
|
||||
assert(!blockBasedTableConfig.noBlockCache());
|
||||
blockBasedTableConfig.setNoBlockCache(true);
|
||||
assert(blockBasedTableConfig.noBlockCache());
|
||||
assert(blockBasedTableConfig.blockCacheSize() == (8*1024*1024));
|
||||
blockBasedTableConfig.setBlockCacheSize(8*1024);
|
||||
assert(blockBasedTableConfig.blockCacheSize() == (8*1024));
|
||||
assert(blockBasedTableConfig.blockSizeDeviation() == 10);
|
||||
blockBasedTableConfig.setBlockSizeDeviation(12);
|
||||
assert(blockBasedTableConfig.blockSizeDeviation() == 12);
|
||||
assert(blockBasedTableConfig.blockRestartInterval() == 16);
|
||||
blockBasedTableConfig.setBlockRestartInterval(15);
|
||||
assert(blockBasedTableConfig.blockRestartInterval() == 15);
|
||||
assert(blockBasedTableConfig.wholeKeyFiltering());
|
||||
blockBasedTableConfig.setWholeKeyFiltering(false);
|
||||
assert(!blockBasedTableConfig.wholeKeyFiltering());
|
||||
assert(!blockBasedTableConfig.cacheIndexAndFilterBlocks());
|
||||
blockBasedTableConfig.setCacheIndexAndFilterBlocks(true);
|
||||
assert(blockBasedTableConfig.cacheIndexAndFilterBlocks());
|
||||
assert(blockBasedTableConfig.hashIndexAllowCollision());
|
||||
blockBasedTableConfig.setHashIndexAllowCollision(false);
|
||||
assert(!blockBasedTableConfig.hashIndexAllowCollision());
|
||||
assert(blockBasedTableConfig.blockCacheCompressedSize() == 0);
|
||||
blockBasedTableConfig.setBlockCacheCompressedSize(40);
|
||||
assert(blockBasedTableConfig.blockCacheCompressedSize() == 40);
|
||||
assert(blockBasedTableConfig.checksumType().equals(
|
||||
ChecksumType.kCRC32c));
|
||||
blockBasedTableConfig.setChecksumType(ChecksumType.kNoChecksum);
|
||||
assert(blockBasedTableConfig.checksumType().equals(
|
||||
ChecksumType.kNoChecksum));
|
||||
blockBasedTableConfig.setChecksumType(ChecksumType.kxxHash);
|
||||
assert(blockBasedTableConfig.checksumType().equals(
|
||||
ChecksumType.kxxHash));
|
||||
assert(blockBasedTableConfig.indexType().equals(
|
||||
IndexType.kBinarySearch));
|
||||
blockBasedTableConfig.setIndexType(IndexType.kHashSearch);
|
||||
assert(blockBasedTableConfig.indexType().equals(
|
||||
IndexType.kHashSearch));
|
||||
assert(blockBasedTableConfig.blockCacheCompressedNumShardBits()
|
||||
== 0);
|
||||
blockBasedTableConfig.setBlockCacheCompressedNumShardBits(4);
|
||||
assert(blockBasedTableConfig.blockCacheCompressedNumShardBits()
|
||||
== 4);
|
||||
assert(blockBasedTableConfig.cacheNumShardBits() == 0);
|
||||
blockBasedTableConfig.setCacheNumShardBits(5);
|
||||
assert(blockBasedTableConfig.cacheNumShardBits() == 5);
|
||||
System.out.println("BlockBasedTableConfig test passed");
|
||||
}
|
||||
}
|
43
java/org/rocksdb/test/PlainTableConfigTest.java
Normal file
43
java/org/rocksdb/test/PlainTableConfigTest.java
Normal file
@ -0,0 +1,43 @@
|
||||
// Copyright (c) 2014, Facebook, Inc. All rights reserved.
|
||||
// This source code is licensed under the BSD-style license found in the
|
||||
// LICENSE file in the root directory of this source tree. An additional grant
|
||||
// of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
package org.rocksdb.test;
|
||||
|
||||
import org.rocksdb.EncodingType;
|
||||
import org.rocksdb.PlainTableConfig;
|
||||
|
||||
public class PlainTableConfigTest {
|
||||
|
||||
public static void main(String[] args) {
|
||||
PlainTableConfig plainTableConfig = new PlainTableConfig();
|
||||
assert(plainTableConfig.keySize() == 0);
|
||||
plainTableConfig.setKeySize(5);
|
||||
assert(plainTableConfig.keySize() == 5);
|
||||
assert(plainTableConfig.bloomBitsPerKey() == 10);
|
||||
plainTableConfig.setBloomBitsPerKey(11);
|
||||
assert(plainTableConfig.bloomBitsPerKey() == 11);
|
||||
assert(plainTableConfig.hashTableRatio() == 0.75);
|
||||
plainTableConfig.setHashTableRatio(0.95);
|
||||
assert(plainTableConfig.hashTableRatio() == 0.95);
|
||||
assert(plainTableConfig.indexSparseness() == 16);
|
||||
plainTableConfig.setIndexSparseness(18);
|
||||
assert(plainTableConfig.indexSparseness() == 18);
|
||||
assert(plainTableConfig.hugePageTlbSize() == 0);
|
||||
plainTableConfig.setHugePageTlbSize(1);
|
||||
assert(plainTableConfig.hugePageTlbSize() == 1);
|
||||
assert(plainTableConfig.encodingType().equals(
|
||||
EncodingType.kPlain));
|
||||
plainTableConfig.setEncodingType(EncodingType.kPrefix);
|
||||
assert(plainTableConfig.encodingType().equals(
|
||||
EncodingType.kPrefix));
|
||||
assert(!plainTableConfig.fullScanMode());
|
||||
plainTableConfig.setFullScanMode(true);
|
||||
assert(plainTableConfig.fullScanMode());
|
||||
assert(!plainTableConfig.storeIndexInFile());
|
||||
plainTableConfig.setStoreIndexInFile(true);
|
||||
assert(plainTableConfig.storeIndexInFile());
|
||||
System.out.println("PlainTableConfig test passed");
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user