Assertion `!table || (!table->read_set || bitmap_is_set(table->read_set, field_index))' on REPLACE ... SELECT with MRR
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| MariaDB |
Fix Released
|
High
|
Sergey Petrunia | ||
Bug Description
When executing a REPLACE ... SELECT query, maria 5.3 asserted as follows:
mysqld: field.cc:7099: virtual String* Field_varstring
# 2010-08-28T17:12:54 #8 0x0038ed98 in __assert_fail () from /lib/libc.so.6
# 2010-08-28T17:12:54 #9 0x082567ec in Field_varstring
# 2010-08-28T17:12:54 #10 0x081bd437 in Item_field::val_str (this=0xb5d14f88, str=0xb5db7b8c) at item.cc:2103
# 2010-08-28T17:12:54 #11 0x08203051 in Item_func_
# 2010-08-28T17:12:54 #12 0x084adc9f in index_cond_
# 2010-08-28T17:12:54 #13 0x084bf78b in mi_check_index_cond (info=0xb5b49678, keynr=2, record=0xb5d3a2b0 <incomplete sequence \373>) at mi_key.c:521
# 2010-08-28T17:12:54 #14 0x084b7998 in mi_rkey (info=0xb5b49678, buf=0xb5d3a2b0 <incomplete sequence \373>, inx=2, key=0xb5de6ae0 "", keypart_map=1,
# 2010-08-28T17:12:54 search_
# 2010-08-28T17:12:54 #15 0x084addb8 in ha_myisam:
# 2010-08-28T17:12:54 find_flag=
# 2010-08-28T17:12:54 #16 0x081aa6e3 in handler:
# 2010-08-28T17:12:54 find_flag=
# 2010-08-28T17:12:54 #17 0x083cb279 in handler:
# 2010-08-28T17:12:54 #18 0x0849236a in handler:
# 2010-08-28T17:12:54 #19 0x08492daf in DsMrr_impl:
# 2010-08-28T17:12:54 #20 0x084aedfc in ha_myisam:
# 2010-08-28T17:12:54 #21 0x083aa77b in QUICK_RANGE_
# 2010-08-28T17:12:54 #22 0x083c0a99 in find_all_keys (param=0xb60d2068, select=0xb5de1230, sort_keys=
# 2010-08-28T17:12:54 at filesort.cc:568
# 2010-08-28T17:12:54 #23 0x083bfb26 in filesort (thd=0x963f408, table=0xb5d834f8, sortorder=
# 2010-08-28T17:12:54 examined_
# 2010-08-28T17:12:54 #24 0x083244bd in create_sort_index (thd=0x963f408, join=0xb5de1c50, order=0xb5db7d48, filesort_limit=7, select_limit=7, is_order_by=false)
# 2010-08-28T17:12:54 at sql_select.cc:15833
# 2010-08-28T17:12:54 #25 0x083027d7 in JOIN::exec (this=0xb5de1c50) at sql_select.cc:2298
# 2010-08-28T17:12:54 #26 0x08303209 in mysql_select (thd=0x963f408, rref_pointer_
# 2010-08-28T17:12:54 order=0xb5db7d48, group=0x0, having=0x0, proc_param=0x0, select_
# 2010-08-28T17:12:54 at sql_select.cc:2556
# 2010-08-28T17:12:54 #27 0x082fb7fb in handle_select (thd=0x963f408, lex=0x9640a88, result=0xb5de0110, setup_tables_
# 2010-08-28T17:12:54 #28 0x08293cd7 in mysql_execute_
# 2010-08-28T17:12:54 #29 0x0829c405 in mysql_parse (thd=0x963f408,
# 2010-08-28T17:12:54 inBuf=0xb5de0960 "REPLACE INTO `table10_
# 2010-08-28T17:12:54 #30 0x0828e6d2 in dispatch_command (command=COM_QUERY, thd=0x963f408,
# 2010-08-28T17:12:54 packet=0x96492c9 "REPLACE INTO `table10_
# 2010-08-28T17:12:54 #31 0x0828dbc0 in do_command (thd=0x963f408) at sql_parse.cc:890
# 2010-08-28T17:12:54 #32 0x0828ad58 in handle_
# 2010-08-28T17:12:54 #33 0x00116919 in start_thread () from /lib/libpthread
# 2010-08-28T17:12:54 #34 0x00448cbe in clone () from /lib/libc.so.6
| Changed in maria: | |
| status: | Fix Committed → Fix Released |

