@Test public void testDefaultCFCompressor() throws BackendException { final String cf = TEST_CF_NAME + "_snappy"; AbstractCassandraStoreManager mgr = openStorageManager(); mgr.openDatabase(cf); Map<String, String> defaultCfCompressionOps = new ImmutableMap.Builder<String, String>() .put("sstable_compression", DEFAULT_COMPRESSOR_PACKAGE + "." + AbstractCassandraStoreManager.CF_COMPRESSION_TYPE.getDefaultValue()) .put("chunk_length_kb", "64") .build(); assertEquals(defaultCfCompressionOps, mgr.getCompressionOptions(cf)); }
@Test public void testCustomCFCompressor() throws BackendException { final String cname = "DeflateCompressor"; final int ckb = 128; final String cf = TEST_CF_NAME + "_gzip"; ModifiableConfiguration config = getBaseStorageConfiguration(); config.set(AbstractCassandraStoreManager.CF_COMPRESSION_TYPE,cname); config.set(AbstractCassandraStoreManager.CF_COMPRESSION_BLOCK_SIZE,ckb); AbstractCassandraStoreManager mgr = openStorageManager(config); // N.B.: clearStorage() truncates CFs but does not delete them mgr.openDatabase(cf); final Map<String, String> expected = ImmutableMap .<String, String> builder() .put("sstable_compression", DEFAULT_COMPRESSOR_PACKAGE + "." + cname) .put("chunk_length_kb", String.valueOf(ckb)).build(); assertEquals(expected, mgr.getCompressionOptions(cf)); }
@Test public void testDisableCFCompressor() throws BackendException { final String cf = TEST_CF_NAME + "_nocompress"; ModifiableConfiguration config = getBaseStorageConfiguration(); config.set(AbstractCassandraStoreManager.CF_COMPRESSION,false); AbstractCassandraStoreManager mgr = openStorageManager(config); // N.B.: clearStorage() truncates CFs but does not delete them mgr.openDatabase(cf); assertEquals(Collections.emptyMap(), mgr.getCompressionOptions(cf)); }