Skip to content

Commit a01abad

Browse files
committed
Merge branch '10.5' into 10.6
2 parents a8c5635 + da798c9 commit a01abad

File tree

6 files changed

+30
-4
lines changed

6 files changed

+30
-4
lines changed

cmake/pcre.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ MACRO(BUNDLE_PCRE2)
5454
ExternalProject_Add(
5555
pcre2
5656
PREFIX "${dir}"
57-
URL "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.40/pcre2-10.40.zip"
58-
URL_MD5 798698846982ce171d881ed0d7535c2a
57+
URL "https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.zip"
58+
URL_MD5 fe90992fbfb03f854bd9f344074f49eb
5959
INSTALL_COMMAND ""
6060
CMAKE_ARGS
6161
"-DCMAKE_WARN_DEPRECATED=FALSE"

extra/wolfssl/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,8 @@ IF(WOLFSSL_X86_64_BUILD)
157157
${WOLFCRYPT_SRCDIR}/sha512_asm.S
158158
${WOLFCRYPT_SRCDIR}/sha256_asm.S)
159159
ADD_DEFINITIONS(-maes -msse4.2 -mpclmul)
160+
# WolfSSL 5.5.4 bug - user_settings.h not included into aes_asm.S
161+
SET_PROPERTY(SOURCE ${WOLFCRYPT_SRCDIR}/aes_asm.S APPEND PROPERTY COMPILE_OPTIONS "-DWOLFSSL_X86_64_BUILD")
160162
ENDIF()
161163
ENDIF()
162164

extra/wolfssl/wolfssl

Submodule wolfssl updated 522 files

mysql-test/main/func_json.result

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1611,6 +1611,18 @@ SELECT json_object('a', coalesce(json_object('b', 'c')));
16111611
json_object('a', coalesce(json_object('b', 'c')))
16121612
{"a": {"b": "c"}}
16131613
#
1614+
# MDEV-26392: Crash with json_get_path_next and 10.5.12
1615+
#
1616+
CREATE TABLE arrNestTest (
1617+
id VARCHAR(80) AS (JSON_COMPACT(JSON_EXTRACT(doc, "$._id"))) UNIQUE KEY,
1618+
doc JSON,
1619+
CONSTRAINT id_not_null CHECK(id IS NOT NULL));
1620+
INSERT INTO test.arrNestTest (doc) VALUES ('{ "_id" : { "$oid" : "611c0a463b150154132f6636" }, "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : 1.0 } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] }');
1621+
SELECT * FROM arrNestTest;
1622+
id doc
1623+
{"$oid":"611c0a463b150154132f6636"} { "_id" : { "$oid" : "611c0a463b150154132f6636" }, "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : 1.0 } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] }
1624+
DROP TABLE arrNestTest;
1625+
#
16141626
# MDEV-26054 Server crashes in Item_func_json_arrayagg::get_str_from_field
16151627
#
16161628
CREATE TABLE t (a VARCHAR(8));

mysql-test/main/func_json.test

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1054,6 +1054,18 @@ DROP TABLE t2;
10541054
SELECT json_object('a', if(1, json_object('b', 'c'), json_object('e', 'f')));
10551055
SELECT json_object('a', coalesce(json_object('b', 'c')));
10561056

1057+
--echo #
1058+
--echo # MDEV-26392: Crash with json_get_path_next and 10.5.12
1059+
--echo #
1060+
1061+
CREATE TABLE arrNestTest (
1062+
id VARCHAR(80) AS (JSON_COMPACT(JSON_EXTRACT(doc, "$._id"))) UNIQUE KEY,
1063+
doc JSON,
1064+
CONSTRAINT id_not_null CHECK(id IS NOT NULL));
1065+
1066+
INSERT INTO test.arrNestTest (doc) VALUES ('{ "_id" : { "$oid" : "611c0a463b150154132f6636" }, "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : [ { "a" : 1.0 } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] } ] }');
1067+
SELECT * FROM arrNestTest;
1068+
DROP TABLE arrNestTest;
10571069

10581070
--echo #
10591071
--echo # MDEV-26054 Server crashes in Item_func_json_arrayagg::get_str_from_field

sql/item_jsonfunc.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1004,7 +1004,7 @@ String *Item_func_json_extract::read_json(String *str,
10041004
if (!possible_multiple_values)
10051005
{
10061006
/* Loop to the end of the JSON just to make sure it's valid. */
1007-
while (json_get_path_next(&je, &p) == 0) {}
1007+
while (json_scan_next(&je) == 0) {}
10081008
break;
10091009
}
10101010
}

0 commit comments

Comments
 (0)