public class EnvOptions extends RocksObject
nativeHandle_
owningHandle_
Constructor and Description |
---|
EnvOptions()
Construct with default Options
|
EnvOptions(DBOptions dbOptions)
Construct from
DBOptions . |
Modifier and Type | Method and Description |
---|---|
boolean |
allowFallocate()
Determine if fallocate calls are used.
|
long |
bytesPerSync()
Get the number of incremental bytes per sync written in the background.
|
long |
compactionReadaheadSize()
|
protected void |
disposeInternal(long handle) |
boolean |
fallocateWithKeepSize()
Determine if file is preallocated.
|
long |
randomAccessMaxBufferSize()
|
RateLimiter |
rateLimiter()
Get the write rate limiter for flush and compaction.
|
EnvOptions |
setAllowFallocate(boolean allowFallocate)
Enable/Disable fallocate calls.
|
EnvOptions |
setBytesPerSync(long bytesPerSync)
Allows OS to incrementally sync files to disk while they are being
written, in the background.
|
EnvOptions |
setCompactionReadaheadSize(long compactionReadaheadSize)
|
EnvOptions |
setFallocateWithKeepSize(boolean fallocateWithKeepSize)
If true, we will preallocate the file with
FALLOC_FL_KEEP_SIZE
flag, which means that file size won't change as part of preallocation. |
boolean |
setFdCloexec()
Determine i fthe
FD_CLOEXEC bit is set when opening file
descriptors. |
EnvOptions |
setRandomAccessMaxBufferSize(long randomAccessMaxBufferSize)
|
EnvOptions |
setRateLimiter(RateLimiter rateLimiter)
Set the write rate limiter for flush and compaction.
|
EnvOptions |
setSetFdCloexec(boolean setFdCloexec)
Enable/Disable the
FD_CLOEXEC bit when opening file descriptors. |
EnvOptions |
setUseDirectReads(boolean useDirectReads)
Enable/Disable direct reads, i.e.
|
EnvOptions |
setUseDirectWrites(boolean useDirectWrites)
Enable/Disable direct writes, i.e.
|
EnvOptions |
setUseMmapReads(boolean useMmapReads)
Enable/Disable memory mapped reads.
|
EnvOptions |
setUseMmapWrites(boolean useMmapWrites)
Enable/Disable memory mapped Writes.
|
EnvOptions |
setWritableFileMaxBufferSize(long writableFileMaxBufferSize)
|
boolean |
useDirectReads()
Determine if direct reads are in-use.
|
boolean |
useDirectWrites()
Determine if direct writes are in-use.
|
boolean |
useMmapReads()
Determine if memory mapped reads are in-use.
|
boolean |
useMmapWrites()
Determine if memory mapped writes are in-use.
|
long |
writableFileMaxBufferSize()
|
disposeInternal, getNativeHandle
close, disOwnNativeHandle, isOwningHandle
dispose, finalize
public EnvOptions setUseMmapReads(boolean useMmapReads)
useMmapReads
- true to enable memory mapped reads, false to disable.public boolean useMmapReads()
public EnvOptions setUseMmapWrites(boolean useMmapWrites)
useMmapWrites
- true to enable memory mapped writes, false to disable.public boolean useMmapWrites()
public EnvOptions setUseDirectReads(boolean useDirectReads)
O_DIRECT
.
Default: falseuseDirectReads
- true to enable direct reads, false to disable.public boolean useDirectReads()
public EnvOptions setUseDirectWrites(boolean useDirectWrites)
O_DIRECT
.
Default: falseuseDirectWrites
- true to enable direct writes, false to disable.public boolean useDirectWrites()
public EnvOptions setAllowFallocate(boolean allowFallocate)
fallocate()
calls are bypassed.allowFallocate
- true to enable fallocate calls, false to disable.public boolean allowFallocate()
public EnvOptions setSetFdCloexec(boolean setFdCloexec)
FD_CLOEXEC
bit when opening file descriptors.
Default: truesetFdCloexec
- true to enable the FB_CLOEXEC
bit,
false to disable.public boolean setFdCloexec()
FD_CLOEXEC
bit is set when opening file
descriptors.FB_CLOEXEC
bit is enabled, false otherwise.public EnvOptions setBytesPerSync(long bytesPerSync)
bytesPerSync
written.
Default: 0bytesPerSync
- 0 to disable, otherwise the number of bytes.public long bytesPerSync()
public EnvOptions setFallocateWithKeepSize(boolean fallocateWithKeepSize)
FALLOC_FL_KEEP_SIZE
flag, which means that file size won't change as part of preallocation.
If false, preallocation will also change the file size. This option will
improve the performance in workloads where you sync the data on every
write. By default, we set it to true for MANIFEST writes and false for
WAL writesfallocateWithKeepSize
- true to preallocate, false otherwise.public boolean fallocateWithKeepSize()
public EnvOptions setCompactionReadaheadSize(long compactionReadaheadSize)
compactionReadaheadSize
- the compaction read-ahead size.public long compactionReadaheadSize()
public EnvOptions setRandomAccessMaxBufferSize(long randomAccessMaxBufferSize)
randomAccessMaxBufferSize
- the max buffer size for random access.public long randomAccessMaxBufferSize()
public EnvOptions setWritableFileMaxBufferSize(long writableFileMaxBufferSize)
writableFileMaxBufferSize
- the max buffer size.public long writableFileMaxBufferSize()
public EnvOptions setRateLimiter(RateLimiter rateLimiter)
rateLimiter
- the rate limiter.public RateLimiter rateLimiter()
protected final void disposeInternal(long handle)
disposeInternal
in class RocksObject