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
Rex Johnston
MDEV-37220  Missing cleanup in prepared statement
Sergei Golubchik
MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table

don't auto-add new partitions if we're already at TIMESTAMP_MAX_VALUE
Lawrin Novitsky
Merge branch 'odbc-3.1'. C/C has been moved to v3.4.8 as part of merge
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Hemant Dangi
MDL BF-BF conflict on ALTER and INSERT with multi-level foreign key parents

Issue:
On galera write node INSERT statements does not acquire MDL locks on it's all child
tables and thereby wsrep certification keys are also added for limited tables, but
on applier nodes it does acquire MDL locks for all child tables. This can result
into MDL BF-BF conflict on applier node when transactions referring to parent and
child tables are executed concurrently. For example:

Tables with foreign keys: t1<-t2<-t3<-t4
Conflicting transactions: INSERT t1 and DROP TABLE t4

Wsrep certification keys taken on write node:
- for INSERT t1: t1 and t2
- for DROP TABLE t4: t4

On applier node MDL BF-BF conflict happened between two transaction because
MDL locks on t1, t2, t3 and t4 were taken for INSERT t1, which conflicted
with MDL lock on t4 taken by DROP TABLE t4.
The Wsrep certification keys helps in resolving this MDL BF-BF conflict by
prioritizing and scheduling concurrent transactions. But to generate Wsrep
certification keys it needs to open and take MDL locks on all the child tables.

On applier nodes Write_rows event is implicitly a REPLACE, deleting all conflicting
rows which can cause cascading FK actions and locks on foreign key children tables.

Solution:
For Galera applier nodes the Write_rows event is considered pure INSERT
which will never cause cascading FK actions and locks on foreign key children tables.
Dave Gosselin
MDEV-38502: FULL OUTER JOIN get correct sargable condition

Move the temporary gate against FULL OUTER JOIN deeper into the
codebase, which causes the FULL OUTER JOIN query plans to have
more relevant information (hence the change).  In some cases, the
join order of nested INNER JOINs within the FULL OUTER JOIN changed.

Small cleanups in get_sargable_cond ahead of the feature work in
the next commit.
Dave Gosselin
MDEV-38136: Prevent elimination of tables in a FULL OUTER JOIN

Prevent elimination of tables participating in a FULL OUTER JOIN during
eliminate_tables as part of phase one FULL OUTER JOIN development.

Move the functionality gate for FULL JOIN further into the codebase: convert
LEX::has_full_outer_join to a counter so we can see how many FULL JOINs
remain which makes the gate work correctly after simplify_joins and
eliminate_tables are called.

Fixes an old bug where, when running the server as a debug build and in
debug mode, a null pointer deference in
Dep_analysis_context::dbug_print_deps would cause a crash.
Sergei Golubchik
fixup! f275c4cc801
Lawrin Novitsky
ODBC-482 Problems with SQLSetPos on block cursor with NULL values.

If position was changed, SQLGetData would still read if value is NULL
from first row in the block cursor. That could lead to different issues
and even crash on SQL_DELETE or in SQLGetData() after SQL_POSITION.
Part of fix is also in the part that has been moved to c/c++ repo -
get() method returned true, i.e. error on NULL field value. Plus
resultset method isNull has been made public.
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Dave Gosselin
MDEV-38692: COALESCE() on NATURAL FULL JOIN result sets

FULL JOIN yields result sets with columns from both tables participating in
the join (for the sake of explanation, assume base tables).  However,
NATURAL FULL JOIN should show unique columns in the output.

Given the following query:
  SELECT * FROM t1 NATURAL JOIN t2;
transform it into:
  SELECT COALESCE(t1.f_1, t2.f_1), ..., COALESCE(t1.f_n, t2.f_n) FROM
    t1 NATURAL JOIN t2;

This change applies only in the case of NATURAL FULL JOIN.  Otherwise,
NATURAL JOINs work as they have in the past, which is using columns
from the left table for the resulting column set.
Rucha Deodhar
MDEV-23500: Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())'
failed in Diagnostics_area::set_ok_status upon multi-table update

Analysis:
When NULL field from internal temporary table is copied to
NOT-NULL so there is error about truncation  but this error is not
reported so we get the failure.

Fix:
Return the error state.
Michael Widenius
MDEV-32745 Add a simple MySQL to MariaDB upgrade helper

The tool is named mariadb-migrate-config-file.
The main purpose of the tool is to change MySQL option
files to work both for MySQL and MariaDB.
There are options to do the changes in the options file inline,
or at-end-of-file. One can also remove or comment unknown options.

The list of supported options is generated compile time from
mariadbd --help. All server options, including compiled plugins, are
supported.

The bulk of the code comes from Väinö.
Monty has updated it with a lot of extra options.
Wlad helped with cmake integration

Other things:
- Fixed a memory leak in sql_plugin.cc
- plugin-load will now in case of errors try to load all given plugins
  before aborted
- If silent-startup is used, plugin-load will not give errors for
  plugins it cannot load or warnings about plugin marturity level.
- my_rm_tree() will now delete symlinks, not the actual file, if
  MY_NOSYMLINK flag is used.
- my_stat() will now give data for symlink if MY_NOSYMLINKS is used.
- Added 'number of lines' option to mysqltest --cat_file

@Authors: Väinö Mäkelä <[email protected]>,[email protected]
Dave Gosselin
MDEV-37932: Parser support FULL OUTER JOIN syntax

Syntax support for FULL JOIN, FULL OUTER JOIN, NATURAL FULL JOIN, and
NATURAL FULL OUTER JOIN in the parser.

While we accept full join syntax, such joins are not yet supported.
Queries specifying any of the above joins will fail with
ER_NOT_SUPPORTED_YET.
Lawrin Novitsky
Moved C/C to v3.3.18
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Rucha Deodhar
MDEV-31477: Inconsistent handling while fetching values in json

Analysis:
When we get value in json_value(), if any error occurs while scanning the
json, it is not reported. Only true is returned.
Fix:
Report error along with returning true (error)
Rucha Deodhar
MDEV-36764: Unexpected collation when using json_table

Analysis:
The collation is hard coded.

Fix:
The table initially had system character set hardcoded. However,
a table field should derive character set and collation from
table and table should derive it from database. Hence made
necessary change to reflect that.
Sergei Golubchik
MDEV-38246 aria_read index failed on encrypted database during backup

Skip an all-zero pages in the index file.
They can happen normally if the ma_checkpoint_background
thread flushes some later page first (e.g. page 50 before page 48).

Also:
* don't do alloca() in a loop
* correct the check in ma_crypt_index_post_read_hook(),
  the page can be completely full
Rucha Deodhar
temp
Lawrin Novitsky
Fix of source package generation

to include files (borrowed from and) returned to the c/c++ repo
Fixed one compilation warning along the way
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Lawrin Novitsky
Auto reconnect option test
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Brandon Nesterenko
MDEV-25039: MDL BF-BF conflict because of foreign key

Fix rpl suite tests added by MDEV-25039.

rpl_foreign_key_lock_table_insert.test is removed altogether because it
is unclear what the purpose of the test is. The changes of the patch
were done on the slave, yet all operations in the test were done on the
master. Nothing different could happen on the slave because it is
configured to be serial, so all transactions would run sequentially
anyway, and no validations were performed.

rpl_foreign_key_ddl_insert.test was renamed to
rpl_row_foreign_key_mdl.test and the test itself was re-written to be
a minimal test case to ensure that MDL locking behavior is different
pre- and post- patch. A few problems with the original test:
* No foreign-key locking was done on the slave because the table
  engine was not InnoDB.
* rpl_fk_ddl.inc had inconsistent validation checking. I.e., the child
  query validation checks were done on the master (which is incorrect)
  and because the slave was configured to be serial, the two
  transactions could not run concurrently on the slave anyway.
Lawrin Novitsky
Fixed warning on Windows in the tests framwork
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Dave Gosselin
MDEV-37995: FULL OUTER JOIN name resolution

Allow FULL OUTER JOIN queries to proceed through name resolution.

Permits limited EXPLAIN EXTENDED support so tests can prove that the
JOIN_TYPE_* table markings are reflected when the query is echoed back by the
server.  This happens in at least two places:  via a Warning message during
EXPLAIN EXTENDED and during VIEW .frm file creation.

While the query plan output is mostly meaningless at this point, this
limited EXPLAIN support improves the SELECT_LEX print function for the new
JOIN types.

TODO: fix PS protocol before end of FULL OUTER JOIN development
Lawrin Novitsky
ODBC-481 Crash in SQLDisconnect after SQLCancel if it only closed cursor

One of locks stayed locked and it is not re-entrant.
Added testcase in separate suite as first I expected other conditions
would be needed to be met in order to re-create the issue - I thought it
would need "clean" and only env. But let it stay separate as that suite
may get another use.
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Lawrin Novitsky
ODBC-476 Driver should not use NULL values for (parts of) unique key

The fix and the testcase.
Also driver should not stop on error on one of rows and continue to
others, returning aggregated result. That is for SQL_DELETE in
particular.
Re-organized code a bit in oreder not to duplicate checks and common
actions for different operations in SQLSetPos
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Dave Gosselin
MDEV-38502: FULL OUTER JOIN get correct sargable condition

Fetches the ON condition from the FULL OUTER JOIN as the sargable condition.
We ignore the WHERE clause here because we don't want accidental conversions
from FULL JOIN to INNER JOIN during, for example, range analysis, as that
would produce wrong results.

GCOV shows that existing FULL OUTER JOIN tests exercise this new codepath.
Dave Gosselin
MDEV-38177: FULL OUTER JOIN Allowed JOIN Orders

This is a small cleanup commit ahead of the feature work for this MDEV:
- Upgrade JOIN::get_allowed_nj_tables, JOIN::calc_allowed_top_level_tables
  to const methods as they have no side-effects and don't mutate object state
- Document that JOIN_TAB::tab_list is the same as
  JOIN_TAB::table->pos_in_table_list
- Direct access to nj_map replaced by functions to clarify expected usage
- Remove a dead code path not executed by any regression tests
- Invert and dedent a couple of loops to keep the happy path on the left
- Cleanup restore_prev_nj_state and build_bitmap_for_nested_joins
Lawrin Novitsky
Refactored code around index search for positional operations

The class for that has been moved to cppmini. The code is much cleaner
now. Maybe tiny bit faster and Stmt handle is a tiny bit smaller in base
case.
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Lawrin Novitsky
ODBC-476 Testcase for the issue with workaround in order not to fail
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Sergei Golubchik
MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table

don't auto-add new partitions if we're already at TIMESTAMP_MAX_VALUE
Dave Gosselin
Remove unnecessary and unused 'top' parameter from simplify_joins.
Brandon Nesterenko
MDEV-25039: MDL BF-BF conflict because of foreign key

Fix rpl suite tests added by MDEV-25039.

rpl_foreign_key_lock_table_insert.test is removed altogether because it
is unclear what the purpose of the test is. The changes of the patch
were done on the slave, yet all operations in the test were done on the
master. Nothing different could happen on the slave because it is
configured to be serial, so all transactions would run sequentially
anyway, and no validations were performed.

rpl_foreign_key_ddl_insert.test was renamed to
rpl_row_foreign_key_mdl.test and the test itself was re-written to be
a minimal test case to ensure that MDL locking behavior is different
pre- and post- patch. A few problems with the original test:
* No foreign-key locking was done on the slave because the table
  engine was not InnoDB.
* rpl_fk_ddl.inc had inconsistent validation checking. I.e., the child
  query validation checks were done on the master (which is incorrect)
  and because the slave was configured to be serial, the two
  transactions could not run concurrently on the slave anyway.
Hemant Dangi
MDL BF-BF conflict on ALTER and INSERT with multi-level foreign key parents

Issue:
On galera write node INSERT statements does not acquire MDL locks on it's all child
tables and thereby wsrep certification keys are also added for limited tables, but
on applier nodes it does acquire MDL locks for all child tables. This can result
into MDL BF-BF conflict on applier node when transactions referring to parent and
child tables are executed concurrently. For example:

Tables with foreign keys: t1<-t2<-t3<-t4
Conflicting transactions: INSERT t1 and DROP TABLE t4

