[MDEV-17750] Remove dict_index_get_sys_col_pos() and some use of rec_get_offsets() Created: 2018-11-16  Updated: 2018-11-18  Resolved: 2018-11-16

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Fix Version/s: 10.4.1

Type: Task Priority: Major
Reporter: Marko Mäkelä Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: performance


 Description   

The function dict_index_get_sys_col_pos() is performing unnecessarily complex computations, which only make some sense for DB_ROW_ID, which would exist either as the first field in the clustered index or as the last field in a secondary index (only when a DB_ROW_ID column is materialised). We should add accessor functions dict_index_t::db_trx_id() and dict_index_t::db_roll_ptr().

Also, there are some unnecessary calls to rec_get_offsets() when accessing the first field of a record, for accessing the columns DB_ROW_ID and FTS_DOC_ID.



 Comments   
Comment by Marko Mäkelä [ 2018-11-16 ]

This was motivated by code refactoring that I am working on in MDEV-17520.
This could be easily backported to 10.2 or 10.3 if desired, for some performance benefit.

Generated at Thu Feb 08 08:38:50 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.