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

Get rid of Item_func::sargable

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.1
    • Fix Version/s: 10.1.6
    • Component/s: Optimizer
    • Labels:
      None

      Description

      Item_int_func::sargable is permanently set in constructor.
      It's only used to implement "virtual bool Item::count_sargable_conds()" for Item_int_func descendants.

      There is a little sense to have two things that implement the same thing.
      Everything should be done through proper virtual method implementation and its proper inheritance.

      Proposed changes about count_sargable_conds():

      • Item_int_func should use the default non-optimized derived implementation that comes from Item
      • Item_int_func descendants that can really use optimizer (e.g. Item_bool_rowready_func2, Item_func_spatial_rel, Item_func_like) should just implement their own versions. Note, it's important to avoid code duplication here.

        Attachments

          Activity

            People

            Assignee:
            bar Alexander Barkov
            Reporter:
            bar Alexander Barkov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: