[MDEV-7960] Field::char_length() takes 0.15% in OLTP RO Created: 2015-04-09  Updated: 2016-02-16

Status: Open
Project: MariaDB Server
Component/s: None
Affects Version/s: 10.1
Fix Version/s: 10.2

Type: Bug Priority: Minor
Reporter: Sergey Vojtovich Assignee: Alexander Barkov
Resolution: Unresolved Votes: 0
Labels: None

Epic Link: Performance: micro optimizations

 Description   

Data comes from Sandy Bridge system running sysbench OLTP RO in 1 thread against 1 table.

Call graphs:

-   0.15%  mysqld  mysqld
   - Field::char_length()
      + 73.43% Field_string::sort_string(unsigned char*, unsigned int)
      + 16.71% Item_field::set_field(Field*)
      + 4.95% make_sortkey(Sort_param*, unsigned char*, unsigned char*)
      + 4.91% Item_field::fix_fields(THD*, Item**)

This is virtual method which can't be inlined. Most time spent for function call convention. Check if we can revoke it's virtual status.

NB: Field::charset() which is used by this method is virtual too.


Generated at Thu Feb 08 07:23:36 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.