Document new features in percona-202107 to percona-202109

Description

https://github.com/percona/percona-server/pull/4785

add instant flag
This change will return INSTANT_ADD_COLUMN from myrocks layer to sql layer.
Details:
1. add rocksdb_instant_ddl variables to enable/disable instant ddl for rocksdb globally.
2. add rocksdb_support_instant() to check whether alter statement is can be instant-ddl

Added the support for myrocks tmp table.

  • Generated tmp table index ids from new series which is different from regular tables. This series will always start from 1 again after restart.

  • Added 2 new column families i.e "tmp" and "tmp_system" for storing tmp table tables and tmp tables dict data. These cfs are dropped and recreated again as part of cf_manager::init.

  • Rdb_dict_manager_selector stores all the dict_manager and returns the correct dict_manager according to cf_id.

  • Entire new code is under rocksdb_enable_tmp_table which will be used to turn on/off feature. Added asserts to verify we are not invoking tmp_dict_manager if rocksdb_enable_tmp_table is off. Few exceptions include tmp cf cleanup and reseting cf handler list which should work for regular cases also.

  • Used the tablename passed in ddl commands to select if the give table is tmp table or user table. Then respective cf_id is generated.

New variables:
1. Change default value of "rocksdb_force_flush_memtable_now" from OFF to ON.

2. Add a new variable "rocksdb_instant_ddl":

:dyn: Yes :scope: Global :vartype: Bool :default: OFF Allow instant ddl during alter table.

3. Add a new variable "rocksdb_enable_tmp_table":

:dyn: No :scope: Global :vartype: Bool :default: OFF Allow rocksdb tmp tables.

Environment

None

Smart Checklist

Activity

Show:

alina.derkach June 10, 2022 at 3:21 PM

alina.derkach May 17, 2022 at 2:23 PM

Fix for 8.0.29-21.NEXT

Done

Details

Assignee

Reporter

Affects versions

Priority

Smart Checklist

Created May 17, 2022 at 1:51 PM
Updated March 6, 2024 at 10:09 AM
Resolved August 8, 2022 at 2:52 PM

Flag notifications