Uploaded image for project: 'MariaDB ColumnStore'
  1. MariaDB ColumnStore
  2. MCOL-6222

basic.func_json_array_append test causes PrimProc assert with server 12.2

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 23.10
    • None
    • None
    • None
    • community server 12.2 (main branch)

    Description

      timofey_turenko_mariadb_com@mdbci-5kr6nsx5-1761247841-build:~$ sudo cat /var/log/mariadb/columnstore/trace/PrimProc.25467.log 
      Date/time: 2025-10-23 22:43:09
      Signal: 6
       
      /usr/bin/PrimProc(+0xb986a)[0x562de409586a]
      /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x70809f842520]
      /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c)[0x70809f8969fc]
      /lib/x86_64-linux-gnu/libc.so.6(raise+0x16)[0x70809f842476]
      /lib/x86_64-linux-gnu/libc.so.6(abort+0xd3)[0x70809f8287f3]
      /lib/x86_64-linux-gnu/libc.so.6(+0x89677)[0x70809f889677]
      /lib/x86_64-linux-gnu/libc.so.6(+0xa0cfc)[0x70809f8a0cfc]
      /lib/x86_64-linux-gnu/libc.so.6(+0xa2a44)[0x70809f8a2a44]
      /lib/x86_64-linux-gnu/libc.so.6(free+0x73)[0x70809f8a5453]
      /lib/x86_64-linux-gnu/libjoblist.so(+0x19424d)[0x7080a139424d]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist22associateTupleJobStepsERSt6vectorIN5boost10shared_ptrINS_7JobStepEEESaIS4_EES7_RSt3mapIiS4_St4lessIiESaISt4pairIKiS4_EEERNS_7JobInfoEb+0x3fb4)[0x7080a13abbe4]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist12makeJobStepsEPN8execplan26CalpontSelectExecutionPlanERNS_7JobInfoERSt6vectorIN5boost10shared_ptrINS_7JobStepEEESaIS9_EESC_RSt3mapIiS9_St4lessIiESaISt4pairIKiS9_EEE+0x2f7)[0x7080a13d0ea7]
      /lib/x86_64-linux-gnu/libjoblist.so(+0x1d5f8d)[0x7080a13d5f8d]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist14JobListFactory11makeJobListEPN8execplan20CalpontExecutionPlanEPNS_15ResourceManagerERK26PrimitiveServerThreadPoolsbb+0x66)[0x7080a13d6336]
      /lib/x86_64-linux-gnu/libexecplan.so(_ZN8execplan20CalpontSystemCatalog13getSysData_ECERNS_26CalpontSelectExecutionPlanERNS0_14NJLSysDataListERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x9c)[0x7080a1064f4c]
      /lib/x86_64-linux-gnu/libexecplan.so(_ZN8execplan20CalpontSystemCatalog10getSysDataERNS_26CalpontSelectExecutionPlanERNS0_14NJLSysDataListERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0xf70)[0x7080a1067e40]
      /lib/x86_64-linux-gnu/libexecplan.so(_ZN8execplan20CalpontSystemCatalog9tableNameERKi+0xbd6)[0x7080a1078d16]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist8TupleBPSC1ERKNS_12pColScanStepERKNS_7JobInfoE+0x961)[0x7080a141cec1]
      /lib/x86_64-linux-gnu/libjoblist.so(+0x1a47e2)[0x7080a13a47e2]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist22associateTupleJobStepsERSt6vectorIN5boost10shared_ptrINS_7JobStepEEESaIS4_EES7_RSt3mapIiS4_St4lessIiESaISt4pairIKiS4_EEERNS_7JobInfoEb+0x3d63)[0x7080a13ab993]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist12makeJobStepsEPN8execplan26CalpontSelectExecutionPlanERNS_7JobInfoERSt6vectorIN5boost10shared_ptrINS_7JobStepEEESaIS9_EESC_RSt3mapIiS9_St4lessIiESaISt4pairIKiS9_EEE+0x2f7)[0x7080a13d0ea7]
      /lib/x86_64-linux-gnu/libjoblist.so(+0x1d5f8d)[0x7080a13d5f8d]
      /lib/x86_64-linux-gnu/libjoblist.so(_ZN7joblist14JobListFactory11makeJobListEPN8execplan20CalpontExecutionPlanEPNS_15ResourceManagerERK26PrimitiveServerThreadPoolsbb+0x66)[0x7080a13d6336]
      /usr/bin/PrimProc(+0xb4941)[0x562de4090941]
      /lib/x86_64-linux-gnu/libthreadpool.so(_ZN10threadpool10ThreadPool11beginThreadEv+0x6a4)[0x7080a0909054]
      /lib/x86_64-linux-gnu/librwlock.so(+0x23545)[0x7080a0b62545]
      /lib/x86_64-linux-gnu/libc.so.6(+0x94ac3)[0x70809f894ac3]
      /lib/x86_64-linux-gnu/libc.so.6(+0x1268c0)[0x70809f9268c0]
       
      timofey_turenko_mariadb_com@mdbci-5kr6nsx5-1761247841-build:~$ addr2line -e /usr/bin/PrimProc +0xb986a
      ./builddir/storage/columnstore/columnstore/primitives/primproc/./storage/columnstore/columnstore/utils/common/crashtrace.cpp:45`
      

      MTR console log:

      columnstore/basic.func_json_array        [ pass ]    560
      columnstore/basic.func_json_array_append [ fail ]
              Test ended at 2025-10-21 17:35:28
       
      mysqltest: At line 36: query 'CREATE TABLE t2(a TEXT) ENGINE = COLUMNSTORE' failed: ER_INTERNAL_ERROR (1815): Internal error: CAL0000: %1% %2% %3% %4% %5% %6% %7% %8% %9% %10%
       
      The result from queries just before the failure was:
      < snip >
      SELECT
      a AS arrary,
      p AS path,
      v AS value,
      JSON_ARRAY_APPEND(a, p, v) AS result
      FROM
      t1;
      arrary	path	value	result
      [1,2,3]	$[0]	2	[[1, "2"], 2, 3]
      [1,2,3]	$[0]	1.2	[[1, "1.2"], 2, 3]
      [1,2,3]	$[0]	key1	[[1, "key1"], 2, 3]
      [1,2,3]	$[0]	1	[[1, "1"], 2, 3]
      [1,2,3]	$[0]	0	[[1, "0"], 2, 3]
      [1,2,3]	$[0]	NULL	[[1, null], 2, 3]
      {"a": "foo", "b": "bar", "c": "wibble" }	$.b	4	{"a": "foo", "b": ["bar", "4"], "c": "wibble"}
      {"a": "foo", "b": "bar", "c": "wibble" }	$.c	grape	{"a": "foo", "b": "bar", "c": ["wibble", "grape"]}
      {"a": "foo", "b": [1,2,3], "c": ["apple","pear"]}	$.b	4	{"a": "foo", "b": [1, 2, 3, "4"], "c": ["apple", "pear"]}
      {"a": "foo", "b": [1,2,3], "c": ["apple","pear"]}	$.c	grape	{"a": "foo", "b": [1, 2, 3], "c": ["apple", "pear", "grape"]}
      # NULL args
      CREATE TABLE t2(a TEXT) ENGINE = COLUMNSTORE;
       
      More results from queries before failure can be found in /var/tmp/mtr/log/func_json_array_append.log
       
       - skipping '/var/tmp/mtr/log/columnstore/basic.func_json_array_append/'
      columnstore/basic.func_json_array_insert [ fail ]
              Test ended at 2025-10-21 17:35:34
       
      mysqltest: At line 40: query 'SELECT
      JSON_ARRAY_INSERT(a, NULL, JSON_COMPACT(1)),
      JSON_ARRAY_INSERT(a, '$', NULL)
      FROM
      t2' failed: ER_INTERNAL_ERROR (1815): Internal error: InetStreamSocket::readToMagic: Remote is closed
       
      The result from queries just before the failure was:
      < snip >
      t1;
      arrary	path	value	result
      [1,2,3]	$[0]	2	NULL
      [1,2,3]	$[0]	1.2	["1.2", 1, 2, 3]
      [1,2,3]	$[0]	key1	NULL
      [1,2,3]	$[0]	1	["1", 1, 2, 3]
      [1,2,3]	$[0]	0	NULL
      [1,2,3]	$[0]	NULL	[null, 1, 2, 3]
      {"a": "foo", "b": "bar", "c": "wibble" }	$.b	4	NULL
      {"a": "foo", "b": "bar", "c": "wibble" }	$.c	grape	NULL
      {"a": "foo", "b": [1,2,3], "c": ["apple","pear"]}	$.b	4	NULL
      {"a": "foo", "b": [1,2,3], "c": ["apple","pear"]}	$.c	grape	NULL
      # NULL args
      CREATE TABLE t2(a TEXT) ENGINE = COLUMNSTORE;
      INSERT INTO t2 VALUES ('[1,2,3]');
      SELECT
      JSON_ARRAY_INSERT(a, NULL, JSON_COMPACT(1)),
      JSON_ARRAY_INSERT(a, '$', NULL)
      FROM
      t2;
       
      More results from queries before failure can be found in /var/tmp/mtr/log/func_json_array_insert.log
       
      Warnings from just before the error:
      Error 1815 Internal error: InetStreamSocket::readToMagic: Remote is closed 
      Error 1815 Internal error: ClientRotator caught exception: InetStreamSocket::connect: connect() error: Connection refused to: InetStreamSocket: sd: 89 inet: 127.0.0.1 port: 8601
       
       - skipping '/var/tmp/mtr/log/columnstore/basic.func_json_array_insert/'
      columnstore/basic.func_json_contains     [ fail ]
              Test ended at 2025-10-21 17:35:37
       
      mysqltest: At line 14: query 'CREATE TABLE t1(j LONGTEXT, v LONGTEXT, p LONGTEXT) ENGINE = columnstore' failed: ER_INTERNAL_ERROR (1815): Internal error: CAL0000: %1% %2% %3% %4% %5% %6% %7% %8% %9% %10%
       
      The result from queries just before the failure was:
      DROP DATABASE IF EXISTS json_contains_db;
      CREATE DATABASE json_contains_db;
      USE json_contains_db;
      # ----------------------------------------------------------------------
      # Test of JSON_CONTAINS function.
      # ----------------------------------------------------------------------
      CREATE TABLE t1(j LONGTEXT, v LONGTEXT, p LONGTEXT) ENGINE = columnstore;
       
       - skipping '/var/tmp/mtr/log/columnstore/basic.func_json_contains/'
      columnstore/basic.func_json_contains_path [ fail ]
              Test ended at 2025-10-21 17:35:39
       
      mysqltest: At line 32: query 'CREATE TABLE t2(j TEXT, r TEXT, p1 TEXT, p2 TEXT) ENGINE = COLUMNSTORE' failed: ER_INTERNAL_ERROR (1815): Internal error: CAL0009: (5)Create table failed due to  MCS-2045: At least one PrimProc closed the connection unexpectedly.  
       
      The result from queries just before the failure was:
      < snip >
      INSERT INTO t1 VALUES ('{"key1":1, "key2":[2,3]}', "one", "$.key1");
      INSERT INTO t1 VALUES ('{ "a": true }', NULL, '$.a');
      INSERT INTO t1 VALUES ('{ "a": true }', 'all', NULL);
      INSERT INTO t1 VALUES ('{"a":{"b":"c"}}', 'one', '$.a.*');
      SELECT
      j AS json,
      r AS return_flag,
      p AS path,
      JSON_CONTAINS_PATH(j, r, p) AS result
      FROM
      t1;
      json	return_flag	path	result
      {"key1":1, "key2":[2,3]}	oNE	$.key2[1]	0
      {"key1":1, "key2":[2,3]}	oNE	$.key2[10]	0
      {"key1":1, "key2":[2,3]}	oNE	$.ma	0
      {"key1":1, "key2":[2,3]}	one	$.key1	0
      { "a": true }	NULL	$.a	NULL
      { "a": true }	all	NULL	NULL
      {"a":{"b":"c"}}	one	$.a.*	0
      CREATE TABLE t2(j TEXT, r TEXT, p1 TEXT, p2 TEXT) ENGINE = COLUMNSTORE;
       
      More results from queries before failure can be found in /var/tmp/mtr/log/func_json_contains_path.log
       
       - skipping '/var/tmp/mtr/log/columnstore/basic.func_json_contains_path/'
      columnstore/basic.func_json_depth        [ fail ]
              Test ended at 2025-10-21 17:35:42
       
      mysqltest: At line 12: query 'CREATE TABLE t1(l LONGTEXT) ENGINE = columnstore' failed: ER_INTERNAL_ERROR (1815): Internal error: CAL0000: %1% %2% %3% %4% %5% %6% %7% %8% %9% %10%
       
      The result from queries just before the failure was:
      DROP DATABASE IF EXISTS json_depth_db;
      CREATE DATABASE json_depth_db;
      USE json_depth_db;
      # ----------------------------------------------------------------------
      # Test of JSON_DEPTH function.
      # ----------------------------------------------------------------------
      CREATE TABLE t1(l LONGTEXT) ENGINE = columnstore;
       
       - skipping '/var/tmp/mtr/log/columnstore/basic.func_json_depth/'
      

      Attachments

        Activity

          People

            drrtuy Roman
            tturenko Timofey Turenko
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.