Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-38380

heap-use-after-free memory corruption in spider_fields::free_conn_holder from spd_group_by_handler

    XMLWordPrintable

Details

    • Can result in hang or crash

    Description

      While MDEV-28998 was previously fixed, the following testcase:

      --let $SOCKET= `SELECT @@global.socket`
      INSTALL PLUGIN Spider SONAME 'ha_spider.so';
      SET spider_same_server_link=ON;
      CREATE USER spider@localhost IDENTIFIED BY 'pwd';
      GRANT ALL ON test.* TO spider@localhost;
      eval CREATE SERVER srv FOREIGN DATA WRAPPER MYSQL OPTIONS (SOCKET "$SOCKET",DATABASE 'test',USER 'spider',PASSWORD 'pwd');
      CREATE TABLE t1 (c INT KEY,c1 BLOB,c2 TEXT) ENGINE=MyISAM;
      CREATE TABLE t2 (c INT KEY,c1 BLOB,c2 TEXT) ENGINE=Spider COMMENT='WRAPPER "mysql",SRV "srv",TABLE "t1"';
      CREATE TABLE t3 (c INT KEY,c1 BLOB,c2 TEXT) ENGINE=Spider COMMENT='WRAPPER "mysql",SRV "srv",TABLE "t1"';
      CREATE TABLE t4 SELECT * FROM t2 UNION ALL SELECT * FROM t3;
      

      Leads to:

      CS 12.2.0 fd15fd2765b53d0c070dd01d86fb231024b8f284 (Debug, UBASAN, Clang 21.1.3-20250923) Build 10/11/2025

      ==2066452==ERROR: AddressSanitizer: heap-use-after-free on address 0x6e2b91eb39f8 at pc 0x6c3b6e7df851 bp 0x6c3b70b00010 sp 0x6c3b70b00008
      WRITE of size 8 at 0x6e2b91eb39f8 thread T5
          #0 0x6c3b6e7df850 in spider_fields::free_conn_holder(spider_conn_holder*) /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:824:56
          #1 0x6c3b6e7df065 in spider_fields::~spider_fields() /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:71:7
          #2 0x6c3b6e7df87d in spider_fields::~spider_fields() /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:55:1
          #3 0x6c3b6e7ebc6b in spider_group_by_handler::~spider_group_by_handler() /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:1003:3
          #4 0x6c3b6e7ebf0d in spider_group_by_handler::~spider_group_by_handler() /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:1000:1
          #5 0x5ca33ce6fb84 in Pushdown_query::~Pushdown_query() /test/12.2_dbg_san/sql/sql_select.h:2717:23
          #6 0x5ca33ce6fb84 in JOIN::cleanup(bool) /test/12.2_dbg_san/sql/sql_select.cc:17425:5
          #7 0x5ca33ce6eb2b in JOIN::destroy() /test/12.2_dbg_san/sql/sql_select.cc:5164:3
          #8 0x5ca33d201aeb in st_select_lex::cleanup() /test/12.2_dbg_san/sql/sql_union.cc:2975:18
          #9 0x5ca33d1ecd2d in st_select_lex_unit::cleanup() /test/12.2_dbg_san/sql/sql_union.cc:2781:17
          #10 0x5ca33d1e30a0 in mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long long) /test/12.2_dbg_san/sql/sql_union.cc:46:15
          #11 0x5ca33cdc0d8d in handle_select(THD*, LEX*, select_result*, unsigned long long) /test/12.2_dbg_san/sql/sql_select.cc:626:10
          #12 0x5ca33d1932ed in Sql_cmd_create_table_like::execute(THD*) /test/12.2_dbg_san/sql/sql_table.cc:13731:20
          #13 0x5ca33cc55053 in mysql_execute_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:5861:26
          #14 0x5ca33cc381e8 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /test/12.2_dbg_san/sql/sql_parse.cc:7888:18
          #15 0x5ca33cc319a3 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1878:7
          #16 0x5ca33cc3a62a in do_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1417:17
          #17 0x5ca33d447b3c in do_handle_one_connection(CONNECT*, bool) /test/12.2_dbg_san/sql/sql_connect.cc:1503:11
          #18 0x5ca33d447645 in handle_one_connection /test/12.2_dbg_san/sql/sql_connect.cc:1415:5
          #19 0x5ca33bb96b4a in asan_thread_start(void*) crtstuff.c
          #20 0x703b9309ca93 in start_thread nptl/pthread_create.c:447:8
          #21 0x703b93129c3b in clone3 misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
       
      0x6e2b91eb39f8 is located 2424 bytes inside of 3296-byte region [0x6e2b91eb3080,0x6e2b91eb3d60)
      freed by thread T5 here:
          #0 0x5ca33bb9902a in free (/test/UBASAN_MD101125-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd+0x3c9802a) (BuildId: 7b0cb8241b81c77e02045f0095ce4e038036f58e)
          #1 0x6c3b6e6b5a2e in spider_free_mem(st_spider_transaction*, void*, unsigned long) /test/12.2_dbg_san/storage/spider/spd_malloc.cc:182:3
          #2 0x6c3b6e5696bf in spider_free_conn(st_spider_conn*) /test/12.2_dbg_san/storage/spider/spd_conn.cc:825:3
          #3 0x6c3b6e488b83 in spider_free_trx_conn(st_spider_transaction*, bool) /test/12.2_dbg_san/storage/spider/spd_trx.cc:119:9
          #4 0x6c3b6e4af5ce in spider_commit(THD*, bool) /test/12.2_dbg_san/storage/spider/spd_trx.cc:2942:5
          #5 0x5ca33bcbafff in commit_one_phase_2(THD*, bool, THD_TRANS*, bool) /test/12.2_dbg_san/sql/handler.cc:2249:17
          #6 0x5ca33bcb740e in ha_commit_trans(THD*, bool) /test/12.2_dbg_san/sql/handler.cc:1979:12
          #7 0x5ca33d4b093d in trans_commit_stmt(THD*) /test/12.2_dbg_san/sql/transaction.cc:498:10
          #8 0x5ca33cb311ef in select_create::send_eof() /test/12.2_dbg_san/sql/sql_insert.cc:5508:9
          #9 0x5ca33d0bb31c in Pushdown_query::execute(JOIN*) /test/12.2_dbg_san/sql/group_by_handler.cc:129:50
          #10 0x5ca33ce6ba34 in do_select(JOIN*, Procedure*) /test/12.2_dbg_san/sql/sql_select.cc:23952:36
          #11 0x5ca33ce6917f in JOIN::exec_inner() /test/12.2_dbg_san/sql/sql_select.cc:5134:50
          #12 0x5ca33ce66348 in JOIN::exec() /test/12.2_dbg_san/sql/sql_select.cc:4922:8
          #13 0x5ca33d205a41 in st_select_lex_unit::exec_inner() /test/12.2_dbg_san/sql/sql_union.cc:2455:27
          #14 0x5ca33d1e3090 in mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long long) /test/12.2_dbg_san/sql/sql_union.cc:45:16
          #15 0x5ca33cdc0d8d in handle_select(THD*, LEX*, select_result*, unsigned long long) /test/12.2_dbg_san/sql/sql_select.cc:626:10
          #16 0x5ca33d1932ed in Sql_cmd_create_table_like::execute(THD*) /test/12.2_dbg_san/sql/sql_table.cc:13731:20
          #17 0x5ca33cc55053 in mysql_execute_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:5861:26
          #18 0x5ca33cc381e8 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /test/12.2_dbg_san/sql/sql_parse.cc:7888:18
          #19 0x5ca33cc319a3 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1878:7
          #20 0x5ca33cc3a62a in do_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1417:17
          #21 0x5ca33d447b3c in do_handle_one_connection(CONNECT*, bool) /test/12.2_dbg_san/sql/sql_connect.cc:1503:11
          #22 0x5ca33d447645 in handle_one_connection /test/12.2_dbg_san/sql/sql_connect.cc:1415:5
          #23 0x5ca33bb96b4a in asan_thread_start(void*) crtstuff.c
       
      previously allocated by thread T5 here:
          #0 0x5ca33bb992c8 in malloc (/test/UBASAN_MD101125-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd+0x3c982c8) (BuildId: 7b0cb8241b81c77e02045f0095ce4e038036f58e)
          #1 0x5ca33ee023a6 in my_malloc /test/12.2_dbg_san/mysys/my_malloc.c:93:29
          #2 0x6c3b6e6b5e5b in spider_bulk_alloc_mem(st_spider_transaction*, unsigned int, char const*, char const*, unsigned long, unsigned long, ...) /test/12.2_dbg_san/storage/spider/spd_malloc.cc:230:29
          #3 0x6c3b6e56ad6b in spider_create_conn(st_spider_share*, ha_spider*, int, int, int*) /test/12.2_dbg_san/storage/spider/spd_conn.cc:427:7
          #4 0x6c3b6e5756b6 in spider_get_conn(st_spider_share*, int, char*, st_spider_transaction*, ha_spider*, bool, bool, int*) /test/12.2_dbg_san/storage/spider/spd_conn.cc:730:19
          #5 0x6c3b6e62d160 in spider_share_get_conns(ha_spider*, st_spider_share*, int*) /test/12.2_dbg_san/storage/spider/spd_table.cc:5212:11
          #6 0x6c3b6e634d59 in spider_init_share(char const*, TABLE*, THD*, ha_spider*, int*, st_spider_share*, TABLE_SHARE*, bool) /test/12.2_dbg_san/storage/spider/spd_table.cc:5472:7
          #7 0x6c3b6e636ba2 in spider_get_share(char const*, TABLE*, THD*, ha_spider*, int*) /test/12.2_dbg_san/storage/spider/spd_table.cc:5586:9
          #8 0x6c3b6e6dc37b in ha_spider::open(char const*, int, unsigned int) /test/12.2_dbg_san/storage/spider/ha_spider.cc:270:20
          #9 0x5ca33bcc718e in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /test/12.2_dbg_san/sql/handler.cc:3672:7
          #10 0x5ca33d2b3758 in open_table_from_share(THD*, TABLE_SHARE*, st_mysql_const_lex_string const*, unsigned int, unsigned int, unsigned int, TABLE*, bool, List<String>*) /test/12.2_dbg_san/sql/table.cc:4694:33
          #11 0x5ca33c74b539 in open_table(THD*, TABLE_LIST*, Open_table_context*) /test/12.2_dbg_san/sql/sql_base.cc:2321:12
          #12 0x5ca33c75ed35 in open_and_process_table(THD*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) /test/12.2_dbg_san/sql/sql_base.cc:4273:14
          #13 0x5ca33c75ed35 in open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) /test/12.2_dbg_san/sql/sql_base.cc:4756:14
          #14 0x5ca33c76fff1 in open_and_lock_tables(THD*, DDL_options_st const&, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*) /test/12.2_dbg_san/sql/sql_base.cc:5797:7
          #15 0x5ca33d192ea2 in open_and_lock_tables(THD*, DDL_options_st const&, TABLE_LIST*, bool, unsigned int) /test/12.2_dbg_san/sql/sql_base.h:529:10
          #16 0x5ca33d192ea2 in Sql_cmd_create_table_like::execute(THD*) /test/12.2_dbg_san/sql/sql_table.cc:13675:10
          #17 0x5ca33cc55053 in mysql_execute_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:5861:26
          #18 0x5ca33cc381e8 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /test/12.2_dbg_san/sql/sql_parse.cc:7888:18
          #19 0x5ca33cc319a3 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1878:7
          #20 0x5ca33cc3a62a in do_command(THD*, bool) /test/12.2_dbg_san/sql/sql_parse.cc:1417:17
          #21 0x5ca33d447b3c in do_handle_one_connection(CONNECT*, bool) /test/12.2_dbg_san/sql/sql_connect.cc:1503:11
          #22 0x5ca33d447645 in handle_one_connection /test/12.2_dbg_san/sql/sql_connect.cc:1415:5
          #23 0x5ca33bb96b4a in asan_thread_start(void*) crtstuff.c
       
      Thread T5 created by T0 here:
          #0 0x5ca33bb7d245 in pthread_create (/test/UBASAN_MD101125-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd+0x3c7c245) (BuildId: 7b0cb8241b81c77e02045f0095ce4e038036f58e)
          #1 0x5ca33bbf0b8c in create_thread_to_handle_connection(CONNECT*) /test/12.2_dbg_san/sql/mysqld.cc:6273:19
          #2 0x5ca33bbf1c15 in handle_connections_sockets() /test/12.2_dbg_san/sql/mysqld.cc:6509:9
          #3 0x5ca33bbf019a in run_main_loop() /test/12.2_dbg_san/sql/mysqld.cc:5751:3
          #4 0x5ca33bbe5b3e in mysqld_main(int, char**) /test/12.2_dbg_san/sql/mysqld.cc:6174:3
          #5 0x703b9302a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16
          #6 0x703b9302a28a in __libc_start_main csu/../csu/libc-start.c:360:3
          #7 0x5ca33baf3b54 in _start (/test/UBASAN_MD101125-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd+0x3bf2b54) (BuildId: 7b0cb8241b81c77e02045f0095ce4e038036f58e)
       
      SUMMARY: AddressSanitizer: heap-use-after-free /test/12.2_dbg_san/storage/spider/spd_group_by_handler.cc:824:56 in spider_fields::free_conn_holder(spider_conn_holder*)
      Shadow bytes around the buggy address:
        0x6e2b91eb3700: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3780: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3800: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3880: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3900: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
      =>0x6e2b91eb3980: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd[fd]
        0x6e2b91eb3a00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3a80: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3b00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3b80: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
        0x6e2b91eb3c00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
      Shadow byte legend (one shadow byte represents 8 application bytes):
        Addressable:           00
        Partially addressable: 01 02 03 04 05 06 07 
        Heap left redzone:       fa
        Freed heap region:       fd
        Stack left redzone:      f1
        Stack mid redzone:       f2
        Stack right redzone:     f3
        Stack after return:      f5
        Stack use after scope:   f8
        Global redzone:          f9
        Global init order:       f6
        Poisoned by user:        f7
        Container overflow:      fc
        Array cookie:            ac
        Intra object redzone:    bb
        ASan internal:           fe
        Left alloca redzone:     ca
        Right alloca redzone:    cb
      ==2066452==ABORTING
      

      Setup:

      Compiled with a recent version of Clang and LLVM. Ubuntu instructions for Clang/LLVM 18:
        # Note: It is strongly recommended to uninstall all old Clang & LLVM packages (ref  dpkg --list | grep -iE 'clang|llvm'  and use  apt purge  and  dpkg --purge  to remove the packages), before installing Clang/LLVM 18
           sudo apt install clang llvm-18 llvm-18-linker-tools llvm-18-runtime llvm-18-tools llvm-18-dev libstdc++-14-dev llvm-dev lld-18
      Compiled with: "-DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_C{,XX}_FLAGS='-march=native -mtune=native'" and:
          -DWITH_ASAN=ON -DWITH_ASAN_SCOPE=ON -DWITH_UBSAN=ON -DWSREP_LIB_WITH_ASAN=ON
      Set before execution:
          export UBSAN_OPTIONS=print_stacktrace=1:report_error_type=1   # And you may also want to supress UBSAN startup issues using 'suppressions=UBSAN.filter' in UBSAN_OPTIONS. For an example of UBSAN.filter, which includes current startup issues see: https://github.com/mariadb-corporation/mariadb-qa/blob/master/UBSAN.filter
          export ASAN_OPTIONS=quarantine_size_mb=512:atexit=0:detect_invalid_pointer_pairs=3:dump_instruction_bytes=1:abort_on_error=1:allocator_may_return_null=1
      

      SAN Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed             
      CS  10.6   dbg  101125  759e3523e3d832b174cf0a612704da38b2557b40  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  10.6   opt  101125  759e3523e3d832b174cf0a612704da38b2557b40  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  10.11  dbg  101125  536cd151f0370216d9ba4c15f40c7037060972a5  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  10.11  opt  101125  536cd151f0370216d9ba4c15f40c7037060972a5  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  11.4   dbg  101125  a1bb5c94fda453baa99e57e3927eaa7cd3c8bafe  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  11.4   opt  101125  a1bb5c94fda453baa99e57e3927eaa7cd3c8bafe  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  11.8   dbg  101125  e0428264d0095472c015eb58c46be68ca1a320ee  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  11.8   opt  101125  e0428264d0095472c015eb58c46be68ca1a320ee  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.1   dbg  101125  ba00960fdaee67a4efff6866e31f446bf486a1c2  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.1   opt  101125  ba00960fdaee67a4efff6866e31f446bf486a1c2  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.2   dbg  101125  fd15fd2765b53d0c070dd01d86fb231024b8f284  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.2   opt  101125  fd15fd2765b53d0c070dd01d86fb231024b8f284  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.3   dbg  091225  e85bc659188be021897e8578aec42becfbb58c27  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      CS  12.3   opt  091225  e85bc659188be021897e8578aec42becfbb58c27  ASAN|heap-use-after-free|storage/spider/spd_group_by_handler.cc|spider_fields::free_conn_holder|spider_fields::~spider_fields|spider_fields::~spider_fields|spider_group_by_handler::~spider_group_by_handler
      ES  10.6   dbg  101125  f0d4d34fb0314b03fddb71fb9dbde372744a8c13  No bug found                  
      ES  10.6   opt  101125  f0d4d34fb0314b03fddb71fb9dbde372744a8c13  No bug found                  
      ES  11.4   dbg  101125  b81ec4b57a5ddce88b8e2b2d16b64625ffdaa0e6  No bug found                  
      ES  11.4   opt  101125  b81ec4b57a5ddce88b8e2b2d16b64625ffdaa0e6  No bug found                  
      ES  11.8   dbg  101125  db36e8fb3bcdae26dd0acdcb2b52f7f4eb014df6  No bug found                  
      ES  11.8   opt  101125  db36e8fb3bcdae26dd0acdcb2b52f7f4eb014df6  No bug found                  
      

      The issue is sporadic and does not seem present in ES, which consistently produces:

      ES 11.8.4-2 db36e8fb3bcdae26dd0acdcb2b52f7f4eb014df6 (Debug, UBASAN, Clang 21.1.3-20250923) Build 10/11/2025

      11.8.4-dbg>CREATE TABLE t4 SELECT * FROM t2 UNION ALL SELECT * FROM t3;
      ERROR 1429 (HY000): Unable to connect to foreign data source: srv
      

      Attachments

        Issue Links

          Activity

            People

              ycp Yuchen Pei
              Roel Roel Van de Paar
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.