mirror of https://github.com/apache/cassandra
Merge e68897be05 into 8fd77ffea3
This commit is contained in:
commit
6d45f57963
|
|
@ -3056,8 +3056,8 @@ public class DatabaseDescriptor
|
||||||
|
|
||||||
public static void setCompressedReadAheadBufferSizeInKb(int sizeInKb)
|
public static void setCompressedReadAheadBufferSizeInKb(int sizeInKb)
|
||||||
{
|
{
|
||||||
if (sizeInKb < 256)
|
if (sizeInKb < 0 || (sizeInKb > 0 && sizeInKb < 256))
|
||||||
throw new IllegalArgumentException("compressed_read_ahead_buffer_size_in_kb must be at least 256KiB");
|
throw new IllegalArgumentException("compressed_read_ahead_buffer_size_in_kb must be at least 256KiB (set to 0 to disable)");
|
||||||
|
|
||||||
conf.compressed_read_ahead_buffer_size = createIntKibibyteBoundAndEnsureItIsValidForByteConversion(sizeInKb, "compressed_read_ahead_buffer_size");
|
conf.compressed_read_ahead_buffer_size = createIntKibibyteBoundAndEnsureItIsValidForByteConversion(sizeInKb, "compressed_read_ahead_buffer_size");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1212,4 +1212,28 @@ public class DatabaseDescriptorTest
|
||||||
conf.local_system_data_file_directory = savedLocalSystemDir;
|
conf.local_system_data_file_directory = savedLocalSystemDir;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSetCompressedReadAheadBufferSizeInKb()
|
||||||
|
{
|
||||||
|
int original = DatabaseDescriptor.getCompressedReadAheadBufferSizeInKB();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// 0 should be a legal value, and represents disabling read-ahead buffer
|
||||||
|
DatabaseDescriptor.setCompressedReadAheadBufferSizeInKb(0);
|
||||||
|
assertEquals(0, DatabaseDescriptor.getCompressedReadAheadBufferSizeInKB());
|
||||||
|
assertEquals(0, DatabaseDescriptor.getCompressedReadAheadBufferSize());
|
||||||
|
|
||||||
|
Assertions.assertThatThrownBy(() -> DatabaseDescriptor.setCompressedReadAheadBufferSizeInKb(255))
|
||||||
|
.isInstanceOf(IllegalArgumentException.class)
|
||||||
|
.hasMessage("compressed_read_ahead_buffer_size_in_kb must be at least 256KiB (set to 0 to disable)");
|
||||||
|
|
||||||
|
DatabaseDescriptor.setCompressedReadAheadBufferSizeInKb(256);
|
||||||
|
assertEquals(256, DatabaseDescriptor.getCompressedReadAheadBufferSizeInKB());
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
DatabaseDescriptor.setCompressedReadAheadBufferSizeInKb(original);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue