Description
OceanBase Lite/seekdb no longer provides external CDC/obcdc capability. The current CDC-specific Data Dictionary was used to periodically persist tenant schema and log stream metadata to SYS_LS for offline log parsing by obcdc. This capability is no longer functional in seekdb lite mode: ObDataDictService does not start, ObDataDictStorage::prepare_buf_ consistently returns OB_STATE_NOT_MATCH, and DDL transactions no longer serialize full incremental schema.
The existing related code, configurations, system tables, and tests are primarily for upstream compatibility or are historical legacy. They should be completely cleaned up to reduce maintenance and compilation costs.
Proposed Solution
- Delete CDC-specific data dictionary generation, serialization, persistence, query, and parsing logic under
src/logservice/data_dictionary, along with corresponding build dependencies.
- Delete the registration, initialization, interfaces, and member dependencies of ObDataDictService.
- Clean up the
dump_data_dictionary_to_log_interval configuration item.
- Clean up internal tables and views that only serve CDC, such as
__all_data_dictionary_in_log and DBA_OB_DATA_DICTIONARY_IN_LOG. If there are upgrade or compatibility constraints, handle them with deprecated placeholder methods and provide explanations.
- Clean up tests and public includes under
datadict and libobcdc directories that only validate this capability.
- Clean up debug sync points, LS get mod, logs, and auxiliary code that have no consumers.
Scope and Boundaries
- Do not delete the general database Schema data dictionary, information_schema, or other system table capabilities.
- Retain the DDL_TRANS MDS marker required for seekdb's internal Change Stream to perceive DDL; it serves internal capabilities like asynchronous indexing and is not part of the CDC Data Dictionary.
- If there are historical log compatibility requirements for
DATA_DICT_LOG_BASE_TYPE = 20, it should be retained as a deprecated/reserved number and must not be reused.
- Before deletion, confirm that backup/restore, log replay, upgrades, and internal Change Stream do not depend on the Data Dictionary payload.
Acceptance Criteria
- The lite/seekdb target can compile and start normally, and no longer initializes or schedules the Data Dictionary service.
- During runtime, DATA_DICT logs are no longer generated for SYS_LS, and data dictionary location records are no longer written.
- DDL_TRANS marking and related functions for internal Change Stream and asynchronous indexing operate normally.
- Related unit tests, mysqltest/obtest, and basic regression tests pass.
- No invalid configurations, system views, module interfaces, or compilation source files remain; any compatibility placeholders that must be retained have clear comments.
Description
OceanBase Lite/seekdb no longer provides external CDC/obcdc capability. The current CDC-specific Data Dictionary was used to periodically persist tenant schema and log stream metadata to SYS_LS for offline log parsing by obcdc. This capability is no longer functional in seekdb lite mode: ObDataDictService does not start, ObDataDictStorage::prepare_buf_ consistently returns OB_STATE_NOT_MATCH, and DDL transactions no longer serialize full incremental schema.
The existing related code, configurations, system tables, and tests are primarily for upstream compatibility or are historical legacy. They should be completely cleaned up to reduce maintenance and compilation costs.
Proposed Solution
src/logservice/data_dictionary, along with corresponding build dependencies.dump_data_dictionary_to_log_intervalconfiguration item.__all_data_dictionary_in_logandDBA_OB_DATA_DICTIONARY_IN_LOG. If there are upgrade or compatibility constraints, handle them with deprecated placeholder methods and provide explanations.datadictandlibobcdcdirectories that only validate this capability.Scope and Boundaries
DATA_DICT_LOG_BASE_TYPE = 20, it should be retained as a deprecated/reserved number and must not be reused.Acceptance Criteria