1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-11-02 06:13:16 +03:00

MDEV-32854: Make JSON_DEPTH_LIMIT unlimited

This patch is the columnstore-part of the task. Columnstore wanted to have
previous 32 depth, so this patch aims at keeping the compatibility.
This commit is contained in:
Rucha Deodhar
2025-05-22 15:42:12 +05:30
committed by Leonid Fedorov
parent 9a2ebebaf9
commit 9fe37d5919
50 changed files with 1047 additions and 952 deletions

View File

@@ -1,8 +1,8 @@
--source ../include/have_columnstore.inc
--disable_warnings
DROP DATABASE IF EXISTS json_insert_de;
--enable_warnings
CREATE DATABASE json_insert_de;
USE json_insert_de;
@@ -10,36 +10,18 @@ USE json_insert_de;
--echo # ----------------------------------------------------------------------
--echo # Test of JSON_INSERT|REPLACE|SET function.
--echo # ----------------------------------------------------------------------
CREATE TABLE t1(j TEXT, p TEXT, v TEXT) ENGINE = COLUMNSTORE;
INSERT INTO
t1
VALUES
(
'{"a":1, "b":{"c":1}, "d":[1, 2]}',
'$.b.k1',
'word'
),
('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.d[3]', 3),
('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.a[2]', 2),
(
'{"a":1, "b":{"c":1}, "d":[1, 2]}',
'$.b.c',
'word'
),
('1', '$[0]', 4),
('[]', '$[0][0]', 100),
('1', '$[0][0]', 100),
(
'{ "a": 1, "b": [2, 3]}',
'$.a',
10
),
(
'{ "a": 1, "b": [2, 3]}',
'$.b',
'[true, false]'
);
INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.b.k1', 'word');
INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.d[3]', 3);
INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.a[2]', 2);
INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.b.c', 'word');
INSERT INTO t1 VALUES ('1', '$[0]', 4);
INSERT INTO t1 VALUES ('[]', '$[0][0]', 100);
INSERT INTO t1 VALUES ('1', '$[0][0]', 100);
INSERT INTO t1 VALUES ('{ "a": 1, "b": [2, 3]}', '$.a', 10);
INSERT INTO t1 VALUES ('{ "a": 1, "b": [2, 3]}', '$.b', '[true, false]');
SELECT
j AS json,
@@ -52,5 +34,4 @@ FROM
t1;
DROP TABLE t1;
DROP DATABASE json_insert_de;