1. 11 Mar, 2021 2 commits
  2. 09 Mar, 2021 2 commits
    • Marko Mäkelä's avatar
      MDEV-24671 fixup: Merge lock_sys_t::wait_pending into wait_count · bda8a2a6
      Marko Mäkelä authored
      The maximum number of concurrently waiting transactions is one less
      than the maximum number of concurrent transactions.
      
      A 45-bit cumulative counter of lock waits will support more than
      one million lock waits per second for a year.
      bda8a2a6
    • Marko Mäkelä's avatar
      MDEV-25085: Simplify instrumentation for LRU eviction · 78284a4c
      Marko Mäkelä authored
      Let us add the status variable innodb_buffer_pool_pages_LRU_freed
      to monitor the number of pages that were freed by a buffer pool LRU
      eviction scan, without flushing.
      
      Also, let us simplify the monitor interface:
      MONITOR_LRU_BATCH_FLUSH_COUNT, MONITOR_LRU_BATCH_FLUSH_PAGES,
      MONITOR_LRU_BATCH_EVICT_COUNT, MONITOR_LRU_BATCH_EVICT_PAGES:
      Remove.
      
      MONITOR_LRU_BATCH_FLUSH_TOTAL_PAGE: Track buf_lru_flush_page_count
      (innodb_buffer_pool_pages_LRU_flushed).
      
      MONITOR_LRU_BATCH_EVICT_TOTAL_PAGE: Track buf_lru_freed_page_count
      (buffer_pool_pages_LRU_freed).
      
      Reviewed by: Vladislav Vaintroub
      78284a4c
  3. 08 Mar, 2021 9 commits
  4. 05 Mar, 2021 12 commits
  5. 04 Mar, 2021 9 commits
    • Daniel Black's avatar
      mtr: perfschema.socket_{connect,instances_func} "Expect X" · 1e7fed72
      Daniel Black authored
      Match test output with what it is testing.
      1e7fed72
    • Daniel Black's avatar
      d2dce1c9
    • Rinat Ibragimov's avatar
      MDEV-6536: make --bind=hostname to listen on both IPv6 and IPv4 addresses · b3abcf80
      Rinat Ibragimov authored
      Binding to a hostname now makes MariaDB server to listen on all addresses
      that hostname resolves to.
      
      Rebased to 10.6 by Daniel Black
      
      Closes: #1668
      b3abcf80
    • Varun Gupta's avatar
      MDEV-7317: Make an index ignorable to the optimizer · f691d986
      Varun Gupta authored
      This feature adds the functionality of ignorability for indexes.
      Indexes are not ignored be default.
      
      To control index ignorability explicitly for a new index,
      use IGNORE or NOT IGNORE as part of the index definition for
      CREATE TABLE, CREATE INDEX, or ALTER TABLE.
      
      Primary keys (explicit or implicit) cannot be made ignorable.
      
      The table INFORMATION_SCHEMA.STATISTICS get a new column named IGNORED that
      would store whether an index needs to be ignored or not.
      f691d986
    • Marko Mäkelä's avatar
      fixup 58b56f14: Remove dead code · 7759991a
      Marko Mäkelä authored
      row_prebuilt_t::m_no_prefetch: Remove (it was always false).
      row_prebuilt_t::m_read_virtual_key: Remove (it was always false).
      
      Only ha_innopart ever set these fields.
      7759991a
    • Marko Mäkelä's avatar
      MDEV-25051 Race condition between persistent statistics and RENAME TABLE or TRUNCATE · 978e48c9
      Marko Mäkelä authored
      innobase_rename_table(): Invoke dict_stats_wait_bg_to_stop_using_table()
      to ensure that dict_stats_update() cannot be accessing the table name
      that we will be modifying. If we are executing RENAME rather than TRUNCATE,
      reset the flag at the end so that persistent statistics can be calculated
      again.
      
      The race condition was encountered with ASAN and rr.
      Sorry, there is no test case, like there is for nothing related to
      dict_stats_wait_bg_to_stop_using_table(). The entire code is an ugly
      work-around for the failure of dict_stats_process_entry_from_recalc_pool()
      to acquire MDL.
      
      Note: It appears that an ALTER TABLE that is not rebuilding the table
      will fail to reset the flag that blocks the processing of statistics.
      978e48c9
    • Vicențiu Ciorbaru's avatar
      Merge branch '10.2' into 10.3 · e9b8b76f
      Vicențiu Ciorbaru authored
      e9b8b76f
    • Vicențiu Ciorbaru's avatar
      MDEV-25032: Window functions without column references get removed from ORDER BY · 5da6ffe2
      Vicențiu Ciorbaru authored
      row_number() over () window function can be used without any column in the OVER
      clause. Additionally, the item doesn't reference any tables, as it's not
      effectively referencing any table. Rather it is specifically built based
      on the end temporary table used for window function computation.
      
      This caused remove_const function to wrongly drop it from the ORDER
      list. Effectively, we shouldn't be dropping any window function from the
      ORDER clause, so adjust remove_const to account for that.
      
      Reviewed by: Sergei Petrunia sergey@mariadb.com
      5da6ffe2
    • Igor Babaev's avatar
      MDEV-22786 Crashes with nested table value constructors · 08d8bce5
      Igor Babaev authored
      The bug caused crashes of the server when processing queries with nested
      table value constructors (TVC) . It happened because the grammar rules to
      parse TVC used the same global lists for both nested TVC and nesting TVC.
      As a result invalid select trees were constructed for queries with nested
      TVC and this led to crashes at the prepare stage.
      This patch provides its own lists structures for each TVC nest level.
      
      Besides the patch fixes a bug in the function wrap_tvc() that missed
      inheritance of the SELECT_LEX::exclude_from_table_unique_test for
      selects that wrapped TVCs. This inheritance is critical for specifications
      of derived tables that employ nested TVCs.
      
      Approved by dmitry.shulga@mariadb.com
      08d8bce5
  6. 03 Mar, 2021 6 commits