Test case:
--disable_ abort_on_ error
CREATE TABLE `table10_ myisam_ varchar_ 255_not_ null` ( `col_varchar_ 255_latin1` varchar(255) CHARACTER SET latin1, `col_varchar_ 255_utf8_ not_null_ key` varchar(255) CHARACTER SET utf8 not null, `col_varchar_ 255_utf8_ not_null` varchar(255) CHARACTER SET utf8 not null, `col_varchar_ 255_utf8` varchar(255) CHARACTER SET utf8, `col_varchar_ 255_utf8_ key` varchar(255) CHARACTER SET utf8, `col_varchar_ 255_latin1_ not_null_ key` varchar(255) CHARACTER SET latin1 not null, `col_varchar_ 255_latin1_ not_null` varchar(255) CHARACTER SET latin1 not null, `col_varchar_ 255_latin1_ key` varchar(255) CHARACTER SET latin1, pk varchar(255) not null, /*Indices*/ key (`col_varchar_ 255_utf8_ not_null_ key` ), key (`col_varchar_ 255_utf8_ key` ), key (`col_varchar_ 255_latin1_ not_null_ key` ), key (`col_varchar_ 255_latin1_ key` ), primary key (pk)) ENGINE=myisam; myisam_ varchar_ 255_not_ null VALUES ('g', 'nprhroncpjtwmo nhkvecqehraogrq ykdvxhcgrmqttjk efcilxufedgnint hieoytwdnqkekrl vubmnlvwcsgbhma cmmffctgzasnamw vxflwvshsctrvam ugloldoqwakvhux filhetspqxvxzox pmzqwruvjlobpmo opfkfbpcldaxiri afxeghzsvkggagz uuoijfcnpsuaulr vyyspnbubuzpnwa lcvnpqqhuctgsjx ccqlghzksjmmqfp etkwdzrsxvlihsc pcghqautjpqnmsa gscsfdwnnwvlulr wtcldabdhcbffpo pnpglaovutcwoiv qarrkphkkazbrvr yfsrbscgkttvgrv zergapsmxeziglj jswrawmoeopbtfa vkrxobtmmclkcdm gouoygohtybrdfo fbskuwxmpfahjpf danudldicjvecqt ibgfspwaaetsuvu cuimtdwwlmlmpay bhgesnbvzxihrqc slgymwdggcpzmbw lldrysuykcvvbov ajrmjeqtmhaspbd omzrjazogbxamjt yjuvrhezkjmwzwf kjbheeetomdzaup mpexuaoemtwkede djbtejcgrchpcoa aibbeouhjuenvyn nftwmokhhjmsmuc nhqdxpxwsctefbj nbkffpdnudcsaql savjplbncfoppy' , 'not', 'n', 'pnprhroncpjtwm onhkvecqehraogr qykdvxhcgrmqttj kefcilxufedgnin thieoytwdnqkekr lvubmnlvwcsgbhm acmmffctgzasnam wvxflwvshsctrva mugloldoqwakvhu xfilhetspqxvxzo xpmzqwruvjlobpm oopfkfbpcldaxir iafxeghzsvkggag zuuoijfcnpsuaul rvyyspnbubuzpnw alcvnpqqhuctgsj xccqlghzksjmmqf petkwdzrsxvlihs cpcghqautjpqnms agscsfdwnnwvlul rwtcldabdhcbffp opnpglaovutcwoi vqa', 'wpnprhroncpjtw monhkvecqehraog rqykdvxhcgrmqtt jkefcilxufedgni nthieoytwdnqkek rlvubmnlvwcsgbh macmmffctgzasna mwvxflwvshsctrv amugloldoqwakvh uxfilhetspqxvxz oxpmzqwruvjlobp moopfkfbpcldaxi riafxeghzsvkgga gzuuoijfcnpsuau lrvyyspnbubuzpn walcvnpqqhuctgs jxccqlghzksjmmq fpetkwdzrsxvlih scpcghqautjpqnm sagscsfdwnnwvlu lrwtcldabdhcbff popnpglaovutcwo ivqarrkphkkazbr vryfsrbscgkttvg rvzergapsmxezig ljjswrawmoeopbt favkrxobtmmclkc dmgouoygohtybrd fofbskuwxmpfahj pfdanudldicjvec qtibgfspwaaetsu vucuimtdwwlmlmp aybhgesnbvzxihr qcslgymwdggcpzm bwlldrysuykcvvb ovajrmjeqtmhasp bdomzrjazogbxam jtyjuvrhezkjmwz wfkjbheeetomdza upmpexuaoemtwke dedjbtejcgrchpc oaaibbeouhjuenv ynnftwmokhhjmsm ucnhqdxpxwsctef bjnbkffpdnudcsa qlsavjplbncfopp ylnwidixrnmgxwy xirmfsjqvqhhrzz gvktirzgigtnqaa abaerambciayoet ozmkvywlqledtkd ktuastnpaysuexl ktdprftanexnxiz ajmfacfgelzdgmf tercdhfxosqpuie twkrbtmrckibdvj swzoebdimrizo' , 'twpnprhroncpjt wmonhkvecqehrao grqykdvxhcgrmqt tjkefcilxufedgn inthieoytwdnqke krlvubmnlvwcsgb hmacmmffctgzasn amwvxflwvshsctr vamugloldoqwakv huxfilhetspqxvx zoxpmzqwruvjlob pmoopfkfbpcldax iriafxeghzsvkgg agzuuoijfcnpsua ulrvyyspnbubuzp nwalcvnpqqhuctg sjxccqlghzksjmm qfpetkwdzrsxvli hscpcghqautjpqn msagscsfdwnnwvl ulrwtcldabdhcbf fpopnpglaovutcw oivqarrkphkkaz. ..
INSERT /*! IGNORE */ INTO table10_