Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Console View


Categories: connectors experimental galera main
Legend:   Passed Failed Warnings Failed Again Running Exception Offline No data

connectors experimental galera main
Daniel Black
MDEV-39881 mroonga set, but not used variables: set_cursor_rk

len set but not used. Just remove len.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_plugin_path

groonga/lib/plugin.c:118:7: warning: variable 'value_size' set but not used [-Wunused-but-set-variable]
  118 |  int value_size;
      |      ^

value_size would be 0 if the retreival of the variable
failed. In this case exit if the value is 0, hence becoming
used.
PranavKTiwari
MDEV-36990: SIGFPE in get_max_range_rowid_filter_elems_for_table
Reject key definitions where a column contributes zero bytes to an index
but is part of a PRIMARY KEY (or otherwise semantically NOT NULL) and no
hash-based index fallback is used.

Previously, ALTER TABLE allowing BINARY(0) as part of a PRIMARY KEY could
produce a zero-length clustered index. This propagated into InnoDB as
tab->file->ref_length == 0, leading to division-by-zero in
get_max_range_rowid_filter_elems_for_table() during optimizer cost
estimation.

This change enforces validation in init_key_part_spec() to ensure that
PRIMARY KEY columns cannot have effective key length 0, preventing invalid
index creation and downstream optimizer/runtime crashes.
Daniel Black
MDEV-39881: mroonga set, but not used variables: grn_io_flush

groonga/lib/io.c:1472:16: warning: variable 'nth_file_info' set but not used [-Wunused-but-set-variable]
1472 |      uint32_t nth_file_info;
      |                ^

This is used for the GRN_MSYNC(macro) which only uses its
file handle arg on windows. Replace inline to avoid
and warning.

Don't include grn_io_compute_nth_file_info except for Windows.
Jan Lindström
MDEV-38870 : Galera test failure on galera.MDEV-38201

Test changes only. Moved wait condition where node should
disconnect from cluster because it has become inconsistent.
After that next FLUSH HOST based on timing could return
not supported or timeout.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_ii_buffer_check

crid unused, so removed.
pranavktiwari
Merge branch '10.11' into 10.11-MDEV-30297
Pekka Lampio
MDEV-38386 Fix incomplete cleanup in Galera MTR tests failing under --repeat

A number of Galera MTR tests pass on the first run but fail on a second
--repeat iteration, because server, cluster or filesystem state leaks
across runs and the test does not restore a clean starting state.

Fix the cleanup (or force a fresh cluster) in the affected tests. Each
fix was verified with --repeat=2 --force.

1. Stale async-slave GTID position (11 tests)

  RESET SLAVE [ALL] does not clear gtid_slave_pos. As the master does
  RESET MASTER in cleanup, on the next run the slave considers the
  events already applied and skips them, so the replicated tables never
  appear. Clear the position with SET GLOBAL gtid_slave_pos = "".

2. Leftover binlog GTID state from trailing cleanup (1 test)

  Trailing DROP TABLE / mtr.add_suppression statements ran after the
  .inc's reset master and re-populated node_2's binlog. gtid_binlog_state
  keeps the latest seqno per (domain, server_id) pair, so a stray
  0-2-<n> survived into the next run and broke the state comparison.
  Reorder the cleanup and reset node_2's binlog last.

3. Cluster-global, one-time or time-window state (11 tests)

  The wsrep GTID domain seqno is cluster-global and is not reset by
  reset master (nor by a mid-test SST rejoin); error-log contents,
  warning-flood suppression timers and one-time bootstrap behaviour are
  likewise not restored by in-test cleanup. Force a fresh cluster with
  include/force_restart.inc.

4. Leftover filesystem artifacts (1 test)

  mariabackup refuses to back up into a non-empty target directory, so
  the leftover target dirs from the previous run made the backup fail
  silently and the expected log messages never appeared. Remove the
  target directories in cleanup.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_text_otoj

i used.

Looked like loop variable, but wasn't used.

Replaced with simplier while construct.
Dave Gosselin
MDEV-39207:  mark test as not_embedded

Test fails on embedded CI because original not_embedded flag was not preserved
Daniel Black
MDEV-39881 mroonga set, but not used variables: command_schema

too big of stack. Supress for now.

groonga/lib/proc/proc_schema.c:1209:1: error: stack frame size (77688) exceeds limit (49152) in 'command_schema' [-Werror,-Wframe-larger-than]
1209 | command_schema(grn_ctx *ctx, int nargs, grn_obj **args, grn_user_data *user_data)
      | ^
