Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-7869

Refactor RocksDBConfigSetter API to separate DBOptions and CFOptions

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Patch Available
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: streams
    • Labels:

      Description

      Current RocksDBConfigSetter has the following API:

      void setConfig(final String storeName, final Options options, final Map<String, Object> configs);
      

      Where `Options` contains configurations for both db-level and cf-level of RocksDB.

      As we move on to have multiple CFs following KIP-258, it's better to refactor it into

      void setConfig(final String storeName, final DBOptions dbOptions, final ColumnFamilyOptions cfOptions, final Map<String, Object> configs);
      

      And then inside the internal implementation, if only the default CF is used, we can still use the other constructor of `Options` that takes both a DBOptions and CFOptions object as parameters.

      This should be started only after KIP-258 is finished.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                dongjin Lee Dongjin
                Reporter:
                guozhang Guozhang Wang
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated: