[ 
https://issues.apache.org/jira/browse/FLINK-41198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

pia park updated FLINK-41198:
-----------------------------
    Description: 
With incremental checkpoints, only SST files are shared across checkpoints; the 
MANIFEST is uploaded in full every time. Since RocksDB only rolls the MANIFEST 
over at max_manifest_file_size (1 GB by default), the checkpoint size of 
small-state jobs keeps growing until the job is restarted.

In one of our jobs (240 RocksDB instances, 7 days without restart), the 
MANIFEST was ~10.4 MB per instance against ~80 KB of SST files, making up 
almost all of a ~2.3 GB checkpoint. Without a restart, it is only bounded by 
the 1 GB default per MANIFEST, i.e. ~240 GB per checkpoint for this job.

This can currently only be tuned with a custom RocksDBOptionsFactory. This 
ticket proposes a new option, 
{*}state.backend.rocksdb.manifest.max-file-size{*}, with no default value so 
that the current behavior is unchanged.

I'd like to work on this and already have an implementation ready. Could 
someone assign this ticket to me?

 

 

  was:
With incremental checkpoints, only SST files are shared across checkpoints; the 
MANIFEST is uploaded in full every time. Since RocksDB only rolls the MANIFEST 
over at max_manifest_file_size (1 GB by default), the checkpoint size of 
small-state jobs keeps growing until the job is restarted.

In one of our jobs, the MANIFEST made up almost all of the checkpoint size 
after a week without restart (~10 MB vs ~80 KB of SST files per instance).

This can currently only be tuned with a custom RocksDBOptionsFactory. This 
ticket proposes a new option, 
{*}state.backend.rocksdb.manifest.max-file-size{*}, with no default value so 
that the current behavior is unchanged.

 

 


> Add a configurable option for RocksDB max_manifest_file_size
> ------------------------------------------------------------
>
>                 Key: FLINK-41198
>                 URL: https://issues.apache.org/jira/browse/FLINK-41198
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / State Backends
>            Reporter: pia park
>            Priority: Major
>
> With incremental checkpoints, only SST files are shared across checkpoints; 
> the MANIFEST is uploaded in full every time. Since RocksDB only rolls the 
> MANIFEST over at max_manifest_file_size (1 GB by default), the checkpoint 
> size of small-state jobs keeps growing until the job is restarted.
> In one of our jobs (240 RocksDB instances, 7 days without restart), the 
> MANIFEST was ~10.4 MB per instance against ~80 KB of SST files, making up 
> almost all of a ~2.3 GB checkpoint. Without a restart, it is only bounded by 
> the 1 GB default per MANIFEST, i.e. ~240 GB per checkpoint for this job.
> This can currently only be tuned with a custom RocksDBOptionsFactory. This 
> ticket proposes a new option, 
> {*}state.backend.rocksdb.manifest.max-file-size{*}, with no default value so 
> that the current behavior is unchanged.
> I'd like to work on this and already have an implementation ready. Could 
> someone assign this ticket to me?
>  
>  



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to