1 error generated.
Thirunarayanan Balathandayuthapani
MDEV-39706  Assertion `!thd || !coordinator_thd' failed

Problem:
========
  - This assert was introduced in commit
0152c617e80ccf3f33d3ea4b50c17d5f588613b1 (MDEV-39261), which sets
coordinator_thd in clone_oldest_view() and resets it to nullptr in
batch_cleanup() at the end of the batch.
When innodb_trx_purge_view_update_only_debug is enabled, InnoDB fail
to reset coordinator_thd. As a result, InnoDB fails with assert in
next batch

Solution:
========
trx_purge(): Reset coordinator_thd to nullptr when
innodb_trx_purge_view_update_only_debug is enabled.
Daniel Black
MDEV-31209 Queries with window functions do not obey KILL / max_statement_time

Window functions run in a loop in
Frame_cursor::compute_values_for_current_row which can include a large
number of rows.

Adjust this function to check for the current thd being killed by only
every 256 rows, so as not to destroy any CPU pipelining or similar.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_output_result_set_open_v1

i set but not used.

'i' was used like a loop variable, but without
a terminating condition. Replace with while loop.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_ii_buffer_check

size set not used. Remove size.
PranavKTiwari
Added test case.
Andreas Schwab
MDEV-39925: Fix error reporting in create_libaio

The io_setup function in libaio returns a negated errno value on error,
but strerror expects a normal errno value.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_ts_expr_bridge_node_filter

tmp used, so removed.
Fariha Shaikh
MDEV-39928 Fix GitLab CI centos9 job failure

The centos9 job uses yum-builddep -y mariadb-server to install build
dependencies, but the mariadb-server source package has been removed
from CentOS Stream 9 repositories. Replace with explicit installation of
the required build dependencies.

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Yuchen Pei
[fixup] Move tests requiring an example plugin from sys_vars.session_track_system_variables_basic to a separate test

A follow up to 1f56d9c3feeeca82661cbe57cb628207c8b186f8. This restores
test coverage when the example plugin is not built.
Dave Gosselin
MDEV-39952:  Skip tests that need mariabackup

Skips tests that require mariabackup if mariabackup was not
built (WITH_MARIABACKUP=OFF).

Backport of the same MTR change from 12.3 but applied to
additional tests.
Yuchen Pei
MDEV-40048 [to-squash] Allow trigger and LOCK TABLES to work with range interval auto partitioning

When a range interval auto partitioned table is the target of a
trigger, the triggering statement is not necessarily one that would
cause the auto-creation of new partitions, so we need to account for
that.

Also added support for LOCK TABLES ... WRITE.

Improved tests coverage by adapting tests from versioning.partition.
Daniel Black
MDEV-39881 mroonga set, but not used variables grn_hash_delete

groonga/lib/hash.c:2818:18: warning: variable 'm' set but not used [-Wunused-but-set-variable]
2818 |  uint32_t h, i, m, s;
      |                  ^
The assignment of the max_offset to m was unused so removed.
Dave Gosselin
MDEV-38158:  Incorrect query result

When setup_copy_fields() needs to copy a non-aggregate function value,
it doesn't construct an Item_copy directly.  Instead, it calls
Type_handler::create_item_copy, which is a kind of factory.  The base
Type_handler::create_item_copy returns Item_copy_string.  Some type
handlers override it, like timestamp and fixed binary.  However, the
numeric type handlers (e.g., float, double, int, decimal) did not, so
they fell through to that base and got Item_copy_string.

A SELECT that aggregates will copy each non aggregate function value
into a temporary table through an Item_copy object, whose concrete
type is chosen by the create_item_copy method on the value's type
handler.  For numeric types that method returned Item_copy_string,
which stores the value as text.  A FLOAT keeps only FLT_DIG
significant digits as text, too few to reproduce its 24 bit mantissa,
so the copied value differed from the original.  With one row per
group, CAST(c1 AS FLOAT) - MIN(CAST(c1 AS FLOAT)) returned a large
number instead of zero.

Add Item_copy_real with Item_copy_float and Item_copy_double variants
that keep the value as a double, the same way Item_cache_real does, and
let the float and double type handlers create them.  This mirrors the
existing copy items for timestamp and fixed binary types.
Daniel Black
MDEV-39881 mroonga set, but not used variables: expr.c

grn_expr_unpack - used offset - add attribute unused
as to not to change macro used elsewhere.

grn_expr_exec: unused ln1/la1 - remove

grn_table_select_index_not_equal: weight unused - remove
Fariha Shaikh
MDEV-39931 Fix main.socket_conflict failure when running as root

The test directly executes $MYSQLD via --exec, bypassing MTR's automatic
--user=root injection. In GitLab CI containers where tests run as root,
mariadbd refuses to start and the test fails.

Skip the test when running as root, matching the existing approach used
by the related main.bad_startup_options test.

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Daniel Black
MDEV-39881: mroonga set, but not used variables: grn_geo_select_in_circle

center_{lat,long} unused so removed.
Daniel Black
MDEV-39881 mroonga set, but not used variables: func_snippet

rc set  but not used

Handle snippet errors based on rc value.
Daniel Black
MDEV-39881 mroonga set, but not used variables: grn_time_to_tm

usec unused as it couldn't be used by grn_time_t_to_tm.
Vladislav Vaintroub
MDEV-40001 my_sync() does not use NtFlushBuffersFileEx()

Copy the logic from Innodb. Use a fallback to FlushFileBuffers(), if
NtFlushBuffersFileEx() fails.

my_winfile.c is renamed to my_winfile.cc, since it is using a C++ feature,
initialization of global variable using non-constant expression.
Exported functions remain extern "C"
PranavKTiwari
Added logic for colum typ.
Daniel Black
MDEV-39881 mroonga set, but not used variables: yy_reduce

attribute unused for those in macros.
Thirunarayanan Balathandayuthapani
MDEV-39707 Assertion `lsn != 0' failed in log_write_up_to

