Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-25524

If enabled changelog, RocksDB incremental checkpoint would always be full

    XMLWordPrintableJSON

Details

    Description

      Once changelog is enabled, RocksDB incremental checkpoint would only be executed during materialization. During this phase, it will leverage the materization id as the checkpoint id for RocksDB state backend's snapshot method.

      However, current incremental checkpoint mechanism heavily depends on the checkpoint id. And SortedMap<Long, Set<StateHandleID>> uploadedStateIDs with checkpoint id as the key within RocksIncrementalSnapshotStrategy is the kernel for incremental checkpoint. Once we notify checkpoint complete of previous checkpoint, it will then remove the uploaded stateIds of that checkpoint, leading to we cannot get proper checkpoint information on the next RocksDBKeyedStateBackend#snapshot. That is to say, we will always upload all RocksDB artifacts.

      Attachments

        Issue Links

          Activity

            People

              roman Roman Khachatryan
              yunta Yun Tang
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: