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
Alexander Barkov
Switching libmariadb to "Libmariadb changes for MDEV-27009 Add UCA-14.0.0 collations"
Marko Mäkelä
Merge 10.6 into 10.7
Alexander Barkov
A cleanup for MDEV-27896 Wrong result upon `COLLATE latin1_bin CHARACTER SET latin1` on the table or the database level

Changing the error messages in a statement like this:

CREATE DATABASE db1
        COLLATE utf8mb4_bin
        CHARACTER SET utf8mb4
        CHARACTER SET latin1;

from
  COLLATION 'utf8mb4_bin' is not valid for CHARACTER SET 'latin1'

to a more expected:

  Conflicting declarations: 'CHARACTER SET utf8mb4' and 'CHARACTER SET latin1'

In order to do this:
- Adding a new type TYPE_CHARACTER_SET_COLLATE_EXACT into
  Lex_exact_charset_extended_collation_attrs_st

- Removing m_had_charset_exact from its descendant class
  Lex_extended_charset_extended_collation_attrs_st

Additional cleanup:
- Changing methods in Lex_exact_charset_extended_collation_attrs_st
  set_charset(), set_charset_collate_default(), set_charset_collate_binary()
  to get Lex_exact_charset instead CHARSET_INFO as a parameter,
  to guarantee that the argument is only CHARACTER SET and does not have
  any COLLATE clauses yet. This change is not directly related to
  the error message change.
Marko Mäkelä
Merge 10.7 into 10.8
Vladislav Vaintroub
MDEV-28648 main.ssl_timeout fails with OpenSSL 3.0.3

Depending on OpenSSL version, and at least in 3.0.3, the client-side socket
timeout is reported as generic error (SSL_ERROR_SYSCALL), losing further
details (both errno and GetLastError() return 0). This results in client
reporting "Unknown OpenSSL error" 2026, instead of another generic
"Lost connection to server during query" 2013

Adjusted test case.
Alexander Barkov
MDEV-27009 Add UCA-14.0.0 collations - adding version aware implicit weight handling

Implicit weights are now handled according to the Unicode version
(14.0.0 vs earlier versions).

- Adding a new member MY_UCA_INFO::version

- Copy logical positions and the version from "src_uca" to "new_uca"
  in init_weight_level().

- Adding a "const MY_UCA_INFO *" parameter to a few functions
  to know Unicode version to generate implicit weights accordingly:
  - during the collation initialization time, to pages which are
    a mixture of explicit and implicit weights
  - during comparison time, for fully implicit pages
Daniel Black
Merge branch 10.5 into 10.6
Norio Akagi
MDEV-27892 Improve an error message for foreign server exists

Improve and add more languages for the ERROR 1476: Foreign Server
already exists.
Alexander Barkov
MDEV-27266 Improve UCA collation performance for utf8mb3 and utf8mb4

Adding two levels of optimization:

1. For every bytes pair [00..FF][00..FF] which:
  a. consists of two ASCII characters or makes a well-formed two-byte character
  b. whose total weight string fits into 4 weights
    (concatenated weight string in case of two ASCII characters,
    or a single weight string in case of a two-byte character)
  c. whose weight is context independent (i.e. does not depend on contractions
    or previous context pairs)
  store weights in a separate array of MY_UCA_2BYTES_ITEM,
  so during scanner_next() we can scan two bytes at a time.
  Byte pairs that do not match the conditions a-c are marked in this array
  as not applicable for optimization and scanned as before.

2. For every byte pair which is applicable for optimization in #1,
  and which produces only one or two weights, store
  weights in one more array of MY_UCA_WEIGHT2. So in the beginning
  of strnncoll*() we can skip equal prefixes using an even more efficient
  loop. This loop consumes two bytes at a time. The loop scans while the
  two bytes on both sides produce weight strings of equal length
  (i.e. one weight on both sides, or two weight on both sides).
  This allows to compare efficiently:
  - Context independent sequences consisting of two ASCII characters
  - Context independent 2-byte characters
  - Contractions consisting of two ASCII characters, e.g. Czech "ch".
  - Some tricky cases: "ss" vs "SHARP S"
    ("ss" produces two weights, 0xC39F also produces two weights)
Thirunarayanan Balathandayuthapani
MDEV-25257  SEGV in fts_get_next_doc_id upon some INSERT

- InnoDB fails to create a fts cache while loading the innodb fts
table which is stored in system tablespace. InnoDB should create
the fts cache while loading FTS_DOC_ID column from system column.
Honza Horak
MDEV-27778 md5 in FIPS crashes with OpenSSL 3.0.0

OpenSSL 3.0.0+ does not support EVP_MD_CTX_FLAG_NON_FIPS_ALLOW any longer.
In OpenSSL 1.1.1 the non FIPS allowed flag is context specific, while
in 3.0.0+ it is a different EVP_MD provider.

Fixes #2010

part of MDEV-28133
Alexander Barkov