Wsrep certification keys taken on write node:
- for INSERT t1: t1 and t2
- for DROP TABLE t4: t4

On applier node MDL BF-BF conflict happened between two transaction because
MDL locks on t1, t2, t3 and t4 were taken for INSERT t1, which conflicted
with MDL lock on t4 taken by DROP TABLE t4.
The Wsrep certification keys helps in resolving this MDL BF-BF conflict by
prioritizing and scheduling concurrent transactions. But to generate Wsrep
certification keys it needs to open and take MDL locks on all the child tables.

On applier nodes Write_rows event is implicitly a REPLACE, deleting all conflicting
rows which can cause cascading FK actions and locks on foreign key children tables.

Solution:
For Galera applier nodes the Write_rows event is considered pure INSERT
which will never cause cascading FK actions and locks on foreign key children tables.
Aleksey Midenkov
MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table

After returning error from check_vers_constants() the stack
immediately returns error status up to mysql_admin_table() where it
does close_thread_tables(). The latter expects MDL acquired.

The bug discloses the generic problem of fallback mechanism throwing
an error when the upper frame does close_thread_tables().
Dave Gosselin
MDEV-37933: Rewrite [NATURAL] FULL OUTER to LEFT, RIGHT, or INNER JOIN

Rewrite FULL OUTER JOIN queries as either LEFT, RIGHT, or INNER JOIN
by checking if and how the WHERE clause rejects nulls.

For example, the following two queries are equivalent because the
WHERE condition rejects nulls from the left table and allows matches
in the right table (or NULL from the right table) for the remaining
rows:

  SELECT * FROM t1 FULL JOIN t2 ON t1.v = t2.v WHERE t1.v IS NOT NULL;
  SELECT * FROM t1 LEFT JOIN t2 ON t1.v = t2.v;

  SELECT * FROM t1 FULL JOIN t2 ON t1.v = t2.v WHERE t1.a=t2.a;
  SELECT * FROM t1 INNER JOIN t2 ON t1.v = t2.v WHERE t1.a=t2.a;
Lawrin Novitsky
Merge branch 'odbc-3.1'
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Dave Gosselin
MDEV-38177: FULL OUTER JOIN Allowed JOIN Orders

Check that tables participating in a FULL OUTER JOIN are not separated from
each other when trying new extenions to the query plan.  Some tables t1, t2
participating in FULL OUTER JOIN should remain adjacent in the final JOIN
order, otherwise wrong results will be computed.

In this patch, tables in a FULL OUTER JOIN remember who their JOIN partner
is.  When JOINs are nested, these partners are preserved and checked
when walking the nested JOIN tree during check_interleaving_in_nj.
This code accounts for the case when tables in a FULL OUTER JOIN may
themselves be nested joins, such as (t1, t2) FULL OUTER JOIN t3.
Hemant Dangi
MDL BF-BF conflict on ALTER and INSERT with multi-level foreign key parents

Issue:
On galera write node INSERT statements does not acquire MDL locks on it's all child
tables and thereby wsrep certification keys are also added for limited tables, but
on applier nodes it does acquire MDL locks for all child tables. This can result
into MDL BF-BF conflict on applier node when transactions referring to parent and
child tables are executed concurrently. For example:

Tables with foreign keys: t1<-t2<-t3<-t4
Conflicting transactions: INSERT t1 and DROP TABLE t4

Wsrep certification keys taken on write node:
- for INSERT t1: t1 and t2
- for DROP TABLE t4: t4

On applier node MDL BF-BF conflict happened between two transaction because
MDL locks on t1, t2, t3 and t4 were taken for INSERT t1, which conflicted
with MDL lock on t4 taken by DROP TABLE t4.
The Wsrep certification keys helps in resolving this MDL BF-BF conflict by
prioritizing and scheduling concurrent transactions. But to generate Wsrep
certification keys it needs to open and take MDL locks on all the child tables.

On applier nodes Write_rows event is implicitly a REPLACE, deleting all conflicting
rows which can cause cascading FK actions and locks on foreign key children tables.

Solution:
For Galera applier nodes the Write_rows event is considered pure INSERT
which will never cause cascading FK actions and locks on foreign key children tables.
Michael Widenius
MDEV-19683 Add support for Oracle TO_DATE()

Syntax:
TO_DATE(string_expression [DEFAULT string_expression ON CONVERSION ERROR],
        format_string [,NLS_FORMAT_STRING])
The format_string has the same format elements as TO_CHAR(), except a
few elements that are not supported/usable for TO_DATE().
TO_DATE() returns a datetime or date value, depending on if the format
element FF is used.

Allowed separators, same as TO_CHAR():
space, tab and any of !#%'()*+,-./:;<=>

'&' can also be used if next character is not a character a-z or A-Z
"text' indicates a text string that is verbatim in the format. One cannot
use " as a separator.

Format elements supported by TO_DATE():
AD          Anno Domini ("in the year of the Lord")
AD_DOT      Anno Domini ("in the year of the Lord")
AM          Meridian indicator (Before midday)
AM_DOT      Meridian indicator (Before midday)
DAY        Name of day
DD          Day (1-31)
DDD        Day of year (1-336)
DY          Abbreviated name of day
FF[1-6]    Fractional seconds
HH          Hour (1-12)
HH12        Hour (1-12)
HH24        Hour (0-23)
MI          Minutes (0-59)
MM          Month (1-12)
MON        Abbreviated name of month
MONTH      Name of Month
PM          Meridian indicator (After midday)
PM_DOT      Meridian indicator (After midday)
RR          20th century dates in the 21st century. 2 digits
            50-99 is assumed from 2000, 0-49 is assumed from 1900.
RRRR        20th century dates in the 21st century. 4 digits
SS          Seconds
SYYYY      Signed 4 digit year; MariaDB only supports positive years
Y          1 digit year
YY          2 digits year
YYY        3 digits year
YYYY        4 digits year

Note that if there is a missing part of the date, the current date is used!
For example if 'MM-DD HH-MM-SS' then the current year will be used.
(Oracle behaviour)

Not supported options:
- BC, D, DL, DS, E, EE, FM, FX, RM, SSSSS, TS, TZD, TZH, TZR, X,SY
  BC is not supported by MariaDB datetime.
- Most of the other are exotic formats does not make sence in MariaDB as
  we return datetime or datetime with fractions, not string.
- D (day-of-week) is not supported as it is not clear exactly how it would
  map to MariaDB. This element depends on the NLS territory of the session.
- RR only works with 2 digit years (In Oracle RR can also work with 4
  digit years in some context but the rules are not clear).

