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

Assertion `inited==RND' failed in handler::ha_rnd_end() or crash in in ha_innobase::innobase_get_index

Details

    • Bug
    • Status: Closed (View Workflow)
    • Critical
    • Resolution: Fixed
    • 10.3(EOL)
    • 10.3.11
    • Partitioning
    • None

    Description

      --source include/have_innodb.inc
      --source include/have_partition.inc
       
      CREATE TABLE t1 (
        pk int NOT NULL ,
        col_int_nokey int,
        col_int_key int,
        col_varchar_key varchar(3),
        col_varchar_nokey varchar(35),
        PRIMARY KEY (pk),
        KEY col_int_key (col_int_key),
        KEY col_varchar_key (col_varchar_key,col_varchar_nokey)
      )WITH SYSTEM VERSIONING
       PARTITION BY SYSTEM_TIME INTERVAL 8 DAY
      (PARTITION ver_p1 HISTORY ENGINE = InnoDB,
       PARTITION ver_pn CURRENT ENGINE = InnoDB);
       
       
      INSERT INTO t1 VALUES (3793,801,801,'USA','New York'),(3794,369,369,'USA','Los Angeles'),(3795,290,290,'USA','Chicago'),(3796,195,195,'USA','Houston'),(3797,152,152,'USA','Philadelphia'),(3798,132,132,'USA','Phoenix'),(3799,122,122,'USA','San Diego'),(3800,119,119,'USA','Dallas'),(3801,114,114,'USA','San Antonio'),(3802,95,95,'USA','Detroit'),(3803,89,89,'USA','San Jose'),(3804,79,79,'USA','Indianapolis'),(3805,78,78,'USA','San Francisco'),(3806,74,74,'USA','Jacksonville'),(3807,71,71,'USA','Columbus'),(3808,66,66,'USA','Austin'),(3809,65,65,'USA','Baltimore'),(3810,65,65,'USA','Memphis'),(3811,60,60,'USA','Milwaukee'),(3812,59,59,'USA','Boston'),(3813,57,57,'USA','Washington'),(3814,57,57,'USA','Nashville-Davidson'),(3815,56,56,'USA','El Paso'),(3816,56,56,'USA','Seattle'),(3817,55,55,'USA','Denver'),(3818,54,54,'USA','Charlotte'),(3819,53,53,'USA','Fort Worth'),(3820,53,53,'USA','Portland'),(3821,51,51,'USA','Oklahoma City'),(3822,49,49,'USA','Tucson'),(3823,48,48,'USA','New Orleans'),(3824,48,48,'USA','Las Vegas'),(3825,48,48,'USA','Cleveland'),(3826,46,46,'USA','Long Beach'),(3827,45,45,'USA','Albuquerque'),(3828,44,44,'USA','Kansas City'),(3829,43,43,'USA','Fresno'),(3830,43,43,'USA','Virginia Beach'),(3831,42,42,'USA','Atlanta'),(3832,41,41,'USA','Sacramento'),(3833,40,40,'USA','Oakland'),(3834,40,40,'USA','Mesa'),(3835,39,39,'USA','Tulsa'),(3836,39,39,'USA','Omaha'),(3837,38,38,'USA','Minneapolis'),(3838,37,37,'USA','Honolulu'),(3839,36,36,'USA','Miami'),(3840,36,36,'USA','Colorado Springs'),(3841,35,35,'USA','Saint Louis'),(3842,34,34,'USA','Wichita'),(3843,34,34,'USA','Santa Ana'),(3844,33,33,'USA','Pittsburgh'),(3845,33,33,'USA','Arlington'),(3846,33,33,'USA','Cincinnati'),(3847,33,33,'USA','Anaheim'),(3848,31,31,'USA','Toledo'),(3849,30,30,'USA','Tampa'),(3850,29,29,'USA','Buffalo'),(3851,29,29,'USA','Saint Paul'),(3852,28,28,'USA','Corpus Christi'),(3853,28,28,'USA','Aurora'),(3854,28,28,'USA','Raleigh'),(3855,27,27,'USA','Newark'),(3856,26,26,'USA','Lexington-Fayette'),(3857,26,26,'USA','Anchorage'),(3858,26,26,'USA','Louisville'),(3859,26,26,'USA','Riverside'),(3860,25,25,'USA','Saint Petersburg'),(3861,25,25,'USA','Bakersfield'),(3862,24,24,'USA','Stockton'),(3863,24,24,'USA','Birmingham'),(3864,24,24,'USA','Jersey City'),(3865,23,23,'USA','Norfolk'),(3866,23,23,'USA','Baton Rouge'),(3867,23,23,'USA','Hialeah'),(3868,23,23,'USA','Lincoln'),(3869,22,22,'USA','Greensboro'),(3870,22,22,'USA','Plano'),(3871,22,22,'USA','Rochester'),(3872,22,22,'USA','Glendale'),(3873,22,22,'USA','Akron'),(3874,22,22,'USA','Garland'),(3875,21,21,'USA','Madison'),(3876,21,21,'USA','Fort Wayne'),(3877,20,20,'USA','Fremont'),(3878,20,20,'USA','Scottsdale'),(3879,20,20,'USA','Montgomery'),(3880,20,20,'USA','Shreveport'),(3881,20,20,'USA','Augusta-Richmond County'),(3882,20,20,'USA','Lubbock'),(3883,20,20,'USA','Chesapeake'),(3884,20,20,'USA','Mobile'),(3885,20,20,'USA','Des Moines'),(3886,20,20,'USA','Grand Rapids'),(3887,20,20,'USA','Richmond'),(3888,20,20,'USA','Yonkers'),(3889,20,20,'USA','Spokane'),(3890,19,19,'USA','Glendale'),(3891,19,19,'USA','Tacoma'),(3892,19,19,'USA','Irving'),(3893,19,19,'USA','Huntington Beach'),(3894,19,19,'USA','Modesto'),(3895,19,19,'USA','Durham'),(3896,19,19,'USA','Columbus'),(3897,19,19,'USA','Orlando'),(3898,19,19,'USA','Boise City'),(3899,19,19,'USA','Winston-Salem'),(3900,19,19,'USA','San Bernardino'),(3901,18,18,'USA','Jackson'),(3902,18,18,'USA','Little Rock'),(3903,18,18,'USA','Salt Lake City'),(3904,18,18,'USA','Reno'),(3905,18,18,'USA','Newport News'),(3906,18,18,'USA','Chandler'),(3907,18,18,'USA','Laredo'),(3908,18,18,'USA','Henderson'),(3909,17,17,'USA','Arlington'),(3910,17,17,'USA','Knoxville'),(3911,17,17,'USA','Amarillo'),(3912,17,17,'USA','Providence'),(3913,17,17,'USA','Chula Vista'),(3914,17,17,'USA','Worcester'),(3915,17,17,'USA','Oxnard'),(3916,17,17,'USA','Dayton'),(3917,17,17,'USA','Garden Grove'),(3918,16,16,'USA','Oceanside'),(3919,16,16,'USA','Tempe'),(3920,16,16,'USA','Huntsville'),(3921,16,16,'USA','Ontario'),(3922,16,16,'USA','Chattanooga'),(3923,15,15,'USA','Fort Lauderdale'),(3924,15,15,'USA','Springfield'),(3925,15,15,'USA','Springfield'),(3926,15,15,'USA','Santa Clarita'),(3927,15,15,'USA','Salinas'),(3928,15,15,'USA','Tallahassee'),(3929,15,15,'USA','Rockford'),(3930,15,15,'USA','Pomona'),(3931,15,15,'USA','Metairie'),(3932,15,15,'USA','Paterson'),(3933,15,15,'USA','Overland Park'),(3934,15,15,'USA','Santa Rosa'),(3935,15,15,'USA','Syracuse'),(3936,15,15,'USA','Kansas City'),(3937,15,15,'USA','Hampton'),(3938,14,14,'USA','Lakewood'),(3939,14,14,'USA','Vancouver'),(3940,14,14,'USA','Irvine'),(3941,14,14,'USA','Aurora'),(3942,14,14,'USA','Moreno Valley'),(3943,14,14,'USA','Pasadena'),(3944,14,14,'USA','Hayward'),(3945,14,14,'USA','Brownsville'),(3946,14,14,'USA','Bridgeport'),(3947,14,14,'USA','Hollywood'),(3948,14,14,'USA','Warren'),(3949,14,14,'USA','Torrance'),(3950,14,14,'USA','Eugene'),(3951,14,14,'USA','Pembroke Pines'),(3952,14,14,'USA','Salem'),(3953,13,13,'USA','Pasadena'),(3954,13,13,'USA','Escondido'),(3955,13,13,'USA','Sunnyvale'),(3956,13,13,'USA','Savannah'),(3957,13,13,'USA','Fontana'),(3958,13,13,'USA','Orange'),(3959,13,13,'USA','Naperville'),(3960,13,13,'USA','Alexandria'),(3961,13,13,'USA','Rancho Cucamonga'),(3962,13,13,'USA','Grand Prairie'),(3963,13,13,'USA','East Los Angeles'),(3964,13,13,'USA','Fullerton'),(3965,12,12,'USA','Corona'),(3966,12,12,'USA','Flint'),(3967,12,12,'USA','Paradise'),(3968,12,12,'USA','Mesquite'),(3969,12,12,'USA','Sterling Heights'),(3970,12,12,'USA','Sioux Falls'),(3971,12,12,'USA','New Haven'),(3972,12,12,'USA','Topeka'),(3973,12,12,'USA','Concord'),(3974,12,12,'USA','Evansville'),(3975,12,12,'USA','Hartford'),(3976,12,12,'USA','Fayetteville'),(3977,12,12,'USA','Cedar Rapids'),(3978,12,12,'USA','Elizabeth'),(3979,12,12,'USA','Lansing'),(3980,12,12,'USA','Lancaster'),(3981,12,12,'USA','Fort Collins'),(3982,12,12,'USA','Coral Springs'),(3983,12,12,'USA','Stamford'),(3984,12,12,'USA','Thousand Oaks'),(3985,12,12,'USA','Vallejo'),(3986,12,12,'USA','Palmdale'),(3987,12,12,'USA','Columbia'),(3988,12,12,'USA','El Monte'),(3989,12,12,'USA','Abilene'),(3990,12,12,'USA','North Las Vegas'),(3991,11,11,'USA','Ann Arbor'),(3992,11,11,'USA','Beaumont'),(3993,11,11,'USA','Waco'),(3994,11,11,'USA','Macon'),(3995,11,11,'USA','Independence'),(3996,11,11,'USA','Peoria'),(3997,11,11,'USA','Inglewood'),(3998,11,11,'USA','Springfield'),(3999,11,11,'USA','Simi Valley'),(4000,11,11,'USA','Lafayette'),(4001,11,11,'USA','Gilbert'),(4002,11,11,'USA','Carrollton'),(4003,11,11,'USA','Bellevue'),(4004,11,11,'USA','West Valley City'),(4005,11,11,'USA','Clarksville'),(4006,11,11,'USA','Costa Mesa'),(4007,11,11,'USA','Peoria'),(4008,11,11,'USA','South Bend'),(4009,11,11,'USA','Downey'),(4010,11,11,'USA','Waterbury'),(4011,11,11,'USA','Manchester'),(4012,11,11,'USA','Allentown'),(4013,11,11,'USA','McAllen'),(4014,11,11,'USA','Joliet'),(4015,11,11,'USA','Lowell'),(4016,11,11,'USA','Provo'),(4017,11,11,'USA','West Covina'),(4018,10,10,'USA','Wichita Falls'),(4019,10,10,'USA','Erie'),(4020,10,10,'USA','Daly City'),(4021,10,10,'USA','Citrus Heights'),(4022,10,10,'USA','Norwalk'),(4023,10,10,'USA','Gary'),(4024,10,10,'USA','Berkeley'),(4025,10,10,'USA','Santa Clara'),(4026,10,10,'USA','Green Bay'),(4027,10,10,'USA','Cape Coral'),(4028,10,10,'USA','Arvada'),(4029,10,10,'USA','Pueblo'),(4030,10,10,'USA','Sandy'),(4031,10,10,'USA','Athens-Clarke County'),(4032,10,10,'USA','Cambridge'),(4033,10,10,'USA','Westminster'),(4034,10,10,'USA','San Buenaventura'),(4035,10,10,'USA','Portsmouth'),(4036,10,10,'USA','Livonia'),(4037,10,10,'USA','Burbank'),(4038,10,10,'USA','Clearwater'),(4039,10,10,'USA','Midland'),(4040,10,10,'USA','Davenport'),(4041,10,10,'USA','Mission Viejo'),(4042,10,10,'USA','Miami Beach'),(4043,10,10,'USA','Sunrise Manor'),(4044,9,9,'USA','New Bedford'),(4045,9,9,'USA','El Cajon'),(4046,9,9,'USA','Norman'),(4047,9,9,'USA','Richmond'),(4048,9,9,'USA','Albany'),(4049,9,9,'USA','Brockton'),(4050,9,9,'USA','Roanoke'),(4051,9,9,'USA','Billings'),(4052,9,9,'USA','Compton'),(4053,9,9,'USA','Gainesville'),(4054,9,9,'USA','Fairfield'),(4055,9,9,'USA','Arden-Arcade'),(4056,9,9,'USA','San Mateo'),(4057,9,9,'USA','Visalia'),(4058,9,9,'USA','Boulder'),(4059,9,9,'USA','Cary'),(4060,9,9,'USA','Santa Monica'),(4061,9,9,'USA','Fall River'),(4062,9,9,'USA','Kenosha'),(4063,9,9,'USA','Elgin'),(4064,9,9,'USA','Odessa'),(4065,9,9,'USA','Carson'),(4066,9,9,'USA','Charleston'),(4067,NULL,NULL,NULL,NULL),(4068,NULL,NULL,NULL,NULL),(4069,NULL,NULL,NULL,NULL),(4070,NULL,NULL,NULL,NULL);
       
      SELECT COUNT(*) FROM t1
      WHERE col_varchar_nokey IS NULL 
        AND col_int_key IS NULL
        AND col_varchar_key IS NULL;
      

       10.3 7aba6f8f8853acd18d471793f8b72aa1412b8151
      Thread 1 (Thread 0x7f41c2544700 (LWP 32620)):
      #0  __pthread_kill (threadid=<optimized out>, signo=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:62
      #1  0x00005598fd9cf362 in my_write_core (sig=6) at /10.3/mysys/stacktrace.c:481
      #2  0x00005598fd21833f in handle_fatal_signal (sig=6) at /10.3/sql/signal_handler.cc:305
      #3  <signal handler called>
      #4  0x00007f41c8f4e428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
      #5  0x00007f41c8f5002a in __GI_abort () at abort.c:89
      #6  0x00007f41c8f46bd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x5598fda80694 "inited==RND", file=file@entry=0x5598fda80630 "/10.3/sql/handler.h", line=line@entry=3069, function=function@entry=0x5598fda84a70 <handler::ha_rnd_end()::__PRETTY_FUNCTION__> "int handler::ha_rnd_end()") at assert.c:92
      #7  0x00007f41c8f46c82 in __GI___assert_fail (assertion=0x5598fda80694 "inited==RND", file=0x5598fda80630 "/10.3/sql/handler.h", line=3069, function=0x5598fda84a70 <handler::ha_rnd_end()::__PRETTY_FUNCTION__> "int handler::ha_rnd_end()") at assert.c:101
      #8  0x00005598fce914e0 in handler::ha_rnd_end (this=0x7f4178078d78) at /10.3/sql/handler.h:3069
      #9  0x00005598fd0d9fa5 in DsMrr_impl::dsmrr_init (this=0x7f41780791c0, h_arg=0x7f4178078d78, seq_funcs=0x7f4178098660, seq_init_param=0x7f4178098788, n_ranges=1, mode=72, buf=0x7f4178098728) at /10.3/sql/multi_range_read.cc:1016
      #10 0x00005598fd580440 in ha_innobase::multi_range_read_init (this=0x7f4178078d78, seq=0x7f4178098660, seq_init_param=0x7f4178098788, n_ranges=1, mode=72, buf=0x7f4178098728) at /10.3/storage/innobase/handler/ha_innodb.cc:20335
      #11 0x00005598fd98eed4 in ha_partition::multi_range_read_init (this=0x7f4178097e78, seq=0x7f41c2542270, seq_init_param=0x7f4178091000, n_ranges=1, mrr_mode=72, buf=0x7f41c2542230) at /10.3/sql/ha_partition.cc:6440
      #12 0x00005598fd38e8ad in QUICK_RANGE_SELECT::reset (this=0x7f4178091000) at /10.3/sql/opt_range.cc:11411
      #13 0x00005598fd377660 in QUICK_ROR_INTERSECT_SELECT::reset (this=0x7f4178090f40) at /10.3/sql/opt_range.cc:1650
      #14 0x00005598fcfa0621 in join_init_read_record (tab=0x7f4178018890) at /10.3/sql/sql_select.cc:20212
      #15 0x00005598fcf9e403 in sub_select (join=0x7f4178015ec8, join_tab=0x7f4178018890, end_of_records=false) at /10.3/sql/sql_select.cc:19292
      #16 0x00005598fcf9d9a1 in do_select (join=0x7f4178015ec8, procedure=0x0) at /10.3/sql/sql_select.cc:18835
      #17 0x00005598fcf76c59 in JOIN::exec_inner (this=0x7f4178015ec8) at /10.3/sql/sql_select.cc:4035
      #18 0x00005598fcf760cc in JOIN::exec (this=0x7f4178015ec8) at /10.3/sql/sql_select.cc:3829
      #19 0x00005598fcf77333 in mysql_select (thd=0x7f4178000b00, tables=0x7f4178015098, wild_num=0, fields=..., conds=0x7f4178015ac0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7f4178015ea0, unit=0x7f41780049b0, select_lex=0x7f4178005120) at /10.3/sql/sql_select.cc:4234
      #20 0x00005598fcf69290 in handle_select (thd=0x7f4178000b00, lex=0x7f41780048e8, result=0x7f4178015ea0, setup_tables_done_option=0) at /10.3/sql/sql_select.cc:382
      #21 0x00005598fcf33b6c in execute_sqlcom_select (thd=0x7f4178000b00, all_tables=0x7f4178015098) at /10.3/sql/sql_parse.cc:6547
      #22 0x00005598fcf29fc3 in mysql_execute_command (thd=0x7f4178000b00) at /10.3/sql/sql_parse.cc:3769
      #23 0x00005598fcf37af1 in mysql_parse (thd=0x7f4178000b00, rawbuf=0x7f4178014d18 "SELECT COUNT(*) FROM t1\nWHERE col_varchar_nokey IS NULL \nAND col_int_key IS NULL\nAND col_varchar_key IS NULL", length=108, parser_state=0x7f41c2543470, is_com_multi=false, is_next_command=false) at /10.3/sql/sql_parse.cc:8089
      #24 0x00005598fcf24a96 in dispatch_command (command=COM_QUERY, thd=0x7f4178000b00, packet=0x7f41781671f1 "", packet_length=108, is_com_multi=false, is_next_command=false) at /10.3/sql/sql_parse.cc:1850
      #25 0x00005598fcf234b3 in do_command (thd=0x7f4178000b00) at /10.3/sql/sql_parse.cc:1395
      #26 0x00005598fd089f3b in do_handle_one_connection (connect=0x5598ff513b50) at /10.3/sql/sql_connect.cc:1402
      #27 0x00005598fd089c8c in handle_one_connection (arg=0x5598ff513b50) at /10.3/sql/sql_connect.cc:1308
      #28 0x00005598fd95f748 in pfs_spawn_thread (arg=0x5598ff51bec0) at /10.3/storage/perfschema/pfs.cc:1862
      #29 0x00007f41c9b8b6ba in start_thread (arg=0x7f41c2544700) at pthread_create.c:333
      #30 0x00007f41c902041d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
      
      

      Attachments

        Issue Links

          Activity

            alice Alice Sherepa added a comment -

            adding just to make it searchable.
            same t1, but with the query

            SELECT COUNT(*),col_int_key  FROM t1 WHERE col_varchar_nokey IS NULL    AND col_int_key IS NULL   AND col_varchar_key IS NULL
            

             10.3.9
            /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fd9572c1390]
            sql/ha_partition.cc:7671(ha_partition::return_top_record(unsigned char*))[0x56377ac32cbf]
            sql/ha_partition.cc:7640(ha_partition::handle_ordered_index_scan(unsigned char*, bool))[0x56377ac32ec6]
            sql/ha_partition.cc:6474(ha_partition::multi_range_read_next(void**))[0x56377ac33bee]
            sql/opt_range.cc:11456(QUICK_RANGE_SELECT::get_next())[0x56377a8290b4]
            sql/opt_range.cc:11174(QUICK_ROR_INTERSECT_SELECT::get_next())[0x56377a837a51]
            sql/records.cc:365(rr_quick(READ_RECORD*))[0x56377a842899]
            sql/sql_select.cc:19281(sub_select(JOIN*, st_join_table*, bool))[0x56377a5be369]
            sql/sql_select.cc:18824(do_select)[0x56377a5dcfc6]
            sql/sql_select.cc:3823(JOIN::exec())[0x56377a5dd21c]
            sql/sql_select.cc:4229(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x56377a5dc0aa]
            sql/sql_select.cc:382(handle_select(THD*, LEX*, select_result*, unsigned long))[0x56377a5dd42c]
            sql/sql_parse.cc:6547(execute_sqlcom_select(THD*, TABLE_LIST*))[0x56377a4a44f9]
            sql/sql_parse.cc:3768(mysql_execute_command(THD*))[0x56377a58da4c]
            sql/sql_class.h:1809(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x56377a58ffc9]
            sql/sql_parse.cc:1850(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x56377a59204a]
            sql/sql_parse.cc:1397(do_command(THD*))[0x56377a5927ce]
            sql/sql_connect.cc:1402(do_handle_one_connection(CONNECT*))[0x56377a658daf]
            sql/sql_connect.cc:1310(handle_one_connection)[0x56377a658ed4]
            /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7fd9572b76ba]
            x86_64/clone.S:111(clone)[0x7fd95611c41d]
             
            Query (0x7fd8e80115f0): SELECT COUNT(*),col_int_key  FROM t1 WHERE col_varchar_nokey IS NULL    AND col_int_key IS NULL   AND col_varchar_key IS NULL
            

            with SELECT 1 FROM t1 WHERE col_varchar_nokey IS NULL AND col_int_key IS NULL AND col_varchar_key IS NULL -10.3.9 server hangs, after killing the query:

            linux/raise.c:54(__GI_raise)[0x7f59f180f428]
            stdlib/abort.c:91(__GI_abort)[0x7f59f181102a]
            posix/libc_fatal.c:175(__fsetlocking)[0x7f59f18517ea]
            malloc/malloc.c:4105(_int_free)[0x7f59f185a37a]
            malloc/malloc.c:2969(__GI___libc_free)[0x7f59f185e53c]
            mysys/queues.c:180(delete_queue)[0x5557b77dcf04]
            sql/ha_partition.cc:5304(ha_partition::destroy_record_priority_queue())[0x5557b77aef5e]
            sql/opt_range.cc:1323(QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT())[0x5557b73abcef]
            sql/opt_range.cc:1338(QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT())[0x5557b73abdb1]
            sql/sql_list.h:513(List<QUICK_ROR_INTERSECT_SELECT::QUICK_SELECT_WITH_RECORD>::delete_elements())[0x5557b73c019a]
            sql/opt_range.cc:1689(QUICK_ROR_INTERSECT_SELECT::~QUICK_ROR_INTERSECT_SELECT())[0x5557b73ba743]
            sql/opt_range.cc:1694(QUICK_ROR_INTERSECT_SELECT::~QUICK_ROR_INTERSECT_SELECT())[0x5557b73ba7e1]
            sql/opt_range.cc:1214(SQL_SELECT::cleanup())[0x5557b73ac28a]
            sql/sql_select.cc:12295(st_join_table::cleanup())[0x5557b7143c1e]
            sql/sql_select.cc:12723(JOIN::cleanup(bool))[0x5557b7157c6a]
            sql/sql_select.h:848(JOIN::join_free())[0x5557b7157f45]
            sql/sql_select.cc:18872(do_select)[0x5557b715df4a]
            sql/sql_select.cc:3823(JOIN::exec())[0x5557b715e21c]
            sql/sql_select.cc:4229(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5557b715d0aa]
            sql/sql_select.cc:382(handle_select(THD*, LEX*, select_result*, unsigned long))[0x5557b715e42c]
            sql/sql_parse.cc:6547(execute_sqlcom_select(THD*, TABLE_LIST*))[0x5557b70254f9]
            sql/sql_parse.cc:3768(mysql_execute_command(THD*))[0x5557b710ea4c]
            sql/sql_class.h:1809(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x5557b7110fc9]
            sql/sql_parse.cc:1850(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x5557b711304a]
            sql/sql_parse.cc:1397(do_command(THD*))[0x5557b71137ce]
            sql/sql_connect.cc:1402(do_handle_one_connection(CONNECT*))[0x5557b71d9daf]
            sql/sql_connect.cc:1310(handle_one_connection)[0x5557b71d9ed4]
            /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7f59f2a7c6ba]
            x86_64/clone.S:111(clone)[0x7f59f18e141d]
             
            Trying to get some variables.
            Some pointers may be invalid and cause the dump to abort.
            Query (0x7f59880115f0): SELECT 1 FROM t1 WHERE col_varchar_nokey IS NULL    AND col_int_key IS NULL   AND col_varchar_key IS NULL
            

            alice Alice Sherepa added a comment - adding just to make it searchable. same t1, but with the query SELECT COUNT(*),col_int_key FROM t1 WHERE col_varchar_nokey IS NULL AND col_int_key IS NULL AND col_varchar_key IS NULL 10.3.9 /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fd9572c1390] sql/ha_partition.cc:7671(ha_partition::return_top_record(unsigned char*))[0x56377ac32cbf] sql/ha_partition.cc:7640(ha_partition::handle_ordered_index_scan(unsigned char*, bool))[0x56377ac32ec6] sql/ha_partition.cc:6474(ha_partition::multi_range_read_next(void**))[0x56377ac33bee] sql/opt_range.cc:11456(QUICK_RANGE_SELECT::get_next())[0x56377a8290b4] sql/opt_range.cc:11174(QUICK_ROR_INTERSECT_SELECT::get_next())[0x56377a837a51] sql/records.cc:365(rr_quick(READ_RECORD*))[0x56377a842899] sql/sql_select.cc:19281(sub_select(JOIN*, st_join_table*, bool))[0x56377a5be369] sql/sql_select.cc:18824(do_select)[0x56377a5dcfc6] sql/sql_select.cc:3823(JOIN::exec())[0x56377a5dd21c] sql/sql_select.cc:4229(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x56377a5dc0aa] sql/sql_select.cc:382(handle_select(THD*, LEX*, select_result*, unsigned long))[0x56377a5dd42c] sql/sql_parse.cc:6547(execute_sqlcom_select(THD*, TABLE_LIST*))[0x56377a4a44f9] sql/sql_parse.cc:3768(mysql_execute_command(THD*))[0x56377a58da4c] sql/sql_class.h:1809(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x56377a58ffc9] sql/sql_parse.cc:1850(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x56377a59204a] sql/sql_parse.cc:1397(do_command(THD*))[0x56377a5927ce] sql/sql_connect.cc:1402(do_handle_one_connection(CONNECT*))[0x56377a658daf] sql/sql_connect.cc:1310(handle_one_connection)[0x56377a658ed4] /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7fd9572b76ba] x86_64/clone.S:111(clone)[0x7fd95611c41d]   Query (0x7fd8e80115f0): SELECT COUNT(*),col_int_key FROM t1 WHERE col_varchar_nokey IS NULL AND col_int_key IS NULL AND col_varchar_key IS NULL with SELECT 1 FROM t1 WHERE col_varchar_nokey IS NULL AND col_int_key IS NULL AND col_varchar_key IS NULL -10.3.9 server hangs, after killing the query: linux/raise.c:54(__GI_raise)[0x7f59f180f428] stdlib/abort.c:91(__GI_abort)[0x7f59f181102a] posix/libc_fatal.c:175(__fsetlocking)[0x7f59f18517ea] malloc/malloc.c:4105(_int_free)[0x7f59f185a37a] malloc/malloc.c:2969(__GI___libc_free)[0x7f59f185e53c] mysys/queues.c:180(delete_queue)[0x5557b77dcf04] sql/ha_partition.cc:5304(ha_partition::destroy_record_priority_queue())[0x5557b77aef5e] sql/opt_range.cc:1323(QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT())[0x5557b73abcef] sql/opt_range.cc:1338(QUICK_RANGE_SELECT::~QUICK_RANGE_SELECT())[0x5557b73abdb1] sql/sql_list.h:513(List<QUICK_ROR_INTERSECT_SELECT::QUICK_SELECT_WITH_RECORD>::delete_elements())[0x5557b73c019a] sql/opt_range.cc:1689(QUICK_ROR_INTERSECT_SELECT::~QUICK_ROR_INTERSECT_SELECT())[0x5557b73ba743] sql/opt_range.cc:1694(QUICK_ROR_INTERSECT_SELECT::~QUICK_ROR_INTERSECT_SELECT())[0x5557b73ba7e1] sql/opt_range.cc:1214(SQL_SELECT::cleanup())[0x5557b73ac28a] sql/sql_select.cc:12295(st_join_table::cleanup())[0x5557b7143c1e] sql/sql_select.cc:12723(JOIN::cleanup(bool))[0x5557b7157c6a] sql/sql_select.h:848(JOIN::join_free())[0x5557b7157f45] sql/sql_select.cc:18872(do_select)[0x5557b715df4a] sql/sql_select.cc:3823(JOIN::exec())[0x5557b715e21c] sql/sql_select.cc:4229(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x5557b715d0aa] sql/sql_select.cc:382(handle_select(THD*, LEX*, select_result*, unsigned long))[0x5557b715e42c] sql/sql_parse.cc:6547(execute_sqlcom_select(THD*, TABLE_LIST*))[0x5557b70254f9] sql/sql_parse.cc:3768(mysql_execute_command(THD*))[0x5557b710ea4c] sql/sql_class.h:1809(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x5557b7110fc9] sql/sql_parse.cc:1850(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x5557b711304a] sql/sql_parse.cc:1397(do_command(THD*))[0x5557b71137ce] sql/sql_connect.cc:1402(do_handle_one_connection(CONNECT*))[0x5557b71d9daf] sql/sql_connect.cc:1310(handle_one_connection)[0x5557b71d9ed4] /lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7f59f2a7c6ba] x86_64/clone.S:111(clone)[0x7f59f18e141d]   Trying to get some variables. Some pointers may be invalid and cause the dump to abort. Query (0x7f59880115f0): SELECT 1 FROM t1 WHERE col_varchar_nokey IS NULL AND col_int_key IS NULL AND col_varchar_key IS NULL

            More for the reference, stack trace with the same test case on an non-debug ASAN build:

            10.3 49d506cd1d

            ==25092==ERROR: AddressSanitizer: SEGV on unknown address 0x6253232cc3e8 (pc 0x55a5eae38976 sp 0x7f429106d580 bp 0x0000bebebebe T27)
                #0 0x55a5eae38975 in ha_innobase::innobase_get_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392
                #1 0x55a5eae3a6cf in ha_innobase::change_active_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9427
                #2 0x55a5ea4d2790 in handler::ha_index_init(unsigned int, bool) /data/src/10.3/sql/handler.h:3027
                #3 0x55a5ea4d2790 in DsMrr_impl::dsmrr_init(handler*, st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/multi_range_read.cc:1016
                #4 0x55a5eae13b93 in ha_innobase::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20316
                #5 0x55a5eb5637ca in ha_partition::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/ha_partition.cc:6440
                #6 0x55a5eaaa2546 in QUICK_RANGE_SELECT::reset() /data/src/10.3/sql/opt_range.cc:11411
                #7 0x55a5eaaa0f98 in QUICK_ROR_INTERSECT_SELECT::reset() /data/src/10.3/sql/opt_range.cc:1650
                #8 0x55a5ea26d67b in join_init_read_record(st_join_table*) /data/src/10.3/sql/sql_select.cc:20207
                #9 0x55a5ea2335a4 in sub_select(JOIN*, st_join_table*, bool) /data/src/10.3/sql/sql_select.cc:19287
                #10 0x55a5ea2aedf8 in do_select /data/src/10.3/sql/sql_select.cc:18830
                #11 0x55a5ea2aedf8 in JOIN::exec_inner() /data/src/10.3/sql/sql_select.cc:4035
                #12 0x55a5ea2afb03 in JOIN::exec() /data/src/10.3/sql/sql_select.cc:3829
                #13 0x55a5ea2aff02 in mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/10.3/sql/sql_select.cc:4234
                #14 0x55a5ea2b288b in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.3/sql/sql_select.cc:382
                #15 0x55a5e9ee86a4 in execute_sqlcom_select /data/src/10.3/sql/sql_parse.cc:6547
                #16 0x55a5ea19e642 in mysql_execute_command(THD*) /data/src/10.3/sql/sql_parse.cc:3769
                #17 0x55a5ea1a6cb8 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.3/sql/sql_parse.cc:8089
                #18 0x55a5ea1adcc7 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.3/sql/sql_parse.cc:1850
                #19 0x55a5ea1afe26 in do_command(THD*) /data/src/10.3/sql/sql_parse.cc:1395
                #20 0x55a5ea455287 in do_handle_one_connection(CONNECT*) /data/src/10.3/sql/sql_connect.cc:1402
                #21 0x55a5ea45578a in handle_one_connection /data/src/10.3/sql/sql_connect.cc:1308
                #22 0x55a5eade7d26 in pfs_spawn_thread /data/src/10.3/storage/perfschema/pfs.cc:1862
                #23 0x7f429c7ec493 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7493)
                #24 0x7f429abd293e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe893e)
             
            AddressSanitizer can not provide additional info.
            SUMMARY: AddressSanitizer: SEGV /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392 ha_innobase::innobase_get_index(unsigned int)
            Thread T27 created by T0 here:
                #0 0x7f429ca25bba in pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x23bba)
                #1 0x55a5eadf0446 in spawn_thread_v1 /data/src/10.3/storage/perfschema/pfs.cc:1912
             
            ==25092==ABORTING
            

            elenst Elena Stepanova added a comment - More for the reference, stack trace with the same test case on an non-debug ASAN build : 10.3 49d506cd1d ==25092==ERROR: AddressSanitizer: SEGV on unknown address 0x6253232cc3e8 (pc 0x55a5eae38976 sp 0x7f429106d580 bp 0x0000bebebebe T27) #0 0x55a5eae38975 in ha_innobase::innobase_get_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392 #1 0x55a5eae3a6cf in ha_innobase::change_active_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9427 #2 0x55a5ea4d2790 in handler::ha_index_init(unsigned int, bool) /data/src/10.3/sql/handler.h:3027 #3 0x55a5ea4d2790 in DsMrr_impl::dsmrr_init(handler*, st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/multi_range_read.cc:1016 #4 0x55a5eae13b93 in ha_innobase::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20316 #5 0x55a5eb5637ca in ha_partition::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/ha_partition.cc:6440 #6 0x55a5eaaa2546 in QUICK_RANGE_SELECT::reset() /data/src/10.3/sql/opt_range.cc:11411 #7 0x55a5eaaa0f98 in QUICK_ROR_INTERSECT_SELECT::reset() /data/src/10.3/sql/opt_range.cc:1650 #8 0x55a5ea26d67b in join_init_read_record(st_join_table*) /data/src/10.3/sql/sql_select.cc:20207 #9 0x55a5ea2335a4 in sub_select(JOIN*, st_join_table*, bool) /data/src/10.3/sql/sql_select.cc:19287 #10 0x55a5ea2aedf8 in do_select /data/src/10.3/sql/sql_select.cc:18830 #11 0x55a5ea2aedf8 in JOIN::exec_inner() /data/src/10.3/sql/sql_select.cc:4035 #12 0x55a5ea2afb03 in JOIN::exec() /data/src/10.3/sql/sql_select.cc:3829 #13 0x55a5ea2aff02 in mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/10.3/sql/sql_select.cc:4234 #14 0x55a5ea2b288b in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.3/sql/sql_select.cc:382 #15 0x55a5e9ee86a4 in execute_sqlcom_select /data/src/10.3/sql/sql_parse.cc:6547 #16 0x55a5ea19e642 in mysql_execute_command(THD*) /data/src/10.3/sql/sql_parse.cc:3769 #17 0x55a5ea1a6cb8 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.3/sql/sql_parse.cc:8089 #18 0x55a5ea1adcc7 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.3/sql/sql_parse.cc:1850 #19 0x55a5ea1afe26 in do_command(THD*) /data/src/10.3/sql/sql_parse.cc:1395 #20 0x55a5ea455287 in do_handle_one_connection(CONNECT*) /data/src/10.3/sql/sql_connect.cc:1402 #21 0x55a5ea45578a in handle_one_connection /data/src/10.3/sql/sql_connect.cc:1308 #22 0x55a5eade7d26 in pfs_spawn_thread /data/src/10.3/storage/perfschema/pfs.cc:1862 #23 0x7f429c7ec493 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7493) #24 0x7f429abd293e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe893e)   AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392 ha_innobase::innobase_get_index(unsigned int) Thread T27 created by T0 here: #0 0x7f429ca25bba in pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x23bba) #1 0x55a5eadf0446 in spawn_thread_v1 /data/src/10.3/storage/perfschema/pfs.cc:1912   ==25092==ABORTING

            Despite the bug being "In progress", apparently there has been no much movement on it for almost 2 months. I'm reassigning it to versioning experts, maybe they could help, at least to rule out the relation to versioning. We have an external bug MDEV-17134 which appears to be related and waits for the resolution of this one.

            elenst Elena Stepanova added a comment - Despite the bug being "In progress", apparently there has been no much movement on it for almost 2 months. I'm reassigning it to versioning experts, maybe they could help, at least to rule out the relation to versioning. We have an external bug MDEV-17134 which appears to be related and waits for the resolution of this one.

            Cause

            ha_partition::clone() does shallow copy: m_part_info is shared. Then ha_open() resets read_partitions (previously set by pruning). Indexes was already set for original according to pruned read_partitions, then cloned copy sets up indexes for all partitions.

            Fix

            Either do deep copy or preserve read_partitions around ha_open().

            Analysis

            midenok Aleksey Midenkov added a comment - Cause ha_partition::clone() does shallow copy: m_part_info is shared. Then ha_open() resets read_partitions (previously set by pruning). Indexes was already set for original according to pruned read_partitions , then cloned copy sets up indexes for all partitions. Fix Either do deep copy or preserve read_partitions around ha_open() . Analysis

            To reproduce on non-SYSTEM_TIME partitioning these conditions must be met:

            1. SELECT type is index_merge;
            2. partition pruning selects not all partitions (most effectively 1 of 2).

            midenok Aleksey Midenkov added a comment - To reproduce on non-SYSTEM_TIME partitioning these conditions must be met: 1. SELECT type is index_merge ; 2. partition pruning selects not all partitions (most effectively 1 of 2).
            elenst Elena Stepanova added a comment - - edited

            MDEV-17594 presented a test case which does not require SYSTEM_TIME partitioning.

            --source include/have_partition.inc
            --source include/have_innodb.inc
             
            CREATE TABLE `tb1` (
              `ID` int(11) NOT NULL,
              `CDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
              `RID` int(11) DEFAULT NULL,
              `UID` int(11) DEFAULT NULL,
              PRIMARY KEY (`ID`,`CDate`),
              KEY `RID` (`RID`),
              KEY `UID` (`UID`),
              KEY `ID` (`ID`)
            ) ENGINE=InnoDB
             PARTITION BY RANGE  COLUMNS(`CDate`)
            (PARTITION `tb1_p1` VALUES LESS THAN ('2000-03-21') ENGINE = InnoDB,
             PARTITION `tb1_p12` VALUES LESS THAN ('2020-03-20') ENGINE = InnoDB,
             PARTITION `tb1_p1000` VALUES LESS THAN ('2100-03-21') ENGINE = InnoDB);
            INSERT INTO `tb1` VALUES (1,'2033-05-03 01:23:33',9,NULL),(2,'2026-07-05 20:39:29',NULL,NULL);
             
            CREATE TABLE `tb3` (
              `ID` int(11) NOT NULL,
              `DID` int(11) DEFAULT NULL,
              `LID` int(11) DEFAULT NULL
            ) ENGINE=MyISAM;
             
            INSERT INTO `tb3` VALUES (3,NULL,NULL),(4,NULL,1707212800);
             
            SELECT tb3.ID FROM tb3 INNER JOIN tb1 on(tb1.ID = tb3.ID) WHERE `CDate` >= '2018-08-03' AND `RID` = 1234 AND `UID` = 123;
             
            # Cleanup
            DROP TABLE tb1, tb3;
            

            10.3 debug a33c0e3f34af

            mysqld: /data/src/10.3/sql/handler.h:3096: int handler::ha_rnd_end(): Assertion `inited==RND' failed.
            181102 18:47:33 [ERROR] mysqld got signal 6 ;
             
            #7  0x00007fe505542ee2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
            #8  0x000055d77af0f61a in handler::ha_rnd_end (this=0x7fe4a80a7bf8) at /data/src/10.3/sql/handler.h:3096
            #9  0x000055d77b1591bc in DsMrr_impl::dsmrr_init (this=0x7fe4a80a8040, h_arg=0x7fe4a80a7bf8, seq_funcs=0x7fe4a80a7b30, seq_init_param=0x7fe4a8096f50, n_ranges=1, mode=72, buf=0x7fe4a8096eb8) at /data/src/10.3/sql/multi_range_read.cc:1016
            #10 0x000055d77b5d212a in ha_innobase::multi_range_read_init (this=0x7fe4a80a7bf8, seq=0x7fe4a80a7b30, seq_init_param=0x7fe4a8096f50, n_ranges=1, mode=72, buf=0x7fe4a8096eb8) at /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20268
            #11 0x000055d77ba04030 in ha_partition::multi_range_read_init (this=0x7fe4a80a7348, seq=0x7fe4fa885bd0, seq_init_param=0x7fe4a8049720, n_ranges=1, mrr_mode=72, buf=0x7fe4fa885b90) at /data/src/10.3/sql/ha_partition.cc:6440
            #12 0x000055d77b40d679 in QUICK_RANGE_SELECT::reset (this=0x7fe4a8049720) at /data/src/10.3/sql/opt_range.cc:11432
            #13 0x000055d77b3f61ff in QUICK_ROR_INTERSECT_SELECT::reset (this=0x7fe4a8048600) at /data/src/10.3/sql/opt_range.cc:1650
            #14 0x000055d77b01ea86 in join_init_read_record (tab=0x7fe4a8049a48) at /data/src/10.3/sql/sql_select.cc:20220
            #15 0x000055d77b01c884 in sub_select (join=0x7fe4a80173a0, join_tab=0x7fe4a8049a48, end_of_records=false) at /data/src/10.3/sql/sql_select.cc:19300
            #16 0x000055d77b01be20 in do_select (join=0x7fe4a80173a0, procedure=0x0) at /data/src/10.3/sql/sql_select.cc:18843
            #17 0x000055d77aff4c2d in JOIN::exec_inner (this=0x7fe4a80173a0) at /data/src/10.3/sql/sql_select.cc:4035
            #18 0x000055d77aff409e in JOIN::exec (this=0x7fe4a80173a0) at /data/src/10.3/sql/sql_select.cc:3829
            #19 0x000055d77aff530e in mysql_select (thd=0x7fe4a8000b00, tables=0x7fe4a8014fe8, wild_num=0, fields=..., conds=0x7fe4a8016e30, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fe4a8017378, unit=0x7fe4a80049b0, select_lex=0x7fe4a8005120) at /data/src/10.3/sql/sql_select.cc:4234
            #20 0x000055d77afe71ec in handle_select (thd=0x7fe4a8000b00, lex=0x7fe4a80048e8, result=0x7fe4a8017378, setup_tables_done_option=0) at /data/src/10.3/sql/sql_select.cc:382
            #21 0x000055d77afb1ddb in execute_sqlcom_select (thd=0x7fe4a8000b00, all_tables=0x7fe4a8014fe8) at /data/src/10.3/sql/sql_parse.cc:6547
            #22 0x000055d77afa845d in mysql_execute_command (thd=0x7fe4a8000b00) at /data/src/10.3/sql/sql_parse.cc:3769
            #23 0x000055d77afb5d9d in mysql_parse (thd=0x7fe4a8000b00, rawbuf=0x7fe4a8014d18 "SELECT tb3.ID FROM tb3 INNER JOIN tb1 on(tb1.ID = tb3.ID) WHERE `CDate` >= '2018-08-03' AND `RID` = 1234 AND `UID` = 123", length=120, parser_state=0x7fe4fa8875f0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:8091
            #24 0x000055d77afa2f6b in dispatch_command (command=COM_QUERY, thd=0x7fe4a8000b00, packet=0x7fe4a81670d1 "", packet_length=120, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1850
            #25 0x000055d77afa198f in do_command (thd=0x7fe4a8000b00) at /data/src/10.3/sql/sql_parse.cc:1395
            #26 0x000055d77b10919c in do_handle_one_connection (connect=0x55d77d7cd560) at /data/src/10.3/sql/sql_connect.cc:1402
            #27 0x000055d77b108f20 in handle_one_connection (arg=0x55d77d7cd560) at /data/src/10.3/sql/sql_connect.cc:1308
            #28 0x000055d77b59c0df in pfs_spawn_thread (arg=0x55d77d7d5890) at /data/src/10.3/storage/perfschema/pfs.cc:1862
            #29 0x00007fe507219494 in start_thread (arg=0x7fe4fa888700) at pthread_create.c:333
            #30 0x00007fe5055ff93f in clone () from /lib/x86_64-linux-gnu/libc.so.6
            

            10.3 non-debug ASAN 49d506cd1d7

            ==27126==ERROR: AddressSanitizer: SEGV on unknown address 0x6253232cac48 (pc 0x55fa6a444976 sp 0x7f2e88c4b580 bp 0x0000bebebebe T27)
                #0 0x55fa6a444975 in ha_innobase::innobase_get_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392
                #1 0x55fa6a4466cf in ha_innobase::change_active_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9427
                #2 0x55fa69ade790 in handler::ha_index_init(unsigned int, bool) /data/src/10.3/sql/handler.h:3027
                #3 0x55fa69ade790 in DsMrr_impl::dsmrr_init(handler*, st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/multi_range_read.cc:1016
                #4 0x55fa6a41fb93 in ha_innobase::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20316
                #5 0x55fa6ab6f7ca in ha_partition::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/ha_partition.cc:6440
                #6 0x55fa6a0ae546 in QUICK_RANGE_SELECT::reset() /data/src/10.3/sql/opt_range.cc:11411
                #7 0x55fa6a0acf98 in QUICK_ROR_INTERSECT_SELECT::reset() /data/src/10.3/sql/opt_range.cc:1650
                #8 0x55fa6987967b in join_init_read_record(st_join_table*) /data/src/10.3/sql/sql_select.cc:20207
                #9 0x55fa6983f5a4 in sub_select(JOIN*, st_join_table*, bool) /data/src/10.3/sql/sql_select.cc:19287
                #10 0x55fa698badf8 in do_select /data/src/10.3/sql/sql_select.cc:18830
                #11 0x55fa698badf8 in JOIN::exec_inner() /data/src/10.3/sql/sql_select.cc:4035
                #12 0x55fa698bbb03 in JOIN::exec() /data/src/10.3/sql/sql_select.cc:3829
                #13 0x55fa698bbf02 in mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/10.3/sql/sql_select.cc:4234
                #14 0x55fa698be88b in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.3/sql/sql_select.cc:382
                #15 0x55fa694f46a4 in execute_sqlcom_select /data/src/10.3/sql/sql_parse.cc:6547
                #16 0x55fa697aa642 in mysql_execute_command(THD*) /data/src/10.3/sql/sql_parse.cc:3769
                #17 0x55fa697b2cb8 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.3/sql/sql_parse.cc:8089
                #18 0x55fa697b9cc7 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.3/sql/sql_parse.cc:1850
                #19 0x55fa697bbe26 in do_command(THD*) /data/src/10.3/sql/sql_parse.cc:1395
                #20 0x55fa69a61287 in do_handle_one_connection(CONNECT*) /data/src/10.3/sql/sql_connect.cc:1402
                #21 0x55fa69a6178a in handle_one_connection /data/src/10.3/sql/sql_connect.cc:1308
                #22 0x55fa6a3f3d26 in pfs_spawn_thread /data/src/10.3/storage/perfschema/pfs.cc:1862
                #23 0x7f2e943ca493 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7493)
                #24 0x7f2e927b093e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe893e)
            

            Reproducible on 10.3, 10.4. Not reproducible on 10.2.

            elenst Elena Stepanova added a comment - - edited MDEV-17594 presented a test case which does not require SYSTEM_TIME partitioning. --source include/have_partition.inc --source include/have_innodb.inc   CREATE TABLE `tb1` ( `ID` int (11) NOT NULL , `CDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' , `RID` int (11) DEFAULT NULL , `UID` int (11) DEFAULT NULL , PRIMARY KEY (`ID`,`CDate`), KEY `RID` (`RID`), KEY `UID` (`UID`), KEY `ID` (`ID`) ) ENGINE=InnoDB PARTITION BY RANGE COLUMNS(`CDate`) (PARTITION `tb1_p1` VALUES LESS THAN ( '2000-03-21' ) ENGINE = InnoDB, PARTITION `tb1_p12` VALUES LESS THAN ( '2020-03-20' ) ENGINE = InnoDB, PARTITION `tb1_p1000` VALUES LESS THAN ( '2100-03-21' ) ENGINE = InnoDB); INSERT INTO `tb1` VALUES (1, '2033-05-03 01:23:33' ,9, NULL ),(2, '2026-07-05 20:39:29' , NULL , NULL );   CREATE TABLE `tb3` ( `ID` int (11) NOT NULL , `DID` int (11) DEFAULT NULL , `LID` int (11) DEFAULT NULL ) ENGINE=MyISAM;   INSERT INTO `tb3` VALUES (3, NULL , NULL ),(4, NULL ,1707212800);   SELECT tb3.ID FROM tb3 INNER JOIN tb1 on (tb1.ID = tb3.ID) WHERE `CDate` >= '2018-08-03' AND `RID` = 1234 AND `UID` = 123;   # Cleanup DROP TABLE tb1, tb3; 10.3 debug a33c0e3f34af mysqld: /data/src/10.3/sql/handler.h:3096: int handler::ha_rnd_end(): Assertion `inited==RND' failed. 181102 18:47:33 [ERROR] mysqld got signal 6 ;   #7 0x00007fe505542ee2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6 #8 0x000055d77af0f61a in handler::ha_rnd_end (this=0x7fe4a80a7bf8) at /data/src/10.3/sql/handler.h:3096 #9 0x000055d77b1591bc in DsMrr_impl::dsmrr_init (this=0x7fe4a80a8040, h_arg=0x7fe4a80a7bf8, seq_funcs=0x7fe4a80a7b30, seq_init_param=0x7fe4a8096f50, n_ranges=1, mode=72, buf=0x7fe4a8096eb8) at /data/src/10.3/sql/multi_range_read.cc:1016 #10 0x000055d77b5d212a in ha_innobase::multi_range_read_init (this=0x7fe4a80a7bf8, seq=0x7fe4a80a7b30, seq_init_param=0x7fe4a8096f50, n_ranges=1, mode=72, buf=0x7fe4a8096eb8) at /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20268 #11 0x000055d77ba04030 in ha_partition::multi_range_read_init (this=0x7fe4a80a7348, seq=0x7fe4fa885bd0, seq_init_param=0x7fe4a8049720, n_ranges=1, mrr_mode=72, buf=0x7fe4fa885b90) at /data/src/10.3/sql/ha_partition.cc:6440 #12 0x000055d77b40d679 in QUICK_RANGE_SELECT::reset (this=0x7fe4a8049720) at /data/src/10.3/sql/opt_range.cc:11432 #13 0x000055d77b3f61ff in QUICK_ROR_INTERSECT_SELECT::reset (this=0x7fe4a8048600) at /data/src/10.3/sql/opt_range.cc:1650 #14 0x000055d77b01ea86 in join_init_read_record (tab=0x7fe4a8049a48) at /data/src/10.3/sql/sql_select.cc:20220 #15 0x000055d77b01c884 in sub_select (join=0x7fe4a80173a0, join_tab=0x7fe4a8049a48, end_of_records=false) at /data/src/10.3/sql/sql_select.cc:19300 #16 0x000055d77b01be20 in do_select (join=0x7fe4a80173a0, procedure=0x0) at /data/src/10.3/sql/sql_select.cc:18843 #17 0x000055d77aff4c2d in JOIN::exec_inner (this=0x7fe4a80173a0) at /data/src/10.3/sql/sql_select.cc:4035 #18 0x000055d77aff409e in JOIN::exec (this=0x7fe4a80173a0) at /data/src/10.3/sql/sql_select.cc:3829 #19 0x000055d77aff530e in mysql_select (thd=0x7fe4a8000b00, tables=0x7fe4a8014fe8, wild_num=0, fields=..., conds=0x7fe4a8016e30, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fe4a8017378, unit=0x7fe4a80049b0, select_lex=0x7fe4a8005120) at /data/src/10.3/sql/sql_select.cc:4234 #20 0x000055d77afe71ec in handle_select (thd=0x7fe4a8000b00, lex=0x7fe4a80048e8, result=0x7fe4a8017378, setup_tables_done_option=0) at /data/src/10.3/sql/sql_select.cc:382 #21 0x000055d77afb1ddb in execute_sqlcom_select (thd=0x7fe4a8000b00, all_tables=0x7fe4a8014fe8) at /data/src/10.3/sql/sql_parse.cc:6547 #22 0x000055d77afa845d in mysql_execute_command (thd=0x7fe4a8000b00) at /data/src/10.3/sql/sql_parse.cc:3769 #23 0x000055d77afb5d9d in mysql_parse (thd=0x7fe4a8000b00, rawbuf=0x7fe4a8014d18 "SELECT tb3.ID FROM tb3 INNER JOIN tb1 on(tb1.ID = tb3.ID) WHERE `CDate` >= '2018-08-03' AND `RID` = 1234 AND `UID` = 123", length=120, parser_state=0x7fe4fa8875f0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:8091 #24 0x000055d77afa2f6b in dispatch_command (command=COM_QUERY, thd=0x7fe4a8000b00, packet=0x7fe4a81670d1 "", packet_length=120, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1850 #25 0x000055d77afa198f in do_command (thd=0x7fe4a8000b00) at /data/src/10.3/sql/sql_parse.cc:1395 #26 0x000055d77b10919c in do_handle_one_connection (connect=0x55d77d7cd560) at /data/src/10.3/sql/sql_connect.cc:1402 #27 0x000055d77b108f20 in handle_one_connection (arg=0x55d77d7cd560) at /data/src/10.3/sql/sql_connect.cc:1308 #28 0x000055d77b59c0df in pfs_spawn_thread (arg=0x55d77d7d5890) at /data/src/10.3/storage/perfschema/pfs.cc:1862 #29 0x00007fe507219494 in start_thread (arg=0x7fe4fa888700) at pthread_create.c:333 #30 0x00007fe5055ff93f in clone () from /lib/x86_64-linux-gnu/libc.so.6 10.3 non-debug ASAN 49d506cd1d7 ==27126==ERROR: AddressSanitizer: SEGV on unknown address 0x6253232cac48 (pc 0x55fa6a444976 sp 0x7f2e88c4b580 bp 0x0000bebebebe T27) #0 0x55fa6a444975 in ha_innobase::innobase_get_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9392 #1 0x55fa6a4466cf in ha_innobase::change_active_index(unsigned int) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:9427 #2 0x55fa69ade790 in handler::ha_index_init(unsigned int, bool) /data/src/10.3/sql/handler.h:3027 #3 0x55fa69ade790 in DsMrr_impl::dsmrr_init(handler*, st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/multi_range_read.cc:1016 #4 0x55fa6a41fb93 in ha_innobase::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/storage/innobase/handler/ha_innodb.cc:20316 #5 0x55fa6ab6f7ca in ha_partition::multi_range_read_init(st_range_seq_if*, void*, unsigned int, unsigned int, st_handler_buffer*) /data/src/10.3/sql/ha_partition.cc:6440 #6 0x55fa6a0ae546 in QUICK_RANGE_SELECT::reset() /data/src/10.3/sql/opt_range.cc:11411 #7 0x55fa6a0acf98 in QUICK_ROR_INTERSECT_SELECT::reset() /data/src/10.3/sql/opt_range.cc:1650 #8 0x55fa6987967b in join_init_read_record(st_join_table*) /data/src/10.3/sql/sql_select.cc:20207 #9 0x55fa6983f5a4 in sub_select(JOIN*, st_join_table*, bool) /data/src/10.3/sql/sql_select.cc:19287 #10 0x55fa698badf8 in do_select /data/src/10.3/sql/sql_select.cc:18830 #11 0x55fa698badf8 in JOIN::exec_inner() /data/src/10.3/sql/sql_select.cc:4035 #12 0x55fa698bbb03 in JOIN::exec() /data/src/10.3/sql/sql_select.cc:3829 #13 0x55fa698bbf02 in mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/10.3/sql/sql_select.cc:4234 #14 0x55fa698be88b in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.3/sql/sql_select.cc:382 #15 0x55fa694f46a4 in execute_sqlcom_select /data/src/10.3/sql/sql_parse.cc:6547 #16 0x55fa697aa642 in mysql_execute_command(THD*) /data/src/10.3/sql/sql_parse.cc:3769 #17 0x55fa697b2cb8 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.3/sql/sql_parse.cc:8089 #18 0x55fa697b9cc7 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.3/sql/sql_parse.cc:1850 #19 0x55fa697bbe26 in do_command(THD*) /data/src/10.3/sql/sql_parse.cc:1395 #20 0x55fa69a61287 in do_handle_one_connection(CONNECT*) /data/src/10.3/sql/sql_connect.cc:1402 #21 0x55fa69a6178a in handle_one_connection /data/src/10.3/sql/sql_connect.cc:1308 #22 0x55fa6a3f3d26 in pfs_spawn_thread /data/src/10.3/storage/perfschema/pfs.cc:1862 #23 0x7f2e943ca493 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7493) #24 0x7f2e927b093e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe893e) Reproducible on 10.3, 10.4. Not reproducible on 10.2.

            Sergei Golubchik on fix:

            I don't think this is needed. ha_partition::open() is aware of clones,
            it has if (m_is_clone_of) to do some stuff only for clones and some
            only for fresh opens. Perhaps you just need to move the bitmap-resetting
            code to be done only for fresh opens?

            midenok Aleksey Midenkov added a comment - Sergei Golubchik on fix: I don't think this is needed. ha_partition::open() is aware of clones, it has if (m_is_clone_of) to do some stuff only for clones and some only for fresh opens. Perhaps you just need to move the bitmap-resetting code to be done only for fresh opens?

            People

              midenok Aleksey Midenkov
              alice Alice Sherepa
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

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