[MDEV-13036] mysql crashes when using JSON CONNECT Created: 2017-06-08  Updated: 2017-09-07  Resolved: 2017-09-07

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - Connect
Affects Version/s: 10.2.5
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Simon Tulett Assignee: Unassigned
Resolution: Incomplete Votes: 0
Labels: need_feedback
Environment:

Windows 10 Home x64
Dell XPS 13

Heidi SQL



 Description   

When creating a table from a Mongo collection JSON export the table is successfully created.
The 1st time the table is queried results are returned without any problems
The 2nd time the table is queried the MySQL service crashes.

If the JSON connect table is dropped and re-created the 1st select statement run against the table will work but again the 2nd will not and the MySQL service crashes.

The query used to export the Mongo collection is as follows;

mongoexport --db [database_name] --collection [collection_name] --out [out_file] --fields [field_array]

The query used to create the JSON connect table is as follows;

CREATE TABLE consultation 
(
firstName char(150) field_format='clients:[x]:firstName',
lastName char(150) field_format='clients:[x]:lastName',
email char(150) field_format='clients:[x]:email',
personId char(150) field_format='clients:[x]:personId',
dropOutComments char(255) field_format='dropout::comments',
dropOutDate bigint field_format='dropout::date',
dropOutReason char(150) field_format='dropout::reason',
mode char(150),
consultationId char(150) field_format='_id::$oid'
)
engine=CONNECT
HUGE=1
DATA_CHARSET='UTF8'
table_type=JSON
file_name='consultation.json'
lrecl=2097152
option_list='pretty=0'
ending=1;

The error log is as follows;

Version: '10.2.5-MariaDB'  socket: ''  port: 3306  mariadb.org binary distribution
170608 16:30:14 [ERROR] mysqld got exception 0xc0000005 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed, 
something is definitely wrong and this may fail.
 
Server version: 10.2.5-MariaDB
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=1
max_threads=65537
thread_count=7
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 136025 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x2277c45a1b8
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...

ha_connect.dll!__intrinsic_setjmp()
ha_connect.dll!ParseJson()[json.cpp:97]
ha_connect.dll!TDBJSN::ReadDB()[tabjson.cpp:760]
ha_connect.dll!CntReadNext()[connect.cc:464]
ha_connect.dll!ha_connect::rnd_next()[ha_connect.cc:3884]
mysqld.exe!handler::ha_rnd_next()[handler.cc:2584]
mysqld.exe!rr_sequential()[records.cc:484]
mysqld.exe!sub_select()[sql_select.cc:18454]
mysqld.exe!do_select()[sql_select.cc:18001]
mysqld.exe!JOIN::exec_inner()[sql_select.cc:3465]
mysqld.exe!JOIN::exec()[sql_select.cc:3267]
mysqld.exe!mysql_select()[sql_select.cc:3660]
mysqld.exe!handle_select()[sql_select.cc:361]
mysqld.exe!execute_sqlcom_select()[sql_parse.cc:6431]
mysqld.exe!mysql_execute_command()[sql_parse.cc:3448]
mysqld.exe!mysql_parse()[sql_parse.cc:7879]
mysqld.exe!dispatch_command()[sql_parse.cc:1814]
mysqld.exe!do_command()[sql_parse.cc:1361]
mysqld.exe!threadpool_process_request()[threadpool_common.cc:346]
mysqld.exe!tp_callback()[threadpool_common.cc:192]
ntdll.dll!TpReleaseWork()
ntdll.dll!TpReleaseWork()
KERNEL32.DLL!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x2277c4ee030): select 
 
*
 
from consultation
Connection ID (thread ID): 8
Status: NOT_KILLED
 
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on
 
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.



 Comments   
Comment by Simon Tulett [ 2017-06-08 ]

ok, I've found a version that works 10.1.24

Comment by Elena Stepanova [ 2017-06-12 ]

Would you be able to provide consultation.json file?

Comment by Elena Stepanova [ 2017-07-10 ]

alice, do you think you would be able to reproduce it without the reporter's {[consultation.json}} file? Or better still, maybe it looks familiar and you have already seen it in your earlier CONNECT testing?

Comment by Alice Sherepa [ 2017-07-10 ]

Simon Tulett, can not reproduce it with my data in json, tried with 10.2.5 and 10.2.7 with Connect version 1.06 and 1.05. Please provide your .cnf file(s) and consultation.json

Comment by Elena Stepanova [ 2017-08-08 ]

SimonTulett, is it still reproducible for you on any version?

Generated at Thu Feb 08 08:02:24 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.