Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-7950

Item_func::type() takes 0.26% in OLTP RO

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.1(EOL)
    • 10.1.6
    • Optimizer
    • None

    Description

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

      Call graphs:

      -   0.26%  mysqld  mysqld
         - Item_func::type() const
            + 18.31% JOIN::optimize_inner()
            + 17.94% MYSQLparse(THD*)
            + 11.70% update_ref_and_keys(THD*, st_dynamic_array*, st_join_table*, unsigned int, Item*, unsigned long long, st_select_lex*, st_sargable_param**) [clone .isra.253]
            + 10.26% build_equal_items(JOIN*, Item*, COND_EQUAL*, List<TABLE_LIST>*, bool, COND_EQUAL**, bool) [clone .constprop.262]
            + 6.81% internal_remove_eq_conds(THD*, Item*, Item::cond_result*)
            + 5.92% JOIN::prepare(Item***, TABLE_LIST*, unsigned int, Item*, unsigned int, st_order*, bool, st_order*, Item*, st_order*, st_select_lex*, st_select_lex_unit*)
            + 5.32% join_read_const_table(st_join_table*, st_position*) [clone .isra.248]
            + 4.84% JOIN::optimize()
            + 3.57% make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*)
            + 3.01% SQL_SELECT::test_quick_select(THD*, Bitmap<64u>, unsigned long long, unsigned long long, bool, bool, bool)
            + 3.00% remove_eq_conds(THD*, Item*, Item::cond_result*)
            + 2.92% Item_func::compile(bool (Item::*)(unsigned char**), unsigned char**, Item* (Item::*)(unsigned char*), unsigned char*)
            + 2.52% Item_equal::add_const(Item*, Item*)
            + 2.01% Item_func::setup_args_and_comparator(THD*, Arg_comparator*)
            + 1.31% make_join_select(JOIN*, SQL_SELECT*, 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.

      Attachments

        Issue Links

          Activity

            People

              bar Alexander Barkov
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.