[ https://issues.apache.org/jira/browse/FLINK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17173320#comment-17173320 ]
Yun Tang commented on FLINK-7289: --------------------------------- [~itsharshonly], you could call [DBOptions#setUseDirectReads|https://github.com/facebook/rocksdb/blob/56f468b356563a65f6e0c89a25626f5f13eb4f4c/java/src/main/java/org/rocksdb/DBOptions.java#L618] and [DBOptions#setUseDirectIoForFlushAndCompaction|https://github.com/facebook/rocksdb/blob/56f468b356563a65f6e0c89a25626f5f13eb4f4c/java/src/main/java/org/rocksdb/DBOptions.java#L632] to enable direct IO. BTW, why you want to enable direct IO under this ticket discussion? > Memory allocation of RocksDB can be problematic in container environments > ------------------------------------------------------------------------- > > Key: FLINK-7289 > URL: https://issues.apache.org/jira/browse/FLINK-7289 > Project: Flink > Issue Type: Improvement > Components: Runtime / State Backends > Affects Versions: 1.2.0, 1.3.0, 1.4.0, 1.7.2, 1.8.2, 1.9.0 > Reporter: Stefan Richter > Priority: Major > Labels: pull-request-available > Fix For: 1.10.0 > > Attachments: completeRocksdbConfig.txt > > Time Spent: 20m > Remaining Estimate: 0h > > Flink's RocksDB based state backend allocates native memory. The amount of > allocated memory by RocksDB is not under the control of Flink or the JVM and > can (theoretically) grow without limits. > In container environments, this can be problematic because the process can > exceed the memory budget of the container, and the process will get killed. > Currently, there is no other option than trusting RocksDB to be well behaved > and to follow its memory configurations. However, limiting RocksDB's memory > usage is not as easy as setting a single limit parameter. The memory limit is > determined by an interplay of several configuration parameters, which is > almost impossible to get right for users. Even worse, multiple RocksDB > instances can run inside the same process and make reasoning about the > configuration also dependent on the Flink job. > Some information about the memory management in RocksDB can be found here: > https://github.com/facebook/rocksdb/wiki/Memory-usage-in-RocksDB > https://github.com/facebook/rocksdb/wiki/RocksDB-Tuning-Guide > We should try to figure out ways to help users in one or more of the > following ways: > - Some way to autotune or calculate the RocksDB configuration. > - Conservative default values. > - Additional documentation. -- This message was sent by Atlassian Jira (v8.3.4#803005)