Extensions / differences compared to Oracle;
- MariaDB supports FF (fractional seconds).  If FF[#] is used,
  then TO_DATE will return a datetime with # of subseconds.
  If FF is not used a datetime will be returned.
  There is warning (no error) if string contains more digts than what
  is specified with F(#]
- Names can be shortened to it's unique prefix. For example January and Ja
  works fine.
- No error if the date string is shorter format_string and the next
  not used character is not a number.. This is useful to get a date
  from a mixed set of strings in date or datetime format.
  Oracle gives an error if date string is too short.
- MariaDB supports short locales as language names
- NLS_DATE_FORMAT can use both " and ' for quoting.
- NLS_DATE_FORMAT must be a constant string.
  - This is to ensure that the server knows which locale to use
    when executing the function.

New formats handled by TO_CHAR():
FF[1-6]    Fractional seconds
DDD        Daynumber 1-366
IW          Week 1-53 according to ISO 8601
I          1 digit year according to ISO 8601
IY          2 digit year according to ISO 8601
IYY        3 digit year according to ISO 8601
IYYY        4 digit year according to ISO 8601
SYYY        4 digit year according to ISO 8601 (Oracle can do signed)

Supported NLS_FORMAT_STRING options are:
NLS_CALENDAR=GREGORIAN
NLS_DATE_LANGUAGE=language

Support languages are:
- All MariaDB short locales, like en_AU.
- The following Oracle language names:
ALBANIAN, AMERICAN, ARABIC, BASQUE, BELARUSIAN, BRAZILIAN PORTUGUESE
BULGARIAN, CANADIAN FRENCH, CATALAN, CROATIAN, CYRILLIC SERBIAN CZECH,
DANISH, DUTCH, ENGLISH, ESTONIAN, FINNISH, FRENCH, GERMAN,
GREEK, HEBREW, HINDI, HUNGARIAN, ICELANDIC, INDONESIAN ITALIAN,
JAPANESE, KANNADA, KOREAN, LATIN AMERICAN SPANISH, LATVIAN,
LITHUANIAN, MACEDONIAN, MALAY, MEXICAN SPANISH, NORWEGIAN, POLISH,
PORTUGUESE, ROMANIAN, RUSSIAN, SIMPLIFIED CHINESE, SLOVAK, SLOVENIAN,
SPANISH, SWAHILI, SWEDISH, TAMIL, THAI, TRADITIONAL CHINESE, TURKISH,
UKRAINIAN, VIETNAMESE

Development bugs fixed:
MDEV-38403 Server crashes in Item_func_to_date::fix_length_and_dec upon
          using an invalid argument
MDEV-38400 compat/oracle.func_to_date fails with PS protocol and cursor
          protocol (Fixed by Serg)
MDEV-38404 TO_DATE: MTR coverage omissions, round 1
MDEV-38509 TO_DATE: AD_DOT does not appear to be supported
MDEV-38513 TO_DATE: NULL value for format string causes assertion failure
MDEV-38521 TO_DATE: Date strings with non-ASCII symbols cause warnings
          and wrong results
MDEV-38578 TO_DATE: Possibly unexpected results upon wrong input
MDEV-38582 TO_DATE: NLS_DATE_LANGUAGE=JAPANESE does not parse values
          which work in Oracle
MDEV-38584 TO_DATE: NLS_DATE_LANGUAGE=VIETNAMESE does not parse values
          which work in Oracle
MDEV-38703 TO_DATE: Quotation for multi-word NLS_DATE_LANGUAGE leads
          to syntax error in view definition
MDEV-38675 TO_DATE: MSAN/Valgrind/UBSAN errors in
          extract_oracle_date_time
MDEV-38635 TO_DATE: UBSAN errors in item_timefunc.h upon comparison with
          a view column

Known issues:
- Format string character matches inside quotes are done
  one-letter-to-one-letter, like in LIKE predicate. That means things
  like expansions and contractions do not work.
  For example 'ss' does not match 'ß' in collations which treat them
  as equal for the comparison operator.
  Match is done taking into account case and accent sensitivity
  of the subject argument collation, so for example this now works:
  MariaDB [test]> SELECT TO_DATE('1920á12','YYYY"a"MM') AS c;
  +---------------------+
  | c                  |
  +---------------------+
  | 1920-12-17 00:00:00 |
  +---------------------+

Co-author and reviewer: Alexander Barkov <[email protected]>
Lawrin Novitsky
ODBC-479 Using SQLGetData with column > column count could crash

the driver. Actually in most cases.
The check stood after the place where certain arrays(storting data
on offets to start reading the data from) were read using
that index - basically it could read past allocated area.
  • codbc-alma8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-alma9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-alma84-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bookworm-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64: build linux-connector_odbc failed -  stdio
  • codbc-bullseye-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-fedora38-amd64: build linux-connector_odbc failed -  stdio
  • codbc-fedora39-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64: build linux-connector_odbc failed -  stdio
  • codbc-jammy-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-asan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-msan: build linux-connector_odbc failed -  stdio
  • codbc-linux-amd64-ubsan: build linux-connector_odbc failed -  stdio
  • codbc-noble-aarch64-deb: build linux-connector_odbc failed -  stdio
  • codbc-noble-amd64-deb: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel8-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-rhel9-amd64: build linux-connector_odbc failed -  stdio
  • codbc-rocky8-aarch64: build linux-connector_odbc failed -  stdio
  • codbc-sles12-amd64: build linux-connector_odbc failed -  stdio
  • codbc-sles15-amd64: build linux-connector_odbc failed -  stdio
  • codbc-source-package: build linux-connector_odbc failed -  stdio
Michael Widenius
Disable flag -Wno-format-truncate in BUILD scripts