Problem:
========
innodb_make_page_dirty(): Unconditionally calls log_write_up_to()
with mtr.commit_lsn() after committing the mini-transaction.
When the mtr produced no redo records when the targeted page
is full of zeroes.

Solution:
========
innodb_make_page_dirty(): Skip log_write_up_to() when
commit_lsn() is zero.
Kristian Nielsen
Fix inconsistent terminology

Signed-off-by: Kristian Nielsen <[email protected]>
Oleg Smirnov
MDEV-36344: UBSAN Lifo_buffer::have_space_for change

Adjust Lifo_buffer::have_space_for to not lead itself to UBSAN
overflows.
PranavKTiwari
MDEV-36990: SIGFPE in get_max_range_rowid_filter_elems_for_table
Reject key definitions where a column contributes zero bytes to an index
but is part of a PRIMARY KEY (or otherwise semantically NOT NULL) and no
hash-based index fallback is used.

Previously, ALTER TABLE allowing BINARY(0) as part of a PRIMARY KEY could
produce a zero-length clustered index. This propagated into InnoDB as
tab->file->ref_length == 0, leading to division-by-zero in
get_max_range_rowid_filter_elems_for_table() during optimizer cost
estimation.

This change enforces validation in init_key_part_spec() to ensure that
PRIMARY KEY columns cannot have effective key length 0, preventing invalid
index creation and downstream optimizer/runtime crashes.
Yuchen Pei
MDEV-40088 [to-squash] Disallow subqueries in INTERVAL clause in range interval auto partitioning

This is consistent with system time (versioning) partitioning. Also
consistent is that both allow expressions otherwise.
Thirunarayanan Balathandayuthapani
MDEV-39706  Assertion `!thd || !coordinator_thd' failed

Problem:
========
  - This assert was introduced in commit
0152c617e80ccf3f33d3ea4b50c17d5f588613b1 (MDEV-39261), which sets
coordinator_thd in clone_oldest_view() and resets it to nullptr in
batch_cleanup() at the end of the batch.
When innodb_trx_purge_view_update_only_debug is enabled, InnoDB fail
to reset coordinator_thd. As a result, InnoDB fails with assert in
next batch

Solution:
========
trx_purge(): Reset coordinator_thd to nullptr when
innodb_trx_purge_view_update_only_debug is enabled.
Dmitry Shulga
MDEV-40004: Server crashes in sp_head::register_instr_mem_root_for_deallocation upon shutdown

n shutdown server could crash in case triggers executed during server run
and some of triggers instructions were re-compiled.

The crash is caused by attempt to allocate a memory for storing pointers
on mem_roots used for memory allocation taken place on re-parsing failing
trigger's statements. The reason of crash is dereferencing of nullptr
returning by the function current_thd().

To fix the issue, use dummy THD on shutdown the table definition cache.
tdc_start_shutdown() is solely invoked from the function clean_up()
but the later is called from many places around the source code, not only
from mysql_main(), particularly clean_up() is called from unireg_abort().
Therefore, the extra argument added into the signature of the function
cleanup() to allow explicit request of use dummy THD on shutdown the table
definition cache.
Daniel Black
MDEV-36344: UBSAN DsMrr_impl::dsmrr_init on null ptr

Under SQL_SELECT::test_quick_select there isn't
a mrr buffer. The TRP_RANGE.mrr_buf_size is explictly
sets its size to 0 in get_best_index_intersect.

Rather than hit undefined behaviour in what
eventually results in full_buf being nullptr,
jump the case and go directly to use_default_impl.