Closed midenok closed 4 years ago
make_select()
Break on make_select()
at DESCRIBE t;
See this branch (mysql_select()
):
/*
When in EXPLAIN, delay deleting the joins so that they are still
available when we're producing EXPLAIN EXTENDED warning text.
*/
if (select_options & SELECT_DESCRIBE)
free_join= 0;
if (!(join= new (thd->mem_root) JOIN(thd, fields, select_options, result)))
DBUG_RETURN(TRUE);
THD_STAGE_INFO(thd, stage_init);
thd->lex->used_tables=0;
if ((err= join->prepare(tables, wild_num,
conds, og_num, order, false, group, having, proc_param,
select_lex, unit)))
{
goto err;
}
#0 make_select (head=0x7fff7c08af98, const_tables=0, read_tables=0, conds=0x0, filesort=0x0, allow_null_cond=true, error=0x7fff7c0190e8) at /home/midenok/src/mariadb/review/src/sql/opt_range.cc:1172
#1 0x00000000007948cb in JOIN::optimize_stage2 (this=0x7fff7c018d00) at /home/midenok/src/mariadb/review/src/sql/sql_select.cc:2007
#2 0x00000000007989eb in JOIN::optimize_inner (this=0x7fff7c018d00) at /home/midenok/src/mariadb/review/src/sql/sql_select.cc:1916
#3 0x000000000079410c in JOIN::optimize (this=0x7fff7c018d00) at /home/midenok/src/mariadb/review/src/sql/sql_select.cc:1488
#4 0x000000000078cb0f in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c016c00, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619520, result=0x7fff7c018ce0, unit=0x7fff7c004ac0, select_lex=0x7fff7c005220) at /home/midenok/src/mariadb/review/src/sql/sql_select.cc:4172
#5 0x000000000078c453 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c0049f8, result=0x7fff7c018ce0, setup_tables_done_option=0) at /home/midenok/src/mariadb/review/src/sql/sql_select.cc:368
#6 0x000000000074d76f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c016c00) at /home/midenok/src/mariadb/review/src/sql/sql_parse.cc:6503
#7 0x00000000007425e8 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/review/src/sql/sql_parse.cc:3746
#8 0x000000000073d20f in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c0159a8 "describe t", length=10, parser_state=0x7fffe524d650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/review/src/sql/sql_parse.cc:7959
See stacks from #406 to learn difference between rr_quick()
and rr_sequential()
.
rr_quick:
---------
rr_quick uses one of the QUICK_SELECT classes in opt_range.cc to
perform an index scan. There are loads of functionality hidden
in these quick classes. It handles all index scans of various kinds.
bool init_read_record(READ_RECORD *info,THD *thd, TABLE *table,
SQL_SELECT *select,
SORT_INFO *filesort,
int use_record_cache, bool print_error,
bool disable_rr_cache)
{
...
else if (select && select->quick)
{
DBUG_PRINT("info",("using rr_quick"));
info->read_record_func= rr_quick;
}
...
QUICK_SELECT_I *quick; // If quick-select used
/*
Quick select interface.
This class is a parent for all QUICK_*_SELECT and FT_SELECT classes.
The usage scenario is as follows:
1. Create quick select
quick= new QUICK_XXX_SELECT(...);
2. Perform lightweight initialization. This can be done in 2 ways:
2.a: Regular initialization
if (quick->init())
{
//the only valid action after failed init() call is delete
delete quick;
}
2.b: Special initialization for quick selects merged by QUICK_ROR_*_SELECT
if (quick->init_ror_merged_scan())
delete quick;
3. Perform zero, one, or more scans.
while (...)
{
// initialize quick select for scan. This may allocate
// buffers and/or prefetch rows.
if (quick->reset())
{
//the only valid action after failed reset() call is delete
delete quick;
//abort query
}
// perform the scan
do
{
res= quick->get_next();
} while (res && ...)
}
4. Delete the select:
delete quick;
NOTE
quick select doesn't use Sql_alloc/MEM_ROOT allocation because "range
checked for each record" functionality may create/destroy
O(#records_in_some_table) quick selects during query execution.
*/
/*
Create a QUICK_RANGE_SELECT from given key and SEL_ARG tree for that key.
...
*/
QUICK_RANGE_SELECT *
get_quick_select(PARAM *param,uint idx,SEL_ARG *key_tree, uint mrr_flags,
uint mrr_buf_size, MEM_ROOT *parent_alloc)
#0 get_quick_select (param=0x7fffe52a93c8, idx=0, key_tree=0x7fff7c098938, mrr_flags=76, mrr_buf_size=0, parent_alloc=0x0) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:10526
#1 0x0000000000cd33d9 in TRP_RANGE::make_quick (this=0x7fff7c098a38, param=0x7fffe52a93c8, retrieve_full_rows=true, parent_alloc=0x0) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2114
#2 0x0000000000cadcbe in SQL_SELECT::test_quick_select (this=0x7fff7c016e80, thd=0x7fff7c000d50, keys_to_use=..., prev_tables=0, limit=18446744073709551615, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=true) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2679
#3 0x000000000083d48d in get_quick_record_count (thd=0x7fff7c000d50, select=0x7fff7c016e80, table=0x7fff7c057490, keys=0x7fff7c015d48, limit=18446744073709551615) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4240
#4 0x00000000007fef18 in make_join_statistics (join=0x7fff7c0145d0, tables_list=..., keyuse_array=0x7fff7c0148c0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4866
#5 0x00000000007f9893 in JOIN::optimize_inner (this=0x7fff7c0145d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1899
#6 0x00000000007f50c5 in JOIN::optimize (this=0x7fff7c0145d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1484
#7 0x00000000007ed76f in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013b78, wild_num=1, fields=..., conds=0x7fff7c014388, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0145b0, unit=0x7fff7c004b88, select_lex=0x7fff7c005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4189
#8 0x00000000007ed0b3 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0145b0, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#9 0x00000000007ae9bf in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013b78) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#10 0x00000000007a3820 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#11 0x000000000079e2e3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013978 "select * from t1 where x = 4", length=28, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
rr_quick()
create or replace table t2 (
auto int not null auto_increment,
fld1 int(6) unsigned zerofill default '000000' not null,
companynr tinyint(2) unsigned zerofill default '00' not null,
fld3 char(30) default '' not null,
fld4 char(35) default '' not null,
fld5 char(35) default '' not null,
fld6 char(4) default '' not null,
unique fld1 (fld1),
key fld3 (fld3),
primary key (auto)
);
...
INSERT INTO t2 VALUES (1136,118009,00,'exclaim','Italianization','honeysuckle','');
INSERT INTO t2 VALUES (5136,1118009,00,'exclaim','Italianization','honeysuckle','');
INSERT INTO t2 VALUES (1137,138011,00,'implicated','attendants','orphanage','');
INSERT INTO t2 VALUES (1138,138010,00,'distinguish','spies','skies','');
...
select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_';
#0 rr_quick (info=0x7fffe0017680) at /home/midenok/src/mariadb/trunk/src/sql/records.cc:366
#1 0x00000000006fa53b in READ_RECORD::read_record (this=0x7fffe0017680) at /home/midenok/src/mariadb/trunk/src/sql/records.h:73
#2 0x000000000081e02c in join_init_read_record (tab=0x7fffe00175b8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:20155
#3 0x00000000008394fa in sub_select (join=0x7fffe0015c30, join_tab=0x7fffe00175b8, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19229
#4 0x0000000000821d28 in do_select (join=0x7fffe0015c30, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18772
#5 0x0000000000820b1a in JOIN::exec_inner (this=0x7fffe0015c30) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3987
#6 0x000000000081fc8e in JOIN::exec (this=0x7fffe0015c30) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3781
#7 0x00000000007f79bc in mysql_select (thd=0x7fffe0000d50, tables=0x7fffe0015120, wild_num=0, fields=..., conds=0x7fffe00159f0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fffe0015c10, unit=0x7fffe0004b88, select_lex=0x7fffe0005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4186
#8 0x00000000007f7213 in handle_select (thd=0x7fffe0000d50, lex=0x7fffe0004ac0, result=0x7fffe0015c10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#9 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fffe0000d50, all_tables=0x7fffe0015120) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#10 0x00000000007ad980 in mysql_execute_command (thd=0x7fffe0000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#11 0x00000000007a8443 in mysql_parse (thd=0x7fffe0000d50, rawbuf=0x7fffe0014ed8 "select t2.fld3 from t2 where fld3 LIKE 'honeysuckl_'", length=52, parser_state=0x7ffff01cf5e0, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
Whether rr_quick()
is used or not depends on how much data is contained in t2.
#0 join_read_first (tab=0x7fff84016150) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:20202
#1 0x00000000008394fa in sub_select (join=0x7fff84014718, join_tab=0x7fff84016150, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19229
#2 0x0000000000821d28 in do_select (join=0x7fff84014718, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18772
#3 0x0000000000820b1a in JOIN::exec_inner (this=0x7fff84014718) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3987
#4 0x000000000081fc8e in JOIN::exec (this=0x7fff84014718) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3781
#5 0x00000000007f79bc in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff840146f8, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4186
#6 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff840146f8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#7 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#8 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#9 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t3 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
#0 join_read_next (info=0x7fff84016198) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:20232
#1 0x00000000006fa53b in READ_RECORD::read_record (this=0x7fff84016198) at /home/midenok/src/mariadb/trunk/src/sql/records.h:73
#2 0x0000000000839648 in sub_select (join=0x7fff84014698, join_tab=0x7fff840160d0, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19251
Not many records in table.
read_first_record
assigned to join_init_read_record()
#0 make_join_readinfo (join=0x7fff84014698, options=0, no_jbuf_after=1) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:12042
#1 0x000000000080121b in JOIN::optimize_stage2 (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:2377
#2 0x0000000000803a5b in JOIN::optimize_inner (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1895
#3 0x00000000007ff175 in JOIN::optimize (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1467
#4 0x00000000007f78cf in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014678, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4172
#5 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014678, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#6 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#7 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#8 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t2 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
12023 case JT_ALL:
12024 case JT_HASH:
12025 /*
12026 If previous table use cache
12027 If the incoming data set is already sorted don't use cache.
12028 Also don't use cache if this is the first table in semi-join
12029 materialization nest.
12030 */
12031 /* These init changes read_record */
12032 if (tab->use_quick == 2)
12033 {
12034 join->thd->set_status_no_good_index_used();
12035 tab->read_first_record= join_init_quick_read_record;
12036 if (statistics)
12037 join->thd->inc_status_select_range_check();
12038 }
12039 else
12040 {
12041 if (!tab->bush_children)
12042 tab->read_first_record= join_init_read_record;
read_first_record
assigned to join_init_read_record()
Same as Good:
#0 make_join_readinfo (join=0x7fff84014698, options=0, no_jbuf_after=1) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:12042
...
read_first_record
assigned to join_read_first()
#0 make_join_readinfo (join=0x7fff84014698, options=0, no_jbuf_after=1) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:12105
... same as Good ...
12077 if (!table->no_keyread)
12078 {
12079 if (tab->select && tab->select->quick &&
12080 tab->select->quick->index != MAX_KEY && //not index_merge
12081 table->covering_keys.is_set(tab->select->quick->index))
12082 table->file->ha_start_keyread(tab->select->quick->index);
12083 else if (!table->covering_keys.is_clear_all() &&
12084 !(tab->select && tab->select->quick))
12085 { // Only read index tree
12086 if (tab->loosescan_match_tab)
12087 tab->index= tab->loosescan_key;
12088 else
12089 {
.....
12103 tab->index=find_shortest_key(table, & table->covering_keys);
12104 }
12105 tab->read_first_record= join_read_first;
(gdb) p tab->select->quick
$4 = (QUICK_SELECT_I *) 0x0
quick
constructed#0 0x0000000000cb86cb in SQL_SELECT::test_quick_select (this=0x7fff84015f00, thd=0x7fff84000d50, keys_to_use=..., prev_tables=0, limit=18446744073709551615, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=true) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2679
#1 0x000000000084753d in get_quick_record_count (thd=0x7fff84000d50, select=0x7fff84015f00, table=0x7fff84066930, keys=0x7fff84014f18, limit=18446744073709551615) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4223
#2 0x0000000000808fc8 in make_join_statistics (join=0x7fff84014698, tables_list=..., keyuse_array=0x7fff84014988) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4849
#3 0x0000000000803943 in JOIN::optimize_inner (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1882
#4 0x00000000007ff175 in JOIN::optimize (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1467
#5 0x00000000007f78cf in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014678, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4172
#6 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014678, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#7 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#8 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#9 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t2 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
2675 /* If we got a read plan, create a quick select from it. */
2676 if (best_trp)
2677 {
2678 records= best_trp->records;
2679 if (!(quick= best_trp->make_quick(¶m, TRUE)) || quick->init())
2680 {
2681 delete quick;
2682 quick= NULL;
2683 }
2684 }
tab->select->quick
assigned#0 make_join_select (join=0x7fff84014698, select=0x7fff84016850, cond=0x7fff84014468) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:10561
#1 0x000000000080050f in JOIN::optimize_stage2 (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:2123
#2 0x0000000000803a5b in JOIN::optimize_inner (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1895
#3 0x00000000007ff175 in JOIN::optimize (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1467
#4 0x00000000007f78cf in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014678, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4172
#5 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014678, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#6 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#7 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#8 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t2 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
10550 if (tab->quick)
10551 {
10552 /* Use quick key read if it's a constant and it's not used
10553 with key reading */
10554 if ((tab->needed_reg.is_clear_all() && tab->type != JT_EQ_REF &&
10555 tab->type != JT_FT &&
10556 ((tab->type != JT_CONST && tab->type != JT_REF) ||
10557 (uint) tab->ref.key == tab->quick->index)) || is_hj)
10558 {
10559 DBUG_ASSERT(tab->quick->is_valid());
10560 sel->quick=tab->quick; // Use value from get_quick_...
best_trp
assigned2590 /* Get best 'range' plan and prepare data for making other plans */
2591 if ((range_trp= get_key_scans_params(¶m, tree, FALSE, TRUE,
2592 best_read_time)))
2593 {
2594 best_trp= range_trp;
2595 best_read_time= best_trp->read_cost;
2596 }
(gdb) p best_read_time
$32 = 244.32268417213714
range_trp
failed2591 if ((range_trp= get_key_scans_params(¶m, tree, FALSE, TRUE,
(gdb) p best_read_time
$34 = 2.0165329443228788
best_trp
checked#0 SQL_SELECT::test_quick_select (this=0x7fff84015f00, thd=0x7fff84000d50, keys_to_use=..., prev_tables=0, limit=18446744073709551615, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=true) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2676
#1 0x000000000084753d in get_quick_record_count (thd=0x7fff84000d50, select=0x7fff84015f00, table=0x7fff8406ef80, keys=0x7fff84014f18, limit=18446744073709551615) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4223
#2 0x0000000000808fc8 in make_join_statistics (join=0x7fff84014698, tables_list=..., keyuse_array=0x7fff84014988) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4849
#3 0x0000000000803943 in JOIN::optimize_inner (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1882
#4 0x00000000007ff175 in JOIN::optimize (this=0x7fff84014698) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1467
#5 0x00000000007f78cf in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014678, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4172
#6 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014678, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#7 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#8 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#9 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t3 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
(gdb) p best_trp
$24 = (TABLE_READ_PLAN *) 0x0
Whether rr_quick()
is used or not depends on best_read_time
in SQL_SELECT::test_quick_select()
. Setting it to 240 makes range_trp
and best_trp
non-zero.
break join_init_read_record(st_join_table*)
break /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19229
disable $bpnum
break /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:12105
disable $bpnum
break sql_select.cc:3426
break sql_select.cc:12042
disable $bpnum
break sql_select.cc:12178
break sql_select.cc:12184
break sql_select.cc:22164
break /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:12077
commands
p tab->select
end
disable $bpnum
break sql_select.cc:22257
break sql_select.cc:22316
break sql_select.cc:22333
commands
end
break /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:10550
commands
p tab
end
disable $bpnum
break /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2676
disable $bpnum
break /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2591
break rr_quick(READ_RECORD*)
disable $bpnum
TABLE
/*
Map of keys that can be used to retrieve all data from this table
needed by the query without reading the row.
*/
key_map covering_keys;
key_map quick_keys, intersect_keys;
/*
A set of keys that can be used in the query that references this
table.
All indexes disabled on the table's TABLE_SHARE (see TABLE::s) will be
subtracted from this set upon instantiation. Thus for any TABLE t it holds
that t.keys_in_use_for_query is a subset of t.s.keys_in_use. Generally we
must not introduce any new keys here (see setup_tables).
The set is implemented as a bitmap.
*/
key_map keys_in_use_for_query;
/* Map of keys that can be used to calculate GROUP BY without sorting */
key_map keys_in_use_for_group_by;
/* Map of keys that can be used to calculate ORDER BY without sorting */
key_map keys_in_use_for_order_by;
KEY *key_info; /* data of keys in database */
TABLE_SHARE
KEY *key_info; /* data of keys in database */
...
/*
Set of keys in use, implemented as a Bitmap.
Excludes keys disabled by ALTER TABLE ... DISABLE KEYS.
*/
key_map keys_in_use;
key_map keys_for_keyread;
...
uint keys, key_parts;
uint ext_key_parts; /* Total number of key parts in extended keys */
uint max_key_length, max_unique_length, total_key_length;
uint uniques; /* Number of UNIQUE index */
...
/* Primary key index number, used in TABLE::key_info[] */
uint primary_key;
test_quick_select()
requires keys_in_use_for_query
:
2428 keys_to_use.intersect(head->keys_in_use_for_query);
2429 if (!keys_to_use.is_clear_all())
2430 {
keys_in_use_for_query
is set#0 TABLE_LIST::process_index_hints (this=0x7fff84013bb0, tbl=0x7fff8406cd20) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:7335
#1 0x000000000070f93b in setup_tables (thd=0x7fff84000d50, context=0x7fff84005348, from_clause=0x7fff840054a0, tables=0x7fff84013bb0, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7478
#2 0x0000000000710317 in setup_tables_and_check_access (thd=0x7fff84000d50, context=0x7fff84005348, from_clause=0x7fff840054a0, tables=0x7fff84013bb0, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7585
#3 0x00000000007fb05d in JOIN::prepare (this=0x7fff84014718, tables_init=0x7fff84013bb0, wild_num=0, conds_init=0x7fff84014468, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005300, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1040
#4 0x00000000007f7899 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bb0, wild_num=0, fields=..., conds=0x7fff84014468, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff840146f8, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4164
#5 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff840146f8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#6 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#7 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#8 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select fld3 from t2 where fld3 LIKE 'honeysuckl_'", length=49, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
TR_table::query()
setups quick#0 SQL_SELECT::test_quick_select (this=0x7fff840185f8, thd=0x7fff84000d50, keys_to_use=..., prev_tables=0, limit=4294967295, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=false) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2556
#1 0x000000000090642a in TR_table::query (this=0x7fffe52a90e8, commit_time=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8703
#2 0x00000000009ffb0a in Item_func_vtq_id::get_by_commit_ts (this=0x7fff84014de8, commit_ts=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:124
#3 0x00000000009ffd87 in Item_func_vtq_id::val_int (this=0x7fff84014de8) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:156
#4 0x0000000000670079 in Item::val_int_result (this=0x7fff84014de8) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1221
#5 0x0000000000b3e7e9 in Item_cache_int::cache_value (this=0x7fff840170b8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9895
#6 0x00000000009f02e1 in Item_cache::has_value (this=0x7fff840170b8) at /home/midenok/src/mariadb/trunk/src/sql/item.h:6053
#7 0x0000000000b3eb3f in Item_cache_int::val_int (this=0x7fff840170b8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9932
#8 0x00000000006b52b9 in Item::val_uint (this=0x7fff840170b8) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1007
#9 0x00000000009ffff2 in Item_func_vtq_trx_sees::val_int (this=0x7fff84014eb0) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:175
#10 0x00000000009def88 in Type_handler_int_result::Item_val_bool (this=0x20573d0 <type_handler_long>, item=0x7fff84014eb0) at /home/midenok/src/mariadb/trunk/src/sql/sql_type.cc:3240
#11 0x000000000066ff15 in Item::val_bool (this=0x7fff84014eb0) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1158
#12 0x0000000000b60e1a in Item_cond_and::val_int (this=0x7fff84017280) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:5105
#13 0x0000000000839da3 in evaluate_join_record (join=0x7fff84014650, join_tab=0x7fff840166b0, error=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19327
#14 0x0000000000839561 in sub_select (join=0x7fff84014650, join_tab=0x7fff840166b0, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19232
#15 0x0000000000821d28 in do_select (join=0x7fff84014650, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18772
#16 0x0000000000820b1a in JOIN::exec_inner (this=0x7fff84014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3987
#17 0x000000000081fc8e in JOIN::exec (this=0x7fff84014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3781
#18 0x00000000007f79bc in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013f08, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014630, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4186
#19 0x00000000007f7213 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014630, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#20 0x00000000007b8b1f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013f08) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#21 0x00000000007ad980 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#22 0x00000000007a8443 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select *,row_start,row_end from i1 for system_time as of now()", length=62, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
This condition fails:
2556 if (tree->type != SEL_TREE::KEY && tree->type != SEL_TREE::KEY_SMALLER)
2557 tree= NULL;
(gdb) p tree->type
$46 = SEL_TREE::ALWAYS
explain select * from t2 where fld1 < 100;
(gdb) p tree->type
$3 = SEL_TREE::KEY
SEL_TREE::ALWAYS
set#0 Item::get_mm_tree_for_const (this=0x7fff64017f48, param=0x7ffff4f334e8) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:7683
#1 0x000000000071a0c6 in Item_func::get_mm_tree (this=0x7fff64017f48, param=0x7ffff4f334e8, cond_ptr=0x7fff640180b0) at /home/midenok/src/mariadb/trunk/src/sql/item_func.h:149
#2 0x000000000071917b in Item_bool_func2_with_rev::get_mm_tree (this=0x7fff64017f48, param=0x7ffff4f334e8, cond_ptr=0x7fff640180b0) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:487
#3 0x0000000000cb86e1 in SQL_SELECT::test_quick_select (this=0x7fff640180a8, thd=0x7fff64000d50, keys_to_use=..., prev_tables=0, limit=4294967295, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=false) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2544
#4 0x000000000090691a in TR_table::query (this=0x7ffff4f340e8, commit_time=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8701
(gdb) p dbug_print_item(this)
$10 = 0x205a680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-02 16:50:31.231349'"
#0 0x000000000071914f in Item_bool_func2_with_rev::get_mm_tree (this=0x7fff7c017fc8, param=0x7fffe52a84e8, cond_ptr=0x7fff7c018130) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:486
#1 0x0000000000cb86e1 in SQL_SELECT::test_quick_select (this=0x7fff7c018128, thd=0x7fff7c000d50, keys_to_use=..., prev_tables=0, limit
485 if (!(ftree= get_full_func_mm_tree_for_args(param, args[0], args[1])) &&
486 !(ftree= get_full_func_mm_tree_for_args(param, args[1], args[0])))
487 ftree= Item_func::get_mm_tree(param, cond_ptr);
Good: get_full_func_mm_tree_for_args(param, args[0], args[1])
is non-NULL, Item_func::get_mm_tree(param, cond_ptr)
is not called. Bad: Item_func::get_mm_tree()
is called.
#0 Item_bool_func::get_full_func_mm_tree_for_args (this=0x7fff7c017fc8, param=0x7fffe52a84e8, item=0x7fff7c017dd0, value=0x7fff7c017f18) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:199
#1 0x000000000071910b in Item_bool_func2_with_rev::get_mm_tree (this=0x7fff7c017fc8, param=0x7fffe52a84e8, cond_ptr=0x7fff7c018130) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:485
#2 0x0000000000cb86e1 in SQL_SELECT::test_quick_select (this=0x7fff7c018128, thd=0x7fff7c000d50, keys_to_use=..., prev_tables=0, limit=4294967295, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=false) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2544
199 if (field->type() == Item::FIELD_ITEM && !field->const_item() &&
200 (!value || !value->is_expensive()))
201 DBUG_RETURN(get_full_func_mm_tree(param, (Item_field *) field, value));
(gdb) p field->const_item()
$23 = true
(gdb) p field->name.str
$25 = 0x7fff7c017f00 "commit_timestamp"
commit_timestamp field is wrongly const_item()
.
#0 Item_field::used_tables (this=0x7fff84017d50) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:3552
#1 0x00000000006703c9 in Item::const_item (this=0x7fff84017d50) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1321
#2 0x0000000000719f48 in Item_bool_func::get_full_func_mm_tree_for_args (this=0x7fff84017f48, param=0x7fffe52a84e8, item=0x7fff84017d50, value=0x7fff84017e98) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:199
#3 0x000000000071910b in Item_bool_func2_with_rev::get_mm_tree (this=0x7fff84017f48, param=0x7fffe52a84e8, cond_ptr=0x7fff840180b0) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.h:485
#4 0x0000000000cb86e1 in SQL_SELECT::test_quick_select (this=0x7fff840180a8, thd=0x7fff84000d50, keys_to_use=..., prev_tables=0, limit=4294967295, force_quick_range=false, ordered_output=false, remove_false_parts_of_where=false) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:2544
3548 table_map Item_field::used_tables() const
3549 {
....
3552 return (get_depended_from() ? OUTER_REF_TABLE_BIT : field->table->map);
3553 }
(gdb) p get_depended_from()
$34 = (st_select_lex *) 0x0
(gdb) p field->table->map
$35 = 0
(gdb) p field->table->alias.Ptr
$37 = 0x7fff841015d0 "transaction_registry"
table->map
is 0.
table->map
is set#0 setup_table_map (table=0x7fff840c1ea0, table_list=0x7fff84013b98, tablenr=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.h:334
#1 0x000000000070f9f6 in setup_tables (thd=0x7fff84000d50, context=0x7fff84005348, from_clause=0x7fff840054a0, tables=0x7fff84013b98, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7476
#2 0x00000000007103e7 in setup_tables_and_check_access (thd=0x7fff84000d50, context=0x7fff84005348, from_clause=0x7fff840054a0, tables=0x7fff84013b98, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7585
#3 0x00000000007fb57d in JOIN::prepare (this=0x7fff84014c50, tables_init=0x7fff84013b98, wild_num=1, conds_init=0x7fff840143b0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005300, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1056
#4 0x00000000007f7d09 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013b98, wild_num=1, fields=..., conds=0x7fff840143b0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748612, result=0x7fff840145d0, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4180
#5 0x0000000000841ab3 in mysql_explain_union (thd=0x7fff84000d50, unit=0x7fff84004b88, result=0x7fff840145d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:25681
#6 0x00000000007b8a66 in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013b98) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6491
#7 0x00000000007addf0 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#8 0x00000000007a88b3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "explain select * from t2 where fld1 < 100", length=41, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
333 table->map= (table_map) 1 << tablenr;
7456 while ((table_list= ti++))
7457 {
7458 TABLE *table= table_list->table;
7459 if (table)
7460 table->pos_in_table_list= table_list;
....
7473 else if (table)
7474 {
7475 table->pos_in_table_list= table_list;
7476 setup_table_map(table, table_list, tablenr);
....
7480 }
7481 tablenr++;
7482 }
Call setup_tables()
or setup_table_map()
. setup_tables()
seems to be excessive, setup_table_map()
should be enough.
rr_quick()
check in TR_tableTRANSACTION_REGISTRY
by given number of recordsdelimiter ~~
create or replace procedure update_tr(size int)
begin
declare i int default 0;
create or replace table tmp (
x int,
row_start bigint unsigned as row start invisible,
row_end bigint unsigned as row end invisible,
period for system_time (row_start, row_end))
engine innodb
with system versioning;
insert into tmp (x) values (-1);
while i < size do
update tmp set x= i;
set i= i + 1;
end while;
end~~
delimiter ;
table->map
init rr_quick()
is now successfully used:#0 rr_quick (info=0x7fffe52a8fb0) at /home/midenok/src/mariadb/trunk/src/sql/records.cc:366
#1 0x00000000006fa60b in READ_RECORD::read_record (this=0x7fffe52a8fb0) at /home/midenok/src/mariadb/trunk/src/sql/records.h:73
#2 0x00000000009069f4 in TR_table::query (this=0x7fffe52a90e8, commit_time=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8720
#3 0x00000000009fffba in Item_func_vtq_id::get_by_commit_ts (this=0x7fff7c014de8, commit_ts=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:124
#4 0x0000000000a00237 in Item_func_vtq_id::val_int (this=0x7fff7c014de8) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:156
#5 0x0000000000670149 in Item::val_int_result (this=0x7fff7c014de8) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1221
#6 0x0000000000b3edb9 in Item_cache_int::cache_value (this=0x7fff7c017000) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9895
#7 0x00000000009f07b1 in Item_cache::has_value (this=0x7fff7c017000) at /home/midenok/src/mariadb/trunk/src/sql/item.h:6053
#8 0x0000000000b3f10f in Item_cache_int::val_int (this=0x7fff7c017000) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9932
#9 0x00000000006b5389 in Item::val_uint (this=0x7fff7c017000) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1007
#10 0x0000000000a004bd in Item_func_vtq_trx_sees::val_int (this=0x7fff7c014f78) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:176
#11 0x00000000009df6a8 in Type_handler_int_result::Item_val_bool (this=0x20583d0 <type_handler_long>, item=0x7fff7c014f78) at /home/midenok/src/mariadb/trunk/src/sql/sql_type.cc:3240
#12 0x000000000066ffe5 in Item::val_bool (this=0x7fff7c014f78) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1158
#13 0x0000000000b613ea in Item_cond_and::val_int (this=0x7fff7c017280) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:5105
#14 0x000000000083a2c3 in evaluate_join_record (join=0x7fff7c014650, join_tab=0x7fff7c0166b0, error=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19343
#15 0x0000000000839a81 in sub_select (join=0x7fff7c014650, join_tab=0x7fff7c0166b0, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19248
#16 0x0000000000822248 in do_select (join=0x7fff7c014650, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18788
#17 0x000000000082103a in JOIN::exec_inner (this=0x7fff7c014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4003
#18 0x00000000008201ae in JOIN::exec (this=0x7fff7c014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3797
#19 0x00000000007f7e2c in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f08, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c014630, unit=0x7fff7c004b88, select_lex=0x7fff7c005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4202
#20 0x00000000007f7683 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c014630, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#21 0x00000000007b8f8f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f08) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#22 0x00000000007addf0 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#23 0x00000000007a88b3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013978 "select *,row_start,row_end from i1 for system_time as of now()", length=62, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
call select_tr(100);
Query OK, 101 rows affected (12.083 sec)
call select_tr(100);
Query OK, 101 rows affected (5.175 sec)
vers_setup_conds()
On historical query TRT should be added like this:
11790 table_ident opt_use_partition opt_for_system_time_clause opt_table_alias opt_key_definition
11791 {
11792 if (!($$= Select->add_table_to_list(thd, $2, $5,
11793 Select->get_table_join_options(),
11794 YYPS->m_lock_type,
11795 YYPS->m_mdl_type,
11796 Select->pop_index_hints(),
11797 $3)))
rr_quick()
select * from mysql.transaction_registry where transaction_id > 60165;
select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23';
#0 0x000000000099f561 in DsMrr_impl::dsmrr_next (this=0x7fff840e2bd0, range_info=0x7fffe50fdca8) at /home/midenok/src/mariadb/trunk/src/sql/multi_range_read.cc:1399
#1 0x0000000000da8d5f in ha_innobase::multi_range_read_next (this=0x7fff840e2788, range_info=0x7fffe50fdca8) at /home/midenok/src/mariadb/trunk/src/storage/innobase/handler/ha_innodb.cc:21222
#2 0x0000000000ccdca0 in QUICK_RANGE_SELECT::get_next (this=0x7fff8410f590) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:11446
#3 0x0000000000ce6780 in rr_quick (info=0x7fffe50fdfb0) at /home/midenok/src/mariadb/trunk/src/sql/records.cc:366
#4 0x00000000006fa69b in READ_RECORD::read_record (this=0x7fffe50fdfb0) at /home/midenok/src/mariadb/trunk/src/sql/records.h:73
#5 0x0000000000906c14 in TR_table::query (this=0x7fffe50fe0e8, commit_time=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8733
#6 0x0000000000a001fa in Item_func_vtq_id::get_by_commit_ts (this=0x7fff84014e78, commit_ts=..., backwards=false) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:124
#7 0x0000000000a00477 in Item_func_vtq_id::val_int (this=0x7fff84014e78) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:156
#8 0x00000000006701d9 in Item::val_int_result (this=0x7fff84014e78) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1221
#9 0x0000000000b3f0a9 in Item_cache_int::cache_value (this=0x7fff84017090) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9895
#10 0x00000000009f09f1 in Item_cache::has_value (this=0x7fff84017090) at /home/midenok/src/mariadb/trunk/src/sql/item.h:6053
#11 0x0000000000b3f3ff in Item_cache_int::val_int (this=0x7fff84017090) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:9932
#12 0x00000000006b5419 in Item::val_uint (this=0x7fff84017090) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1007
#13 0x0000000000a006fd in Item_func_vtq_trx_sees::val_int (this=0x7fff84015008) at /home/midenok/src/mariadb/trunk/src/sql/item_vers.cc:176
#14 0x00000000009df8e8 in Type_handler_int_result::Item_val_bool (this=0x20583d0 <type_handler_long>, item=0x7fff84015008) at /home/midenok/src/mariadb/trunk/src/sql/sql_type.cc:3240
#15 0x0000000000670075 in Item::val_bool (this=0x7fff84015008) at /home/midenok/src/mariadb/trunk/src/sql/item.h:1158
#16 0x0000000000b616da in Item_cond_and::val_int (this=0x7fff84017310) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:5105
#17 0x000000000083a4c3 in evaluate_join_record (join=0x7fff840146e0, join_tab=0x7fff84016740, error=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19357
#18 0x0000000000839c81 in sub_select (join=0x7fff840146e0, join_tab=0x7fff84016740, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19262
#19 0x0000000000822448 in do_select (join=0x7fff840146e0, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18802
#20 0x000000000082123a in JOIN::exec_inner (this=0x7fff840146e0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4017
#21 0x00000000008203ae in JOIN::exec (this=0x7fff840146e0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3811
#22 0x00000000007f7ebc in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013f18, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff840146c0, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4216
#23 0x00000000007f7713 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff840146c0, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#24 0x00000000007b901f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013f18) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#25 0x00000000007ade80 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#26 0x00000000007a8943 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
1399 while ((res= strategy->get_next(range_info)) == HA_ERR_END_OF_FILE)
(gdb) p strategy
$7 = (Mrr_reader *) 0x0
DsMrr_impl
constructed#0 DsMrr_impl::DsMrr_impl (this=0x7fff840e2b40) at /home/midenok/src/mariadb/trunk/src/sql/multi_range_read.h:557
#1 0x0000000000d86a04 in ha_innobase::ha_innobase (this=0x7fff840e26f8, hton=0x294f160, table_arg=0x7fff840dc9a8) at /home/midenok/src/mariadb/trunk/src/storage/innobase/handler/ha_innodb.cc:2960
#2 0x0000000000daf467 in innobase_create_handler (hton=0x294f160, table=0x7fff840dc9a8, mem_root=0x7fff840e2578) at /home/midenok/src/mariadb/trunk/src/storage/innobase/handler/ha_innodb.cc:1534
#3 0x0000000000aff1b5 in get_new_handler (share=0x7fff840dc9a8, alloc=0x7fff840e2578, db_type=0x294f160) at /home/midenok/src/mariadb/trunk/src/sql/handler.cc:267
#4 0x00000000008f35a6 in open_table_from_share (thd=0x7fff84000d50, share=0x7fff840dc9a8, alias=0x7fff84013c40, db_stat=33, prgflag=8, ha_open_flags=16, outparam=0x7fff840e1ab0, is_create_table=false, partitions_to_open=0x0) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:3169
#5 0x00000000007022c7 in open_table (thd=0x7fff84000d50, table_list=0x7fff84013bf8, ot_ctx=0x7fffe52aa6f8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:1920
#6 0x0000000000706588 in open_and_process_table (thd=0x7fff84000d50, lex=0x7fff84004ac0, tables=0x7fff84013bf8, counter=0x7fffe52aa7fc, flags=0, prelocking_strategy=0x7fffe52aa870, has_prelocking_list=false, ot_ctx=0x7fffe52aa6f8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:3512
#7 0x00000000007052ed in open_tables (thd=0x7fff84000d50, options=..., start=0x7fffe52aa810, counter=0x7fffe52aa7fc, flags=0, prelocking_strategy=0x7fffe52aa870) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4030
#8 0x0000000000709895 in open_and_lock_tables (thd=0x7fff84000d50, options=..., tables=0x7fff84013bf8, derived=true, flags=0, prelocking_strategy=0x7fffe52aa870) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4907
#9 0x00000000006b75ac in open_and_lock_tables (thd=0x7fff84000d50, tables=0x7fff84013bf8, derived=true, flags=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.h:487
#10 0x00000000007b898c in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6473
#11 0x00000000007ade80 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#12 0x00000000007a8943 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select * from mysql.transaction_registry where transaction_id > 60165", length=69, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
#0 DsMrr_impl::dsmrr_init (this=0x7fff840e2bd0, h_arg=0x7fff840e2788, seq_funcs=0x7fffe52aa060, seq_init_param=0x7fff840e65b0, n_ranges=1, mode=76, buf=0x7fffe52aa0d0) at /home/midenok/src/mariadb/trunk/src/sql/multi_range_read.cc:818
#1 0x0000000000da8d28 in ha_innobase::multi_range_read_init (this=0x7fff840e2788, seq=0x7fffe52aa060, seq_init_param=0x7fff840e65b0, n_ranges=1, mode=76, buf=0x7fffe52aa0d0) at /home/midenok/src/mariadb/trunk/src/storage/innobase/handler/ha_innodb.cc:21214
#2 0x0000000000ccdb89 in QUICK_RANGE_SELECT::reset (this=0x7fff840e65b0) at /home/midenok/src/mariadb/trunk/src/sql/opt_range.cc:11412
#3 0x000000000081e601 in join_init_read_record (tab=0x7fff84016700) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:20170
#4 0x0000000000839c1a in sub_select (join=0x7fff84014650, join_tab=0x7fff84016700, end_of_records=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:19259
#5 0x0000000000822448 in do_select (join=0x7fff84014650, procedure=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:18802
#6 0x000000000082123a in JOIN::exec_inner (this=0x7fff84014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4017
#7 0x00000000008203ae in JOIN::exec (this=0x7fff84014650) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:3811
#8 0x00000000007f7ebc in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013bf8, wild_num=1, fields=..., conds=0x7fff84014410, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84014630, unit=0x7fff84004b88, select_lex=0x7fff84005300) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4216
#9 0x00000000007f7713 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84014630, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#10 0x00000000007b901f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013bf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6552
#11 0x00000000007ade80 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3763
#12 0x00000000007a8943 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013978 "select * from mysql.transaction_registry where transaction_id > 60165", length=69, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8009
if (tab->select && tab->select->quick && tab->select->quick->reset())
{
/* Ensures error status is propagated back to client */
report_error(tab->table,
tab->join->thd->killed ? HA_ERR_QUERY_INTERRUPTED : HA_ERR_OUT_OF_MEM);
return 1;
}
This should be placed in correct place:
if (select->quick && select->quick->reset())
{
if (thd->killed)
my_error(ER_QUERY_INTERRUPTED, MYF(0));
else
my_error(ER_OUT_OF_RESOURCES, MYF(0));
return false;
}
select *,
row_start,
row_end
from
i1 for system_time all,
(
select transaction_id __trx_id
from mysql.transaction_registry
where commit_timestamp <= '2018-04-04 16:40:23'
order by commit_timestamp desc
limit 1
) __transaction_registry
where vtq_trx_sees(__trx_id, row_start)
and vtq_trx_sees_eq(row_end, __trx_id);
/*
Similar to query_specification, but for derived tables.
Example: the inner parenthesized SELECT in this query:
SELECT * FROM (SELECT * FROM t1);
*/
derived_query_specification:
SELECT_SYM select_derived_init select_derived2
{
if ($2)
Select->set_braces(1);
$$= NULL;
}
;
select_derived_init:
{
LEX *lex= Lex;
TABLE_LIST *embedding= lex->current_select->embedding;
$$= embedding &&
!embedding->nested_join->join_list.elements;
/* return true if we are deeply nested */
}
;
select_derived2:
{
LEX *lex= Lex;
lex->derived_tables|= DERIVED_SUBQUERY;
if (!lex->expr_allows_subselect ||
lex->sql_command == (int)SQLCOM_PURGE)
{
thd->parse_error();
MYSQL_YYABORT;
}
if (lex->current_select->linkage == GLOBAL_OPTIONS_TYPE ||
mysql_new_select(lex, 1, NULL))
MYSQL_YYABORT;
mysql_init_select(lex);
lex->current_select->linkage= DERIVED_TABLE_TYPE;
lex->current_select->parsing_place= SELECT_LIST;
}
select_options select_item_list
{
Select->parsing_place= NO_MATTER;
}
opt_table_expression
;
select_item_list:
select_item_list ',' select_item
| select_item
| '*'
...
;
select_item:
remember_name table_wild remember_end
{
if (add_item_to_list(thd, $2))
MYSQL_YYABORT;
}
| remember_name expr remember_end select_alias
{
DBUG_ASSERT($1 < $3);
if (add_item_to_list(thd, $2))
MYSQL_YYABORT;
if ($4.str)
{
if (Lex->sql_command == SQLCOM_CREATE_VIEW &&
check_column_name($4.str))
my_yyabort_error((ER_WRONG_COLUMN_NAME, MYF(0), $4.str));
$2->is_autogenerated_name= FALSE;
$2->set_name(thd, $4.str, $4.length, system_charset_info);
}
else if (!$2->name.str || $2->name.str == item_empty_name)
{
$2->set_name(thd, $1, (uint) ($3 - $1), thd->charset());
}
}
;
/**
<table expression>, as in the SQL standard.
*/
table_expression:
from_clause
opt_where_clause
opt_group_clause
opt_having_clause
opt_window_clause
;
from_clause:
FROM table_reference_list
;
table_reference_list:
join_table_list // (table_primary_ident)
{
Select->context.table_list=
Select->context.first_name_resolution_table=
Select->table_list.first;
}
...
;
table_primary_ident:
{
DBUG_ASSERT(Select);
SELECT_LEX *sel= Select;
sel->table_join_options= 0;
}
table_ident opt_use_partition opt_for_system_time_clause opt_table_alias opt_key_definition
{
if (!($$= Select->add_table_to_list(thd, $2, $5,
Select->get_table_join_options(),
YYPS->m_lock_type,
YYPS->m_mdl_type,
Select->pop_index_hints(),
$3)))
MYSQL_YYABORT;
TABLE_LIST *tl= $$;
Select->add_joined_table(tl);
if ($4)
tl->vers_conditions= Lex->vers_conditions;
}
;
#0 st_select_lex::print (this=0x7fff84013b68, thd=0x7fff84000d50, str=0x7fffe52ab4f8, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:26073
#1 0x000000000077e197 in st_select_lex_unit::print (this=0x7fff84013f80, str=0x7fffe52ab4f8, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:2860
#2 0x000000000084257e in TABLE_LIST::print (this=0x7fff840147f0, thd=0x7fff84000d50, eliminated_tables=0, str=0x7fffe52ab4f8, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:25987
#3 0x000000000084f77c in print_table_array (thd=0x7fff84000d50, eliminated_tables=0, str=0x7fffe52ab4f8, table=0x7fff84014e60, end=0x7fff84014e68, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:25726
#4 0x0000000000842f79 in print_join (thd=0x7fff84000d50, eliminated_tables=0, str=0x7fffe52ab4f8, tables=0x7fff840054b0, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:25882
#5 0x00000000008434e9 in st_select_lex::print (this=0x7fff84005310, thd=0x7fff84000d50, str=0x7fffe52ab4f8, query_type=QT_EXPLAIN) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:26165
#6 0x0000000000b43668 in dbug_print_select (sl=0x7fff84005310) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:10637
#7 0x00000000007abd94 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3272
#8 0x00000000007a89f3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "select * from (select 1) x", length=26, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8035
26161 if (table_list.elements)
26162 {
26163 str->append(STRING_WITH_LEN(" from "));
26164 /* go through join tree */
26165 print_join(thd, join? join->eliminated_tables: 0, str, &top_join_list, query_type);
26166 }
join_list
vs top_join_list
void st_select_lex::init_query()
{
...
top_join_list.empty();
join_list= &top_join_list;
(gdb) p &sel->top_join_list
$19 = (List<TABLE_LIST> *) 0x7fff84014770
(gdb) p sel->join_list
$20 = (List<TABLE_LIST> *) 0x7fff84014770
8582 { // add table
8583 sel->parsing_place= NO_MATTER;
8584 Table_ident *ti= newx Table_ident(thd, &MYSQL_SCHEMA_NAME,
8585 &TRANSACTION_REG_NAME, true);
8586 if (!ti)
8587 return true; // FIXME: error
8588
8589 sel->table_join_options= 0;
8590 TABLE_LIST *tl= sel->add_table_to_list(thd, ti, &TRANSACTION_REG_NAME,
8591 sel->get_table_join_options(),
8592 TL_READ, MDL_SHARED_READ, NULL, NULL, NULL);
8593 if (!tl)
8594 return true; // FIXME: error
8595 sel->add_joined_table(tl); // FIXME: is it needed?
8596 sel->context.table_list= tl;
8597 sel->context.first_name_resolution_table= tl;
8598 p.trt= tl;
8599 }
#3 0x00007ffff600dfc2 in __GI___assert_fail (assertion=0x152e980 "trt", file=0x152e74e "/home/midenok/src/mariadb/trunk/src/sql/sql_select.cc", line=939, function=0x152e8fe "int st_select_lex::vers_setup_conds(THD *, TABLE_LIST *, COND **)") at assert.c:101
#4 0x00000000007fa75d in st_select_lex::vers_setup_conds (this=0x7fff78170290, thd=0x7fff78000d50, tables=0x7fff78171500, where_expr=0x7fff78131370) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:939
#5 0x00000000007fbbab in JOIN::prepare (this=0x7fff78130f68, tables_init=0x7fff78171500, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff78170290, unit_arg=0x7fff7816fb08) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1101
#6 0x00000000008d0aed in st_select_lex_unit::prepare_join (this=0x7fff7816fb08, thd_arg=0x7fff78000d50, sl=0x7fff78170290, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#7 0x00000000008cbd09 in st_select_lex_unit::prepare (this=0x7fff7816fb08, thd_arg=0x7fff78000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#8 0x00000000007dfd3f in mysql_test_select (stmt=0x7fff7816d490, tables=0x7fff78171500) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#9 0x00000000007daa36 in check_prepared_statement (stmt=0x7fff7816d490) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2319
#10 0x00000000007d4dee in Prepared_statement::prepare (this=0x7fff7816d490, packet=0x7fff7811fe70 "select x from tmp for system_time as of now() into @x;", packet_len=54) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3963
#11 0x00000000007d5818 in mysql_sql_stmt_prepare (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2796
#12 0x00000000007ae080 in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3800
#13 0x00000000006b0345 in sp_instr_stmt::exec_core (this=0x7fff7811ff68, thd=0x7fff78000d50, nextp=0x7fffe52aa758) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3595
#14 0x00000000006aeb62 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff7811ffb8, thd=0x7fff78000d50, nextp=0x7fffe52aa758, open_tables=false, instr=0x7fff7811ff68) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3311
#15 0x00000000006af56d in sp_instr_stmt::execute (this=0x7fff7811ff68, thd=0x7fff78000d50, nextp=0x7fffe52aa758) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3498
#16 0x00000000006a6614 in sp_head::execute (this=0x7fff78115878, thd=0x7fff78000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1349
#17 0x00000000006a8d68 in sp_head::execute_procedure (this=0x7fff78115878, thd=0x7fff78000d50, args=0x7fff78005930) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2287
#18 0x00000000007ab878 in do_execute_sp (thd=0x7fff78000d50, sp=0x7fff78115878) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2936
#19 0x00000000007ab21b in Sql_cmd_call::execute (this=0x7fff78013a78, thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3178
#20 0x00000000007b6eef in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6306
#21 0x00000000007a89a3 in mysql_parse (thd=0x7fff78000d50, rawbuf=0x7fff78013998 "call select_tr(100)", length=19, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8035
Call add_subquery()
under check_prepared_statement()
.
delimiter ~~
create or replace procedure select_tr(size int)
begin
declare i int default 0;
create or replace table tmp (
x int,
row_start bigint unsigned as row start invisible,
row_end bigint unsigned as row end invisible,
period for system_time (row_start, row_end))
engine innodb
with system versioning;
insert into tmp (x) values (-1);
prepare stmt from "select x from tmp for system_time as of now() into @x;";
while i < size do
execute stmt;
set i= i + 1;
end while;
drop prepare stmt;
end~~
delimiter ;
call select_tr(1);
#0 my_error (nr=1054, MyFlags=0) at /home/midenok/src/mariadb/trunk/src/mysys/my_error.c:113
#1 0x000000000070d15c in find_field_in_tables (thd=0x7fff78000d50, item=0x7fff7816f118, first_table=0x7fff7816c880, last_table=0x0, ref=0x7fff7816f3b8, report_error=REPORT_ALL_ERRORS, check_privileges=true, register_tree_change=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:6202
#2 0x0000000000b3241f in Item_field::fix_outer_field (this=0x7fff7816f118, thd=0x7fff78000d50, from_field=0x7fffe52a3cc0, reference=0x7fff7816f3b8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:5991
#3 0x0000000000b336c8 in Item_field::fix_fields (this=0x7fff7816f118, thd=0x7fff78000d50, reference=0x7fff7816f3b8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6245
#4 0x0000000000ba06ad in Item_func::fix_fields (this=0x7fff7816f320, thd=0x7fff78000d50, ref=0x7fff78125c18) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#5 0x0000000000b61174 in Item_cond::fix_fields (this=0x7fff78125b00, thd=0x7fff78000d50, ref=0x7fff78126130) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#6 0x000000000071105d in setup_conds (thd=0x7fff78000d50, tables=0x7fff7816c880, leaves=..., conds=0x7fff78126130) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#7 0x00000000007fdc3c in setup_without_group (thd=0x7fff78000d50, ref_pointer_array=..., tables=0x7fff7816c880, leaves=..., fields=..., all_fields=..., conds=0x7fff78126130, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7812600f, reserved=0x7fff7816b8ec) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#8 0x00000000007fc191 in JOIN::prepare (this=0x7fff78125d28, tables_init=0x7fff7816c880, wild_num=0, conds_init=0x7fff78125b00, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7816b610, unit_arg=0x7fff7816ae88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#9 0x00000000007f7f99 in mysql_select (thd=0x7fff78000d50, tables=0x7fff7816c880, wild_num=0, fields=..., conds=0x7fff78125b00, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416185088, result=0x7fff7816cef8, unit=0x7fff7816ae88, select_lex=0x7fff7816b610) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#10 0x00000000007f7913 in handle_select (thd=0x7fff78000d50, lex=0x7fff7816adc0, result=0x7fff7816cef8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#11 0x00000000007b91ff in execute_sqlcom_select (thd=0x7fff78000d50, all_tables=0x7fff7816c880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#12 0x00000000007ae05c in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#13 0x00000000007db8f2 in Prepared_statement::execute (this=0x7fff7816a960, expanded_query=0x7fffe52a7df0, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#14 0x00000000007d7668 in Prepared_statement::execute_loop (this=0x7fff7816a960, expanded_query=0x7fffe52a7df0, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#15 0x00000000007d72f1 in mysql_sql_stmt_execute (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#16 0x00000000007ae0a9 in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#17 0x00000000006b0385 in sp_instr_stmt::exec_core (this=0x7fff78116850, thd=0x7fff78000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3595
#18 0x00000000006aeba2 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff781168a0, thd=0x7fff78000d50, nextp=0x7fffe52aa788, open_tables=false, instr=0x7fff78116850) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3311
#19 0x00000000006af5ad in sp_instr_stmt::execute (this=0x7fff78116850, thd=0x7fff78000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3498
#20 0x00000000006a6654 in sp_head::execute (this=0x7fff7810a238, thd=0x7fff78000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1349
#21 0x00000000006a8da8 in sp_head::execute_procedure (this=0x7fff7810a238, thd=0x7fff78000d50, args=0x7fff78005930) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2287
#22 0x00000000007ab9c8 in do_execute_sp (thd=0x7fff78000d50, sp=0x7fff7810a238) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2936
#23 0x00000000007ab36b in Sql_cmd_call::execute (this=0x7fff78013a70, thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3178
#24 0x00000000007b6f05 in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6284
#25 0x00000000007a8af3 in mysql_parse (thd=0x7fff78000d50, rawbuf=0x7fff78013998 "call select_tr(1)", length=17, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
Unknown column 'mysql.transaction_registry.transaction_id' in 'where clause'
(gdb) p context->first_name_resolution_table->alias
$12 = {
str = 0x7fff7816c878 "tmp",
length = 3
}
(gdb) p context->first_name_resolution_table->next_local->alias
$15 = {
str = 0x153fdc4 "_trt_subquery",
length = 13
}
(gdb) p context->first_name_resolution_table->next_global->alias
$17 = {
str = 0x163fdc3 "transaction_registry",
length = 20
}
(gdb) p context->first_name_resolution_table->next_name_resolution_table->alias
$22 = {
str = 0x153fdc4 "_trt_subquery",
length = 13
}
(gdb) p dbug_print_item(this)
$7 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.transaction_id"
(gdb) p context->first_name_resolution_table->alias
$8 = {
str = 0x163fdc3 "transaction_registry",
length = 20
}
(gdb) p context->first_name_resolution_table->next_local
$9 = (TABLE_LIST *) 0x0
(gdb) p context->first_name_resolution_table->next_global->alias
$10 = {
str = 0x153fdc4 "_trt_subquery",
length = 13
}
(gdb) p context->first_name_resolution_table->next_name_resolution_table
$11 = (TABLE_LIST *) 0x0
LEX::vers_add_trt_query()
called#0 0x00000000007da7c8 in check_prepared_statement (stmt=0x7fff70169410) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2253
#1 0x00000000007d4e0e in Prepared_statement::prepare (this=0x7fff70169410, packet=0x7fff70114280 "select x from tmp for system_time as of now() into @x;", packet_len=54) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#2 0x00000000007d5838 in mysql_sql_stmt_prepare (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#3 0x00000000007ae096 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#4 0x00000000006b0385 in sp_instr_stmt::exec_core (this=0x7fff70114378, thd=0x7fff70000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3595
#5 0x00000000006aeba2 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff701143c8, thd=0x7fff70000d50, nextp=0x7fffe52aa788, open_tables=false, instr=0x7fff70114378) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3311
#6 0x00000000006af5ad in sp_instr_stmt::execute (this=0x7fff70114378, thd=0x7fff70000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3498
#7 0x00000000006a6654 in sp_head::execute (this=0x7fff70109b88, thd=0x7fff70000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1349
#8 0x00000000006a8da8 in sp_head::execute_procedure (this=0x7fff70109b88, thd=0x7fff70000d50, args=0x7fff70005930) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2287
#9 0x00000000007ab9c8 in do_execute_sp (thd=0x7fff70000d50, sp=0x7fff70109b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2936
#10 0x00000000007ab36b in Sql_cmd_call::execute (this=0x7fff70013a70, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3178
#11 0x00000000007b6f05 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6284
#12 0x00000000007a8af3 in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70013998 "call select_tr(1)", length=17, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
(gdb) p dbug_print_select(&thd->lex->select_lex)
$14 = 0x205b680 <dbug_item_print_buf> "select x AS x from test.tmp join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= current_timestamp(6) order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery"
select x as x
from test.tmp
join
(select mysql.transaction_registry.transaction_id as transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= current_timestamp(6)
order by mysql.transaction_registry.commit_timestamp desc
limit 1) _trt_subquery
Looks good.
LEX::vers_add_trt_query()
called 2nd time#0 0x00000000007abd6a in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3251
#1 0x00000000007db8f2 in Prepared_statement::execute (this=0x7fff70169410, expanded_query=0x7fffe52a7df0, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#2 0x00000000007d7668 in Prepared_statement::execute_loop (this=0x7fff70169410, expanded_query=0x7fffe52a7df0, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#3 0x00000000007d72f1 in mysql_sql_stmt_execute (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#4 0x00000000007ae0a9 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#5 0x00000000006b0385 in sp_instr_stmt::exec_core (this=0x7fff701160e0, thd=0x7fff70000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3595
#6 0x00000000006aeba2 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff70116130, thd=0x7fff70000d50, nextp=0x7fffe52aa788, open_tables=false, instr=0x7fff701160e0) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3311
#7 0x00000000006af5ad in sp_instr_stmt::execute (this=0x7fff701160e0, thd=0x7fff70000d50, nextp=0x7fffe52aa788) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3498
#8 0x00000000006a6654 in sp_head::execute (this=0x7fff70109b88, thd=0x7fff70000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1349
#9 0x00000000006a8da8 in sp_head::execute_procedure (this=0x7fff70109b88, thd=0x7fff70000d50, args=0x7fff70005930) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2287
#10 0x00000000007ab9c8 in do_execute_sp (thd=0x7fff70000d50, sp=0x7fff70109b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2936
#11 0x00000000007ab36b in Sql_cmd_call::execute (this=0x7fff70013a70, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3178
#12 0x00000000007b6f05 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6284
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70013998 "call select_tr(1)", length=17, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
(gdb) p dbug_print_select(&thd->lex->select_lex)
$15 = 0x205b680 <dbug_item_print_buf> "select x AS x from test.tmp join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= current_timestamp(6) order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(tmp.row_end,`mysql`.transaction_registry.transaction_id) and vtq_trx_sees_eq(`mysql`.transaction_registry.transaction_id,tmp.row_start)"
select x as x
from test.tmp
join
(select mysql.transaction_registry.transaction_id as transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= current_timestamp(6)
order by mysql.transaction_registry.commit_timestamp desc
limit 1) _trt_subquery
where vtq_trx_sees(tmp.row_end,mysql.transaction_registry.transaction_id)
and vtq_trx_sees_eq(mysql.transaction_registry.transaction_id,tmp.row_start)
vtq_trx_sees
must be called on _trt_subquery.transaction_id
instead of mysql.transaction_registry.transaction_id
.LEX::vers_add_trt_query()
must be called once at prepare stage.call select_tr(1);
#3 0x00007ffff600dfc2 in __GI___assert_fail (assertion=0x164d3f3 "outer_context || !*from_field || *from_field == not_found_field", file=0x164bbe5 "/home/midenok/src/mariadb/trunk/src/sql/item.cc", line=5820, function=0x164d433 "int Item_field::fix_outer_field(THD *, Field **, Item **)") at assert.c:101
#4 0x0000000000b319e6 in Item_field::fix_outer_field (this=0x7fff7816f118, thd=0x7fff78000d50, from_field=0x7fffe52a3c90, reference=0x7fff7816f3b0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:5819
#5 0x0000000000b3389a in Item_field::fix_fields (this=0x7fff7816f118, thd=0x7fff78000d50, reference=0x7fff7816f3b0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6264
#6 0x0000000000ba06ed in Item_func::fix_fields (this=0x7fff7816f318, thd=0x7fff78000d50, ref=0x7fff78125c18) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#7 0x0000000000b611b4 in Item_cond::fix_fields (this=0x7fff78125b00, thd=0x7fff78000d50, ref=0x7fff78126130) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#8 0x000000000071105d in setup_conds (thd=0x7fff78000d50, tables=0x7fff7816c880, leaves=..., conds=0x7fff78126130) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#9 0x00000000007fdc7c in setup_without_group (thd=0x7fff78000d50, ref_pointer_array=..., tables=0x7fff7816c880, leaves=..., fields=..., all_fields=..., conds=0x7fff78126130, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7812600f, reserved=0x7fff7816b8ec) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#10 0x00000000007fc1d1 in JOIN::prepare (this=0x7fff78125d28, tables_init=0x7fff7816c880, wild_num=0, conds_init=0x7fff78125b00, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7816b610, unit_arg=0x7fff7816ae88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#11 0x00000000007f7fd9 in mysql_select (thd=0x7fff78000d50, tables=0x7fff7816c880, wild_num=0, fields=..., conds=0x7fff78125b00, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416185088, result=0x7fff7816cef8, unit=0x7fff7816ae88, select_lex=0x7fff7816b610) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#12 0x00000000007f7953 in handle_select (thd=0x7fff78000d50, lex=0x7fff7816adc0, result=0x7fff7816cef8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#13 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff78000d50, all_tables=0x7fff7816c880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#14 0x00000000007ae08a in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#15 0x00000000007db932 in Prepared_statement::execute (this=0x7fff7816a960, expanded_query=0x7fffe52a7dd0, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#16 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7816a960, expanded_query=0x7fffe52a7dd0, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#17 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#18 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#19 0x00000000006b0385 in sp_instr_stmt::exec_core (this=0x7fff78116850, thd=0x7fff78000d50, nextp=0x7fffe52aa778) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3595
#20 0x00000000006aeba2 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff781168a0, thd=0x7fff78000d50, nextp=0x7fffe52aa778, open_tables=false, instr=0x7fff78116850) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3311
#21 0x00000000006af5ad in sp_instr_stmt::execute (this=0x7fff78116850, thd=0x7fff78000d50, nextp=0x7fffe52aa778) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3498
#22 0x00000000006a6654 in sp_head::execute (this=0x7fff7810a238, thd=0x7fff78000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1349
#23 0x00000000006a8da8 in sp_head::execute_procedure (this=0x7fff7810a238, thd=0x7fff78000d50, args=0x7fff78005930) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2287
#24 0x00000000007ab9c8 in do_execute_sp (thd=0x7fff78000d50, sp=0x7fff7810a238) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2936
#25 0x00000000007ab36b in Sql_cmd_call::execute (this=0x7fff78013a70, thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3178
#26 0x00000000007b6f33 in mysql_execute_command (thd=0x7fff78000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6284
#27 0x00000000007a8af3 in mysql_parse (thd=0x7fff78000d50, rawbuf=0x7fff78013998 "call select_tr(1)", length=17, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
6257 if (!outer_fixed && table_list && table_list->select_lex &&
6258 context->select_lex &&
6259 table_list->select_lex != context->select_lex &&
6260 !context->select_lex->is_merged_child_of(table_list->select_lex) &&
6261 is_outer_table(table_list, context->select_lex))
6262 {
6263 int ret;
6264 if ((ret= fix_outer_field(thd, &from_field, reference)) < 0)
5819 DBUG_ASSERT(outer_context || !*from_field ||
5820 *from_field == not_found_field);
(gdb) p from_field->field_name
$37 = {
str = 0x170cc39 "transaction_id",
length = 14
}
(gdb) p table_list->alias
$43 = {
str = 0x153fe04 "_trt_subquery",
length = 13
}
(gdb) p dbug_print_select(table_list->select_lex)
$44 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= current_timestamp(6) order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
(gdb) p dbug_print_select(context->select_lex)
$45 = 0x205b680 <dbug_item_print_buf> "select tmp.x AS x from test.tmp FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= current_timestamp(6) order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(tmp.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,tmp.row_start)"
select x from (select 1 as x) q1;
(gdb) p dbug_print_select(context->select_lex)
$47 = 0x205b680 <dbug_item_print_buf> "select x AS x from (select 1 AS x) q1"
(gdb) p dbug_print_select(table_list->select_lex)
$48 = 0x205b680 <dbug_item_print_buf> "select x AS x from (select 1 AS x) q1"
(gdb) p table_list->alias
$49 = {
str = 0x7fff800147d0 "q1",
length = 2
}
Wrong select_lex
of _trt_subquery
TABLE_LIST.
fix_fields()
behaviorselect *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23';
$298 = 0x163fde3 "transaction_registry"
$299 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$300 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c015150, thd=0x7fff7c000d50, reference=0x7fff7c015268) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c016e68, pre_fix=0x7fff7c0146f0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c016b48, tables_init=0x7fff7c015298, wild_num=0, conds_init=0x7fff7c015a18, og_num=1, order_init=0x7fff7c015c88, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c0145b0, unit_arg=0x7fff7c0149c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sl=0x7fff7c0145b0, tmp_result=0x7fff7c016a60, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c016a60, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, derived=0x7fff7c015d98) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#6 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c004ac0, derived=0x7fff7c015d98, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#7 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c015d98, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#8 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c005310, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#9 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#10 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#11 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#12 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#13 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#14 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$259 = 0x163fde3 "transaction_registry"
$260 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$261 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c015908, thd=0x7fff7c000d50, reference=0x7fff7c015aa8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff7c015a18, thd=0x7fff7c000d50, ref=0x7fff7c016f50) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x000000000071105d in setup_conds (thd=0x7fff7c000d50, tables=0x7fff7c015298, leaves=..., conds=0x7fff7c016f50) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#3 0x00000000007fdc5c in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c015298, leaves=..., fields=..., all_fields=..., conds=0x7fff7c016f50, order=0x7fff7c015c88, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c016e2f, reserved=0x7fff7c01488c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c016b48, tables_init=0x7fff7c015298, wild_num=0, conds_init=0x7fff7c015a18, og_num=1, order_init=0x7fff7c015c88, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c0145b0, unit_arg=0x7fff7c0149c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sl=0x7fff7c0145b0, tmp_result=0x7fff7c016a60, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c016a60, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, derived=0x7fff7c015d98) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c004ac0, derived=0x7fff7c015d98, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c015d98, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c005310, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$262 = 0x163fde3 "transaction_registry"
$263 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$264 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c015b78, thd=0x7fff7c000d50, reference=0x7fff7c015c98) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x00000000007fe538 in find_order_in_list (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c015298, order=0x7fff7c015c88, fields=..., all_fields=..., is_group_field=false, add_to_all_fields=true, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:22996
#2 0x000000000083e7a7 in setup_order (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c015298, fields=..., all_fields=..., order=0x7fff7c015c88, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:23040
#3 0x00000000007fde01 in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c015298, leaves=..., fields=..., all_fields=..., conds=0x7fff7c016f50, order=0x7fff7c015c88, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c016e2f, reserved=0x7fff7c01488c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:662
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c016b48, tables_init=0x7fff7c015298, wild_num=0, conds_init=0x7fff7c015a18, og_num=1, order_init=0x7fff7c015c88, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c0145b0, unit_arg=0x7fff7c0149c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sl=0x7fff7c0145b0, tmp_result=0x7fff7c016a60, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c0149c8, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c016a60, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, derived=0x7fff7c015d98) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c004ac0, derived=0x7fff7c015d98, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c015d98, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c005310, lex=0x7fff7c004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
vers_setup_conds()
#0 st_select_lex::vers_setup_conds (this=0x7fff7c005310, thd=0x7fff7c000d50, tables=0x7fff7c013f38, where_expr=0x7fff7c016900) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:942
#1 0x00000000007fbc0b in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1101
#2 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#3 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#4 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#5 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#6 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$265 = 0x7fff7c013f30 "i1"
$266 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
$267 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c013bf0, thd=0x7fff7c000d50, reference=0x7fff7c013d08) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c016818, pre_fix=0x7fff7c005450, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$268 = 0x7fff7c013f30 "i1"
$269 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
$270 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c013d18, thd=0x7fff7c000d50, reference=0x7fff7c013e30) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c016818, pre_fix=0x7fff7c005450, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$271 = 0x7fff7c013f30 "i1"
$272 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
$273 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c0173e8, thd=0x7fff7c000d50, reference=0x7fff7c017788) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff7c0176f8, thd=0x7fff7c000d50, ref=0x7fff7c0178d8) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff7c0177c0, thd=0x7fff7c000d50, ref=0x7fff7c016900) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff7c000d50, tables=0x7fff7c013f38, leaves=..., conds=0x7fff7c016900) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c013f38, leaves=..., fields=..., all_fields=..., conds=0x7fff7c016900, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c0167df, reserved=0x7fff7c0055ec) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$274 = 0x7fff7c013f30 "i1"
$275 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
$276 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c0172d8, thd=0x7fff7c000d50, reference=0x7fff7c0176c8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff7c017630, thd=0x7fff7c000d50, ref=0x7fff7c0178e8) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff7c0177c0, thd=0x7fff7c000d50, ref=0x7fff7c016900) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff7c000d50, tables=0x7fff7c013f38, leaves=..., conds=0x7fff7c016900) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c013f38, leaves=..., fields=..., all_fields=..., conds=0x7fff7c016900, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c0167df, reserved=0x7fff7c0055ec) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c0164f8, tables_init=0x7fff7c013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c005310, unit_arg=0x7fff7c004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7c0164d8, unit=0x7fff7c004b88, select_lex=0x7fff7c005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c004ac0, result=0x7fff7c0164d8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
prepare stmt from "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'";
execute stmt;
mysql
.transaction_registry.transaction_id$92 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.transaction_id"
$93 = (TABLE_LIST *) 0x7fff840fcbe0
$94 = 0x163fde3 "transaction_registry"
table_list->select_lex:
$95 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$96 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fca98, thd=0x7fff84000d50, reference=0x7fff840fcbb0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff840145f0, pre_fix=0x7fff840fc038, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fcbe0, wild_num=0, conds_init=0x7fff840fd360, og_num=1, order_init=0x7fff840fd5d0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fbef8, unit_arg=0x7fff840fc310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sl=0x7fff840fbef8, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fd6e0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#6 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fd6e0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#7 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fd6e0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#8 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#9 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fb880, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#10 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fb880, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840fdd50, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#11 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840fdd50, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#12 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fb880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#13 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#14 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#15 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#16 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#17 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#18 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestamp$97 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
$98 = (TABLE_LIST *) 0x7fff840fcbe0
$99 = 0x163fde3 "transaction_registry"
table_list->select_lex:
$100 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$101 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fd250, thd=0x7fff84000d50, reference=0x7fff840fd3f0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fd360, thd=0x7fff84000d50, ref=0x7fff840146d8) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fcbe0, leaves=..., conds=0x7fff840146d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#3 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fcbe0, leaves=..., fields=..., all_fields=..., conds=0x7fff840146d8, order=0x7fff840fd5d0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145b7, reserved=0x7fff840fc1d4) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fcbe0, wild_num=0, conds_init=0x7fff840fd360, og_num=1, order_init=0x7fff840fd5d0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fbef8, unit_arg=0x7fff840fc310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sl=0x7fff840fbef8, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fd6e0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fd6e0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fd6e0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fb880, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fb880, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840fdd50, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840fdd50, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fb880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestamp$102 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
$103 = (TABLE_LIST *) 0x7fff840fcbe0
$104 = 0x163fde3 "transaction_registry"
table_list->select_lex:
$105 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$106 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fd4c0, thd=0x7fff84000d50, reference=0x7fff840fd5e0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x00000000007fe538 in find_order_in_list (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fcbe0, order=0x7fff840fd5d0, fields=..., all_fields=..., is_group_field=false, add_to_all_fields=true, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:22996
#2 0x000000000083e7a7 in setup_order (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fcbe0, fields=..., all_fields=..., order=0x7fff840fd5d0, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:23040
#3 0x00000000007fde01 in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fcbe0, leaves=..., fields=..., all_fields=..., conds=0x7fff840146d8, order=0x7fff840fd5d0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145b7, reserved=0x7fff840fc1d4) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:662
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fcbe0, wild_num=0, conds_init=0x7fff840fd360, og_num=1, order_init=0x7fff840fd5d0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fbef8, unit_arg=0x7fff840fc310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sl=0x7fff840fbef8, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc310, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fd6e0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fd6e0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fd6e0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fb880, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fb880, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840fdd50, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840fdd50, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fb880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$107 = 0x205b680 <dbug_item_print_buf> "i1.x"
$108 = (TABLE_LIST *) 0x7fff840fb880
$109 = 0x7fff840fb878 "i1"
table_list->select_lex:
$110 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$111 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fe4b0, thd=0x7fff84000d50, reference=0x7fff840fb520) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fb880, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fb880, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840fdd50, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840fdd50, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fb880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$112 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
$113 = (TABLE_LIST *) 0x7fff840fd6e0
$114 = 0x153fde4 "_trt_subquery"
table_list->select_lex:
$115 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$116 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fe5d8, thd=0x7fff84000d50, reference=0x7fff840fe718) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fb880, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fb880, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840fdd50, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840fdd50, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fb880) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
execute stmt;
$396 = (TABLE_LIST *) 0x7fff840fcbe0
$397 = 0x163fde3 "transaction_registry"
$398 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$399 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c109858, thd=0x7fff7c000d50, reference=0x7fff7c109970) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c0145f0, pre_fix=0x7fff7c108df8, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c0142d0, tables_init=0x7fff7c1099a0, wild_num=0, conds_init=0x7fff7c10a120, og_num=1, order_init=0x7fff7c10a390, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c108cb8, unit_arg=0x7fff7c1090d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sl=0x7fff7c108cb8, tmp_result=0x7fff7c0141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c0141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c106910, derived=0x7fff7c10a4a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#6 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c106910, derived=0x7fff7c10a4a0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#7 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c10a4a0, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#8 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c107160, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#9 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c013c80, tables_init=0x7fff7c108640, wild_num=0, conds_init=0x7fff7c013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c107160, unit_arg=0x7fff7c1069d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#10 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c108640, wild_num=0, fields=..., conds=0x7fff7c013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff7c10ab10, unit=0x7fff7c1069d8, select_lex=0x7fff7c107160) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#11 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c106910, result=0x7fff7c10ab10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#12 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c108640) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#13 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#14 0x00000000007db912 in Prepared_statement::execute (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#15 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#16 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#17 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#18 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "execute stmt", length=12, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$400 = (TABLE_LIST *) 0x7fff840fcbe0
$401 = 0x163fde3 "transaction_registry"
$402 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$403 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c10a010, thd=0x7fff7c000d50, reference=0x7fff7c10a1b0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff7c10a120, thd=0x7fff7c000d50, ref=0x7fff7c0146d8) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x000000000071105d in setup_conds (thd=0x7fff7c000d50, tables=0x7fff7c1099a0, leaves=..., conds=0x7fff7c0146d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#3 0x00000000007fdc5c in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c1099a0, leaves=..., fields=..., all_fields=..., conds=0x7fff7c0146d8, order=0x7fff7c10a390, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c0145b7, reserved=0x7fff7c108f94) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c0142d0, tables_init=0x7fff7c1099a0, wild_num=0, conds_init=0x7fff7c10a120, og_num=1, order_init=0x7fff7c10a390, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c108cb8, unit_arg=0x7fff7c1090d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sl=0x7fff7c108cb8, tmp_result=0x7fff7c0141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c0141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c106910, derived=0x7fff7c10a4a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c106910, derived=0x7fff7c10a4a0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c10a4a0, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c107160, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c013c80, tables_init=0x7fff7c108640, wild_num=0, conds_init=0x7fff7c013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c107160, unit_arg=0x7fff7c1069d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c108640, wild_num=0, fields=..., conds=0x7fff7c013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff7c10ab10, unit=0x7fff7c1069d8, select_lex=0x7fff7c107160) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c106910, result=0x7fff7c10ab10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c108640) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "execute stmt", length=12, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$404 = (TABLE_LIST *) 0x7fff840fcbe0
$405 = 0x163fde3 "transaction_registry"
$406 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$407 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff7c10a280, thd=0x7fff7c000d50, reference=0x7fff7c10a3a0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x00000000007fe538 in find_order_in_list (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c1099a0, order=0x7fff7c10a390, fields=..., all_fields=..., is_group_field=false, add_to_all_fields=true, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:22996
#2 0x000000000083e7a7 in setup_order (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c1099a0, fields=..., all_fields=..., order=0x7fff7c10a390, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:23040
#3 0x00000000007fde01 in setup_without_group (thd=0x7fff7c000d50, ref_pointer_array=..., tables=0x7fff7c1099a0, leaves=..., fields=..., all_fields=..., conds=0x7fff7c0146d8, order=0x7fff7c10a390, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff7c0145b7, reserved=0x7fff7c108f94) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:662
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff7c0142d0, tables_init=0x7fff7c1099a0, wild_num=0, conds_init=0x7fff7c10a120, og_num=1, order_init=0x7fff7c10a390, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c108cb8, unit_arg=0x7fff7c1090d0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sl=0x7fff7c108cb8, tmp_result=0x7fff7c0141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff7c1090d0, thd_arg=0x7fff7c000d50, sel_result=0x7fff7c0141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff7c000d50, lex=0x7fff7c106910, derived=0x7fff7c10a4a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff7c106910, derived=0x7fff7c10a4a0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff7c10a4a0, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff7c107160, lex=0x7fff7c106910, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff7c013c80, tables_init=0x7fff7c108640, wild_num=0, conds_init=0x7fff7c013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c107160, unit_arg=0x7fff7c1069d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c108640, wild_num=0, fields=..., conds=0x7fff7c013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff7c10ab10, unit=0x7fff7c1069d8, select_lex=0x7fff7c107160) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c106910, result=0x7fff7c10ab10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c108640) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "execute stmt", length=12, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$408 = (TABLE_LIST *) 0x7fff840fb880
$409 = 0x7fff840fb878 "i1"
$410 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
$411 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c10b270, thd=0x7fff7c000d50, reference=0x7fff7c1082e0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c013fa0, pre_fix=0x7fff7c1072a0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c013c80, tables_init=0x7fff7c108640, wild_num=0, conds_init=0x7fff7c013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c107160, unit_arg=0x7fff7c1069d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c108640, wild_num=0, fields=..., conds=0x7fff7c013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff7c10ab10, unit=0x7fff7c1069d8, select_lex=0x7fff7c107160) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c106910, result=0x7fff7c10ab10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c108640) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "execute stmt", length=12, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$412 = (TABLE_LIST *) 0x7fff840fd6e0
$413 = 0x153fde4 "_trt_subquery"
$414 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
$415 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff7c10b398, thd=0x7fff7c000d50, reference=0x7fff7c10b4d8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff7c000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff7c013fa0, pre_fix=0x7fff7c1072a0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff7c013c80, tables_init=0x7fff7c108640, wild_num=0, conds_init=0x7fff7c013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff7c107160, unit_arg=0x7fff7c1069d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff7c000d50, tables=0x7fff7c108640, wild_num=0, fields=..., conds=0x7fff7c013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff7c10ab10, unit=0x7fff7c1069d8, select_lex=0x7fff7c107160) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff7c000d50, lex=0x7fff7c106910, result=0x7fff7c10ab10, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff7c000d50, all_tables=0x7fff7c108640) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff7c1032b0, expanded_query=0x7fffe52ab510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff7c000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff7c000d50, rawbuf=0x7fff7c013998 "execute stmt", length=12, parser_state=0x7fffe52ae640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
prepare stmt from "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)";
mysql
.transaction_registry.transaction_idthis:
$1 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.transaction_id"
table_list:
$2 = (TABLE_LIST *) 0x7fff840fd0d8
alias:
$3 = 0x7fff840fd0c0 "transaction_registry"
table_list_sl:
$4 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context_sl:
$5 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fcf38, thd=0x7fff84000d50, reference=0x7fff840fd060) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84014628, pre_fix=0x7fff840fc4a8, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84014308, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff84014220, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff84014220, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#6 0x000000000075b8cd in mysql_handle_derived (lex=0x7fff840f9b50, phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:121
#7 0x0000000000709ce6 in open_normal_and_derived_tables (thd=0x7fff84000d50, tables=0x7fff840fbcf8, flags=512, dt_phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4971
#8 0x00000000007dfd52 in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1520
#9 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#10 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#11 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#12 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestampthis:
$6 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
table_list:
$7 = (TABLE_LIST *) 0x7fff840fd0d8
alias:
$8 = 0x7fff840fd0c0 "transaction_registry"
table_list_sl:
$9 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context_sl:
$10 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fd780, thd=0x7fff84000d50, reference=0x7fff840fd9e8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fd958, thd=0x7fff84000d50, ref=0x7fff84014710) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fd0d8, leaves=..., conds=0x7fff84014710) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#3 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014710, order=0x7fff840fdc00, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145ef, reserved=0x7fff840fc644) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014308, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff84014220, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff84014220, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075b8cd in mysql_handle_derived (lex=0x7fff840f9b50, phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:121
#9 0x0000000000709ce6 in open_normal_and_derived_tables (thd=0x7fff84000d50, tables=0x7fff840fbcf8, flags=512, dt_phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4971
#10 0x00000000007dfd52 in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1520
#11 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#12 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#13 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#14 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#15 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestampthis:
$11 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
table_list:
$12 = (TABLE_LIST *) 0x7fff840fd0d8
alias:
$13 = 0x7fff840fd0c0 "transaction_registry"
table_list_sl:
$14 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context_sl:
$15 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fdaf0, thd=0x7fff84000d50, reference=0x7fff840fdc10) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x00000000007fe538 in find_order_in_list (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, order=0x7fff840fdc00, fields=..., all_fields=..., is_group_field=false, add_to_all_fields=true, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:22996
#2 0x000000000083e7a7 in setup_order (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, fields=..., all_fields=..., order=0x7fff840fdc00, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:23040
#3 0x00000000007fde01 in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014710, order=0x7fff840fdc00, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145ef, reserved=0x7fff840fc644) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:662
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014308, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff84014220, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff84014220, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075b8cd in mysql_handle_derived (lex=0x7fff840f9b50, phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:121
#9 0x0000000000709ce6 in open_normal_and_derived_tables (thd=0x7fff84000d50, tables=0x7fff840fbcf8, flags=512, dt_phases=35) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4971
#10 0x00000000007dfd52 in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1520
#11 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#12 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#13 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#14 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#15 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$16 = 0x205b680 <dbug_item_print_buf> "i1.x"
table_list:
$17 = (TABLE_LIST *) 0x7fff840fbcf8
alias:
$18 = 0x7fff840fbcf0 "i1"
table_list_sl:
$19 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$20 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fb7a0, thd=0x7fff84000d50, reference=0x7fff840fb8c0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84014c70, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#6 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#7 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#8 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#9 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$21 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
table_list:
$22 = (TABLE_LIST *) 0x7fff840fdd38
alias:
$23 = 0x7fff840fdcf0 "_trt_subquery"
table_list_sl:
$24 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$25 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fb8f0, thd=0x7fff84000d50, reference=0x7fff840fba18) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84014c70, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#6 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#7 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#8 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#9 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$26 = 0x205b680 <dbug_item_print_buf> "row_start"
table_list:
$27 = (TABLE_LIST *) 0x7fff840fbcf8
alias:
$28 = 0x7fff840fbcf0 "i1"
table_list_sl:
$29 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$30 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fba40, thd=0x7fff84000d50, reference=0x7fff840fbb68) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84014c70, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#6 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#7 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#8 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#9 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$31 = 0x205b680 <dbug_item_print_buf> "row_end"
table_list:
$32 = (TABLE_LIST *) 0x7fff840fbcf8
alias:
$33 = 0x7fff840fbcf0 "i1"
table_list_sl:
$34 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$35 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fbb88, thd=0x7fff84000d50, reference=0x7fff840fbca8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84014c70, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#6 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#7 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#8 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#9 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#10 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$36 = 0x205b680 <dbug_item_print_buf> "i1.row_end"
table_list:
$37 = (TABLE_LIST *) 0x7fff840fbcf8
alias:
$38 = 0x7fff840fbcf0 "i1"
table_list_sl:
$39 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$40 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840feac0, thd=0x7fff84000d50, reference=0x7fff840fedc8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fed38, thd=0x7fff84000d50, ref=0x7fff840ff280) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff840ff168, thd=0x7fff84000d50, ref=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014d58, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84014c37, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#7 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#8 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#9 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#10 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#11 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#12 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$41 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
table_list:
$42 = (TABLE_LIST *) 0x7fff840fdd38
alias:
$43 = 0x7fff840fdcf0 "_trt_subquery"
table_list_sl:
$44 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$45 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fec18, thd=0x7fff84000d50, reference=0x7fff840fedd0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fed38, thd=0x7fff84000d50, ref=0x7fff840ff280) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff840ff168, thd=0x7fff84000d50, ref=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014d58, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84014c37, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#7 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#8 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#9 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#10 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#11 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#12 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$46 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
table_list:
$47 = (TABLE_LIST *) 0x7fff840fdd38
alias:
$48 = 0x7fff840fdcf0 "_trt_subquery"
table_list_sl:
$49 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$50 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fee30, thd=0x7fff84000d50, reference=0x7fff840ff130) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840ff0a0, thd=0x7fff84000d50, ref=0x7fff840ff290) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff840ff168, thd=0x7fff84000d50, ref=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014d58, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84014c37, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#7 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#8 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#9 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#10 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#11 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#12 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
this:
$51 = 0x205b680 <dbug_item_print_buf> "i1.row_start"
table_list:
$52 = (TABLE_LIST *) 0x7fff840fbcf8
alias:
$53 = 0x7fff840fbcf0 "i1"
table_list_sl:
$54 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context_sl:
$55 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fef80, thd=0x7fff84000d50, reference=0x7fff840ff138) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840ff0a0, thd=0x7fff84000d50, ref=0x7fff840ff290) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff840ff168, thd=0x7fff84000d50, ref=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014d58) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014d58, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84014c37, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84014950, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff840ff168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sl=0x7fff840fa3a0, tmp_result=0x0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#7 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840f9c18, thd_arg=0x7fff84000d50, sel_result=0x0, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#8 0x00000000007dfd9f in mysql_test_select (stmt=0x7fff840f7020, tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:1531
#9 0x00000000007daa97 in check_prepared_statement (stmt=0x7fff840f7020) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2321
#10 0x00000000007d4e2e in Prepared_statement::prepare (this=0x7fff840f7020, packet=0x7fff84013e70 "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)", packet_len=539) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3965
#11 0x00000000007d5858 in mysql_sql_stmt_prepare (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:2798
#12 0x00000000007ae0c4 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3778
#13 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "prepare stmt from \"select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)\"", length=559, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.transaction_id$1 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.transaction_id"
$2 = (TABLE_LIST *) 0x7fff840fd0d8
$3 = 0x7fff840fd0c0 "transaction_registry"
table_list->select_lex:
$4 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$5 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fcf38, thd=0x7fff84000d50, reference=0x7fff840fd060) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff840145f0, pre_fix=0x7fff840fc4a8, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#4 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#5 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#6 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fdd38, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#7 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fdd38, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#8 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#9 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#10 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#11 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#12 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#13 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#14 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#15 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#16 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#17 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#18 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestamp$6 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
$7 = (TABLE_LIST *) 0x7fff840fd0d8
$8 = 0x7fff840fd0c0 "transaction_registry"
table_list->select_lex:
$9 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$10 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fd780, thd=0x7fff84000d50, reference=0x7fff840fd9e8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fd958, thd=0x7fff84000d50, ref=0x7fff840146d8) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fd0d8, leaves=..., conds=0x7fff840146d8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#3 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, leaves=..., fields=..., all_fields=..., conds=0x7fff840146d8, order=0x7fff840fdc00, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145b7, reserved=0x7fff840fc644) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fdd38, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fdd38, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
mysql
.transaction_registry.commit_timestamp$11 = 0x205b680 <dbug_item_print_buf> "`mysql`.transaction_registry.commit_timestamp"
$12 = (TABLE_LIST *) 0x7fff840fd0d8
$13 = 0x7fff840fd0c0 "transaction_registry"
table_list->select_lex:
$14 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
context->select_lex:
$15 = 0x205b680 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
#0 Item_field::fix_fields (this=0x7fff840fdaf0, thd=0x7fff84000d50, reference=0x7fff840fdc10) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x00000000007fe538 in find_order_in_list (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, order=0x7fff840fdc00, fields=..., all_fields=..., is_group_field=false, add_to_all_fields=true, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:22996
#2 0x000000000083e7a7 in setup_order (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, fields=..., all_fields=..., order=0x7fff840fdc00, from_window_spec=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:23040
#3 0x00000000007fde01 in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fd0d8, leaves=..., fields=..., all_fields=..., conds=0x7fff840146d8, order=0x7fff840fdc00, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff840145b7, reserved=0x7fff840fc644) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:662
#4 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff840142d0, tables_init=0x7fff840fd0d8, wild_num=0, conds_init=0x7fff840fd958, og_num=1, order_init=0x7fff840fdc00, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fc368, unit_arg=0x7fff840fc780) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#5 0x00000000008d0b4d in st_select_lex_unit::prepare_join (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sl=0x7fff840fc368, tmp_result=0x7fff840141e8, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#6 0x00000000008cbd69 in st_select_lex_unit::prepare (this=0x7fff840fc780, thd_arg=0x7fff84000d50, sel_result=0x7fff840141e8, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#7 0x0000000000758d70 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff840f9b50, derived=0x7fff840fdd38) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#8 0x000000000075bc17 in mysql_handle_single_derived (lex=0x7fff840f9b50, derived=0x7fff840fdd38, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#9 0x0000000000903c0f in TABLE_LIST::handle_derived (this=0x7fff840fdd38, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8053
#10 0x0000000000781603 in st_select_lex::handle_derived (this=0x7fff840fa3a0, lex=0x7fff840f9b50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#11 0x00000000007fb9f1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1067
#12 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#13 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#14 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#15 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#16 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#17 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#18 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#19 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#20 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$16 = 0x205b680 <dbug_item_print_buf> "i1.x"
$17 = (TABLE_LIST *) 0x7fff840fbcf8
$18 = 0x7fff840fbcf0 "i1"
table_list->select_lex:
$19 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$20 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fb7a0, thd=0x7fff84000d50, reference=0x7fff840fb8c0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$21 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
$22 = (TABLE_LIST *) 0x7fff840fdd38
$23 = 0x7fff840fdcf0 "_trt_subquery"
table_list->select_lex:
$24 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$25 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fb8f0, thd=0x7fff84000d50, reference=0x7fff840fba18) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$26 = 0x205b680 <dbug_item_print_buf> "row_start"
$27 = (TABLE_LIST *) 0x7fff840fbcf8
$28 = 0x7fff840fbcf0 "i1"
table_list->select_lex:
$29 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$30 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fba40, thd=0x7fff84000d50, reference=0x7fff840fbb68) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$31 = 0x205b680 <dbug_item_print_buf> "row_end"
$32 = (TABLE_LIST *) 0x7fff840fbcf8
$33 = 0x7fff840fbcf0 "i1"
table_list->select_lex:
$34 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$35 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fbb88, thd=0x7fff84000d50, reference=0x7fff840fbca8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x000000000070f1c5 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84013fa0, pre_fix=0x7fff840fa4e0, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#2 0x00000000007fc07c in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#3 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#4 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#6 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#7 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#8 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#9 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#10 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#11 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$36 = 0x205b680 <dbug_item_print_buf> "i1.row_end"
$37 = (TABLE_LIST *) 0x7fff840fbcf8
$38 = 0x7fff840fbcf0 "i1"
table_list->select_lex:
$39 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$40 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840feac0, thd=0x7fff84000d50, reference=0x7fff840fedc8) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fed38, thd=0x7fff84000d50, ref=0x7fff84013b70) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff84013a58, thd=0x7fff84000d50, ref=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014088, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84013f67, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#11 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#12 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#13 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#14 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$41 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
$42 = (TABLE_LIST *) 0x7fff840fdd38
$43 = 0x7fff840fdcf0 "_trt_subquery"
table_list->select_lex:
$44 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$45 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fec18, thd=0x7fff84000d50, reference=0x7fff840fedd0) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840fed38, thd=0x7fff84000d50, ref=0x7fff84013b70) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff84013a58, thd=0x7fff84000d50, ref=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014088, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84013f67, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#11 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#12 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#13 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#14 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$46 = 0x205b680 <dbug_item_print_buf> "_trt_subquery.transaction_id"
$47 = (TABLE_LIST *) 0x7fff840fdd38
$48 = 0x7fff840fdcf0 "_trt_subquery"
table_list->select_lex:
$49 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$50 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fee30, thd=0x7fff84000d50, reference=0x7fff840ff130) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840ff0a0, thd=0x7fff84000d50, ref=0x7fff84013b80) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff84013a58, thd=0x7fff84000d50, ref=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014088, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84013f67, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#11 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#12 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#13 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#14 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
$51 = 0x205b680 <dbug_item_print_buf> "i1.row_start"
$52 = (TABLE_LIST *) 0x7fff840fbcf8
$53 = 0x7fff840fbcf0 "i1"
table_list->select_lex:
$54 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
context->select_lex:
$55 = 0x205b680 <dbug_item_print_buf> "select i1.x AS x,_trt_subquery.transaction_id AS transaction_id,i1.row_start AS row_start,i1.row_end AS row_end from (test.i1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) _trt_subquery) where vtq_trx_sees(i1.row_end,_trt_subquery.transaction_id) and vtq_trx_sees_eq(_trt_subquery.transaction_id,i1.row_start)"
#0 Item_field::fix_fields (this=0x7fff840fef80, thd=0x7fff84000d50, reference=0x7fff840ff138) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6257
#1 0x0000000000ba06cd in Item_func::fix_fields (this=0x7fff840ff0a0, thd=0x7fff84000d50, ref=0x7fff84013b80) at /home/midenok/src/mariadb/trunk/src/sql/item_func.cc:362
#2 0x0000000000b61194 in Item_cond::fix_fields (this=0x7fff84013a58, thd=0x7fff84000d50, ref=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/item_cmpfunc.cc:4697
#3 0x000000000071105d in setup_conds (thd=0x7fff84000d50, tables=0x7fff840fbcf8, leaves=..., conds=0x7fff84014088) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:8057
#4 0x00000000007fdc5c in setup_without_group (thd=0x7fff84000d50, ref_pointer_array=..., tables=0x7fff840fbcf8, leaves=..., fields=..., all_fields=..., conds=0x7fff84014088, order=0x0, group=0x0, win_specs=..., win_funcs=..., hidden_group_fields=0x7fff84013f67, reserved=0x7fff840fa67c) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:646
#5 0x00000000007fc1b1 in JOIN::prepare (this=0x7fff84013c80, tables_init=0x7fff840fbcf8, wild_num=0, conds_init=0x7fff84013a58, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff840fa3a0, unit_arg=0x7fff840f9c18) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1172
#6 0x00000000007f7fb9 in mysql_select (thd=0x7fff84000d50, tables=0x7fff840fbcf8, wild_num=0, fields=..., conds=0x7fff84013a58, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2416184064, result=0x7fff840ff298, unit=0x7fff840f9c18, select_lex=0x7fff840fa3a0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7933 in handle_select (thd=0x7fff84000d50, lex=0x7fff840f9b50, result=0x7fff840ff298, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b921f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840fbcf8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae08a in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007db912 in Prepared_statement::execute (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4741
#11 0x00000000007d7688 in Prepared_statement::execute_loop (this=0x7fff840f7020, expanded_query=0x7fffe5100510, open_cursor=false, packet=0x0, packet_end=0x0) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:4172
#12 0x00000000007d7311 in mysql_sql_stmt_execute (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_prepare.cc:3280
#13 0x00000000007ae0d7 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3783
#14 0x00000000007a8af3 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "execute stmt", length=12, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
#0 my_error (nr=1054, MyFlags=0) at /home/midenok/src/mariadb/trunk/src/mysys/my_error.c:113
#1 0x000000000070d22c in find_field_in_tables (thd=0x7fff84000d50, item=0x7fff84013ae8, first_table=0x7fff84013f60, last_table=0x0, ref=0x7fff84013c00, report_error=REPORT_ALL_ERRORS, check_privileges=true, register_tree_change=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:6202
#2 0x0000000000b3286f in Item_field::fix_outer_field (this=0x7fff84013ae8, thd=0x7fff84000d50, from_field=0x7fffe50fee50, reference=0x7fff84013c00) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:5991
#3 0x0000000000b33b18 in Item_field::fix_fields (this=0x7fff84013ae8, thd=0x7fff84000d50, reference=0x7fff84013c00) at /home/midenok/src/mariadb/trunk/src/sql/item.cc:6245
#4 0x000000000070f295 in setup_fields (thd=0x7fff84000d50, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7fff84016860, pre_fix=0x7fff84005450, allow_sum_func=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7311
#5 0x00000000007fc1dc in JOIN::prepare (this=0x7fff84016540, tables_init=0x7fff84013f60, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005310, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1167
#6 0x00000000007f8119 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013f60, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84016520, unit=0x7fff84004b88, select_lex=0x7fff84005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#7 0x00000000007f7a93 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84016520, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007b935f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013f60) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#9 0x00000000007ae1c0 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#10 0x00000000007a8c23 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "select transaction_idd,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=102, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
__trt_subquery
should be excluded from name resolution tables.
#0 setup_natural_join_row_types (thd=0x7fff84000d50, from_clause=0x7fff840054b0, context=0x7fff84005358) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7135
#1 0x000000000071013c in setup_tables (thd=0x7fff84000d50, context=0x7fff84005358, from_clause=0x7fff840054b0, tables=0x7fff84013f60, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7542
#2 0x00000000007105d7 in setup_tables_and_check_access (thd=0x7fff84000d50, context=0x7fff84005358, from_clause=0x7fff840054b0, tables=0x7fff84013f60, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7585
#3 0x00000000007fbc7d in JOIN::prepare (this=0x7fff84016540, tables_init=0x7fff84013f60, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005310, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1079
#4 0x00000000007f8139 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013f60, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff84016520, unit=0x7fff84004b88, select_lex=0x7fff84005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4203
#5 0x00000000007f7ab3 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff84016520, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#6 0x00000000007b937f in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013f60) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6556
#7 0x00000000007ae1e0 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3767
#8 0x00000000007a8c23 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "select transaction_id,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=101, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8013
7129 if (left_neighbor)
7130 {
7131 TABLE_LIST *first_leaf_on_the_right;
7132 first_leaf_on_the_right= table_ref->first_leaf_for_name_resolution();
7133 left_neighbor->next_name_resolution_table= first_leaf_on_the_right;
7134 }
TABLE_LIST *TABLE_LIST::first_leaf_for_name_resolution()
{
TABLE_LIST *UNINIT_VAR(cur_table_ref);
NESTED_JOIN *cur_nested_join;
if (is_leaf_for_name_resolution())
return this;
/*
Test if this is a leaf with respect to name resolution.
SYNOPSIS
TABLE_LIST::is_leaf_for_name_resolution()
DESCRIPTION
A table reference is a leaf with respect to name resolution if
it is either a leaf node in a nested join tree (table, view,
schema table, subquery), or an inner node that represents a
NATURAL/USING join, or a nested join with materialized join
columns.
RETURN
TRUE if a leaf, FALSE otherwise.
*/
bool TABLE_LIST::is_leaf_for_name_resolution()
{
return (is_merged_derived() || is_natural_join || is_join_columns_complete ||
!nested_join);
}
tr_table->table
Run versioning.select2,trx_id
until
select IJ2_x1,y1,x2,y2 from (select t1.x as IJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 inner join t2 on t1.x = t2.x)
for system_time as of timestamp @t0 as t;
#3 0x00007ffff600dfc2 in __GI___assert_fail (assertion=0x153fa4d "tr_table->table", file=0x153d0fe "/home/midenok/src/mariadb/trunk/src/sql/table.cc", line=8568, function=0x153fa02 "Item *Vers_history_point::get_item(THD *, Name_resolution_context &) const") at assert.c:101
#4 0x0000000000905289 in Vers_history_point::get_item (this=0x7fff84015710, thd=0x7fff84000d50, ctx=...) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8568
#5 0x00000000007fab35 in st_select_lex::vers_setup_conds (this=0x7fff84014018, thd=0x7fff84000d50, tables=0x7fff840150f0, where_expr=0x7fff840f7ea8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:936
#6 0x00000000007fbaab in JOIN::prepare (this=0x7fff840f7aa0, tables_init=0x7fff840150f0, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84014018, unit_arg=0x7fff84014430) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1084
#7 0x00000000008d09ad in st_select_lex_unit::prepare_join (this=0x7fff84014430, thd_arg=0x7fff84000d50, sl=0x7fff84014018, tmp_result=0x7fff84019748, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:662
#8 0x00000000008cbbc9 in st_select_lex_unit::prepare (this=0x7fff84014430, thd_arg=0x7fff84000d50, sel_result=0x7fff84019748, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:947
#9 0x0000000000758fc0 in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff84004ac0, derived=0x7fff84016a50) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:769
#10 0x000000000075be67 in mysql_handle_single_derived (lex=0x7fff84004ac0, derived=0x7fff84016a50, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#11 0x0000000000903a9f in TABLE_LIST::handle_derived (this=0x7fff84016a50, lex=0x7fff84004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8056
#12 0x00000000007818c3 in st_select_lex::handle_derived (this=0x7fff84005310, lex=0x7fff84004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#13 0x00000000007fb891 in JOIN::prepare (this=0x7fff840f7538, tables_init=0x7fff84016a50, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005310, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1050
#14 0x00000000007f8379 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84016a50, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748612, result=0x7fff84019018, unit=0x7fff84004b88, select_lex=0x7fff84005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4186
#15 0x0000000000841ea3 in mysql_explain_union (thd=0x7fff84000d50, unit=0x7fff84004b88, result=0x7fff84019018) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:25683
#16 0x00000000007b9096 in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84016a50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6507
#17 0x00000000007ae420 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3779
#18 0x00000000007a8e43 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "explain extended select IJ2_x1,y1,x2,y2 from (select t1.x as IJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 inner join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=182, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8025
(gdb) p dbug_print_select(this)
$15 = 0x2013a00 <dbug_item_print_buf> "select IJ2_x1 AS IJ2_x1,y1 AS y1,x2 AS x2,y2 AS y2 from (select t1.x AS IJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from (test.t1 FOR SYSTEM_TIME AS OF TIMESTAMP @t0 join test.t2 on(t1.x = t2.x))) t join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0"
select IJ2_x1 as IJ2_x1,
y1 as y1,
x2 as x2,
y2 as y2
from
(select t1.x as IJ2_x1,
t1.y as y1,
t2.x as x2,
t2.y as y2
from (test.t1
for SYSTEM_TIME as of timestamp @t0
join test.t2 on(t1.x = t2.x))) t
join
(select `mysql`.transaction_registry.transaction_id as transaction_id
from `mysql`.transaction_registry
where `mysql`.transaction_registry.commit_timestamp <= @t0
order by `mysql`.transaction_registry.commit_timestamp desc
limit 1) __trt_0
(gdb) p dbug_print_select(this)
$16 = 0x2013a00 <dbug_item_print_buf> "select t1.x AS IJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from (test.t1 FOR SYSTEM_TIME AS OF TIMESTAMP @t0 join test.t2 on(t1.x = t2.x))"
tr_table->table
assignedselect *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23';
#0 mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff84004ac0, derived=0x7fff84015db8) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:813
#1 0x000000000075be67 in mysql_handle_single_derived (lex=0x7fff84004ac0, derived=0x7fff84015db8, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#2 0x0000000000903a9f in TABLE_LIST::handle_derived (this=0x7fff84015db8, lex=0x7fff84004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8056
#3 0x00000000007818c3 in st_select_lex::handle_derived (this=0x7fff84005310, lex=0x7fff84004ac0, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4058
#4 0x00000000007fb891 in JOIN::prepare (this=0x7fff84016518, tables_init=0x7fff84013f38, wild_num=1, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005310, unit_arg=0x7fff84004b88) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1050
#5 0x00000000007f8379 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84013f38, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff840164f8, unit=0x7fff84004b88, select_lex=0x7fff84005310) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4186
#6 0x00000000007f7cf3 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004ac0, result=0x7fff840164f8, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#7 0x00000000007b95bf in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84013f38) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6568
#8 0x00000000007ae420 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3779
#9 0x00000000007a8e43 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84013998 "select *,row_start,row_end from i1 for system_time as of timestamp '2018-04-04 16:40:23'", length=88, parser_state=0x7fffe5103640, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8025
811 if (!derived->table)
812 derived->table= derived->derived_result->table;
(gdb) p derived->alias.str
$12 = 0x7fff7c03fa00 "__trt_0"
(gdb) p dbug_print_select(this)
$14 = 0x2013a00 <dbug_item_print_buf> "select `*` AS `*`,row_start AS row_start,row_end AS row_end from test.i1 FOR SYSTEM_TIME AS OF TIMESTAMP TIMESTAMP'2018-04-04 16:40:23' join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= TIMESTAMP'2018-04-04 16:40:23' order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0"
vers_setup_conds()
is called before tr_table->table
is assigned (sql_derived.cc:769
vs sql_derived.cc:813
).
have_innodb
work with started serverdiff --git a/mysql-test/suite.pm b/mysql-test/suite.pm
index c8201b0a554..5037af1a47b 100644
--- a/mysql-test/suite.pm
+++ b/mysql-test/suite.pm
@@ -9,7 +9,7 @@ sub skip_combinations {
# disable innodb combinations for configurations that were not built
push @combinations, 'innodb_plugin' unless $ENV{HA_INNODB_SO};
- push @combinations, 'innodb' unless $::mysqld_variables{'innodb'} eq "ON";
+ # push @combinations, 'innodb' unless $::mysqld_variables{'innodb'} eq "ON";
my %skip = ( 'include/have_innodb.combinations' => [ @combinations ]);
Historical table is derived query, but TRT query is appended to outer query (see frame 12). Trivial case is:
select *
from
(select * from t1 where t1.x = __trt.y) t
join
(select * from t2 limit 1) __trt;
this fails with error:
ERROR 1054 (42S22): Unknown column '__trt.y' in 'where clause'
__trt_0
query must be added to inner query.
--- a/sql/sql_lex.cc
+++ b/sql/sql_lex.cc
@@ -7187,20 +7187,24 @@ bool LEX::vers_add_trt_query(THD *thd)
uint subq_n= 0;
for (TABLE_LIST *tl= query_tables; tl; tl= tl->next_global)
{
+ if (!tl->vers_conditions.is_set())
+ continue;
+ SELECT_LEX *select_lex=
+ tl->derived ? tl->derived->first_select() : tl->select_lex;
switch (tl->vers_conditions.type)
{
case SYSTEM_TIME_AS_OF:
case SYSTEM_TIME_BEFORE:
if (tl->vers_conditions.start.unit == VERS_TRX_ID)
break;
- if (TR_table::add_subquery(thd, tl->vers_conditions.start, subq_n))
+ if (TR_table::add_subquery(thd, tl->vers_conditions.start, select_lex, subq_n))
return true;
break;
case SYSTEM_TIME_FROM_TO:
case SYSTEM_TIME_BETWEEN:
- if (TR_table::add_subquery(thd, tl->vers_conditions.start, subq_n, true))
+ if (TR_table::add_subquery(thd, tl->vers_conditions.start, select_lex, subq_n, true))
return true;
- if (TR_table::add_subquery(thd, tl->vers_conditions.end, subq_n))
+ if (TR_table::add_subquery(thd, tl->vers_conditions.end, select_lex, subq_n))
return true;
break;
default:;
nested_join
Run select2,trx_id
until
select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t;
#0 0x000000000080e298 in build_bitmap_for_nested_joins (join_list=0x7fff800054f8, first_unused=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:15367
#1 0x000000000080afc8 in JOIN::optimize_inner (this=0x7fff80018fe8) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1610
#2 0x00000000008079d5 in JOIN::optimize (this=0x7fff80018fe8) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#3 0x00000000008004cf in mysql_select (thd=0x7fff80000d50, tables=0x7fff80016a00, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff80018fc8, unit=0x7fff80004bd0, select_lex=0x7fff80005358) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#4 0x00000000007ffdf3 in handle_select (thd=0x7fff80000d50, lex=0x7fff80004b08, result=0x7fff80018fc8, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#5 0x00000000007c13c1 in execute_sqlcom_select (thd=0x7fff80000d50, all_tables=0x7fff80016a00) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#6 0x00000000007b64c0 in mysql_execute_command (thd=0x7fff80000d50) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#7 0x00000000007b0e9f in mysql_parse (thd=0x7fff80000d50, rawbuf=0x7fff80013948 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x)\nfor system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffe4e8d650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
(gdb) p nested_join
$28 = (NESTED_JOIN *) 0x8f8f8f8f8f8f8f8f
(gdb) p ((TABLE_LIST *)(join_list->first->info))->alias
$65 = {
str = 0x7fff7c32b520 "__trt_0",
length = 7
}
(gdb) p ((TABLE_LIST *)(join_list->first->next->info))->alias
$66 = {
str = 0x7fff7c015078 "t1",
length = 2
}
(gdb) p ((TABLE_LIST *)(join_list->first->next->next->info))->alias
$67 = {
str = 0x8f8f8f8f8f8f8f8f <error: Cannot access memory at address 0x8f8f8f8f8f8f8f8f>,
length = 10344644715844964239
}
(gdb) p dbug_print_select(select_lex)
$173 = 0x2013a00 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from test.t1 FOR SYSTEM_TIME ALL join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(t2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t2.sys_start)"
select t1.x as RJ2_x1,
t1.y as y1,
t2.x as x2,
t2.y as y2
from test.t1
for SYSTEM_TIME all
join
(select mysql.transaction_registry.transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= @t0
order by mysql.transaction_registry.commit_timestamp desc
limit 1) __trt_0
where trt_trx_sees(t2.sys_end, __trt_0.transaction_id)
and trt_trx_sees_eq(__trt_0.transaction_id, t2.sys_start);
Run select2,trx_id
until
select * from (select * from t1 cross join t2 for system_time as of timestamp ('0-0-0')) as tmp;
#0 0x0000000000b68630 in Item_cond::copy_andor_arguments (this=0x7fff802f0478, thd=0x7fff80000d50, item=0x7fff802f02c8) at /home/midenok/src/mariadb/midenok/src/sql/item_cmpfunc.cc:4521
#1 0x0000000000b6855c in Item_cond_and::copy_andor_structure (this=0x7fff802f02c8, thd=0x7fff80000d50) at /home/midenok/src/mariadb/midenok/src/sql/item_cmpfunc.cc:4512
#2 0x000000000080b00c in JOIN::optimize_inner (this=0x7fff80018438) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1612
#3 0x00000000008079d5 in JOIN::optimize (this=0x7fff80018438) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#4 0x00000000008004cf in mysql_select (thd=0x7fff80000d50, tables=0x7fff80015e50, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff80018418, unit=0x7fff80004bd0, select_lex=0x7fff80005358) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#5 0x00000000007ffdf3 in handle_select (thd=0x7fff80000d50, lex=0x7fff80004b08, result=0x7fff80018418, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#6 0x00000000007c13c1 in execute_sqlcom_select (thd=0x7fff80000d50, all_tables=0x7fff80015e50) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#7 0x00000000007b64c0 in mysql_execute_command (thd=0x7fff80000d50) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#8 0x00000000007b0e9f in mysql_parse (thd=0x7fff80000d50, rawbuf=0x7fff80013948 "select * from (select * from t1 cross join t2 for system_time as of timestamp ('0-0-0')) as tmp", length=95, parser_state=0x7fffe4e8d650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
at 0x4C2FB0F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x145A465: sf_malloc (safemalloc.c:118)
by 0x14443BC: my_malloc (my_malloc.c:101)
by 0x1434FFE: alloc_root (my_alloc.c:249)
by 0x65DC90: Query_arena::alloc(unsigned long) (sql_class.h:1013)
by 0x736FEB: thd_alloc (sql_class.cc:1187)
by 0x6A4786: Sql_alloc::operator new(unsigned long) (sql_alloc.h:30)
by 0x8D7B0B: st_select_lex_unit::prepare_join(THD*, st_select_lex*, select_result*, unsigned long, bool) (sql_union.cc:643)
by 0x8D3088: st_select_lex_unit::prepare(TABLE_LIST*, select_result*, unsigned long) (sql_union.cc:949)
by 0x75C5C9: mysql_derived_prepare(THD*, LEX*, TABLE_LIST*) (sql_derived.cc:768)
by 0x75F476: mysql_handle_single_derived(LEX*, TABLE_LIST*, unsigned int) (sql_derived.cc:197)
by 0x90B68E: TABLE_LIST::handle_derived(LEX*, unsigned int) (table.cc:8042)
by 0x7861D2: st_select_lex::handle_derived(LEX*, unsigned int) (sql_lex.cc:4083)
by 0x90B615: TABLE_LIST::handle_derived(LEX*, unsigned int) (table.cc:8039)
by 0x7861D2: st_select_lex::handle_derived(LEX*, unsigned int) (sql_lex.cc:4083)
by 0x803710: JOIN::prepare(TABLE_LIST*, unsigned int, Item*, unsigned int, st_order*, bool, st_order*, Item*, st_order*, st_select_lex*, st_select_lex_unit*) (sql_select.cc:989)
by 0x800498: 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*) (sql_select.cc:4166)
by 0x7FFDF2: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:370)
by 0x7C13C0: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6549)
by 0x7B64BF: mysql_execute_command(THD*) (sql_parse.cc:3772)
by 0x7B0E9E: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8023)
bool st_select_lex_unit::prepare_join(THD *thd_arg, SELECT_LEX *sl,
select_result *tmp_result,
ulong additional_options,
bool is_union_select)
{
...
JOIN *join= new JOIN(thd_arg, sl->item_list,
(sl->options | thd_arg->variables.option_bits |
additional_options),
tmp_result);
at 0x4C30D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x145AAC9: free_memory (safemalloc.c:279)
by 0x145AB0D: sf_free (safemalloc.c:197)
by 0x1444601: my_free (my_malloc.c:222)
by 0x1435783: free_root (my_alloc.c:418)
by 0x7AE9C3: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:2436)
by 0x7AFC7C: do_command(THD*) (sql_parse.cc:1390)
by 0x9574C0: do_handle_one_connection(CONNECT*) (sql_connect.cc:1402)
by 0x957299: handle_one_connection (sql_connect.cc:1308)
by 0x13CB2B3: pfs_spawn_thread (pfs.cc:1862)
by 0x4E437FB: start_thread (pthread_create.c:465)
by 0x6BD8B5E: clone (clone.S:95)
at 0x660E8D: base_list::push_back(void*, st_mem_root*) (sql_list.h:185)
by 0x71A4BF: List<TABLE_LIST>::push_back(TABLE_LIST*, st_mem_root*) (sql_list.h:493)
by 0x7874D0: st_select_lex::save_leaf_tables(THD*) (sql_lex.cc:4745)
by 0x80AF28: JOIN::optimize_inner() (sql_select.cc:1604)
by 0x8079D4: JOIN::optimize() (sql_select.cc:1430)
by 0x8004CE: 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*) (sql_select.cc:4174)
by 0x7FFDF2: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:370)
by 0x7C13C0: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6549)
by 0x7B64BF: mysql_execute_command(THD*) (sql_parse.cc:3772)
by 0x7B0E9E: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8023)
by 0x7AC78C: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1845)
by 0x7AFC7C: do_command(THD*) (sql_parse.cc:1390)
nested_join
)select * from (select *, row_start, row_end from i1 for system_time as of timestamp @t1) x;
unit->thd
assigned#0 mysql_new_select (lex=0x7fff70004b08, move_down=true, select_lex=0x7fff70013c38) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:7688
#1 0x0000000000a4d962 in MYSQLparse (thd=0x7fff70000d50) at /home/midenok/src/mariadb/midenok/src/sql/sql_yacc.yy:12075
#2 0x00000000007c5c7a in parse_sql (thd=0x7fff70000d50, parser_state=0x7fffe4ebe650, creation_ctx=0x0, do_pfs_digest=true) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:10034
#3 0x00000000007b0c70 in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff700139e8 "select * from (select *, row_start, row_end from i1 for system_time as of timestamp @t1) x", length=90, parser_state=0x7fffe4ebe650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:7976
7678 if (move_down)
7679 {
7680 SELECT_LEX_UNIT *unit;
7681 lex->subqueries= TRUE;
7682 /* first select_lex of subselect or derived table */
7683 if (!(unit= new (thd->mem_root) SELECT_LEX_UNIT()))
7684 DBUG_RETURN(1);
7685
7686 unit->init_query();
7687 unit->thd= thd;
join_list
increased#0 base_list::push_front_impl (this=0x7fff800054e8, node=0x7fff8007af60) at /home/midenok/src/mariadb/trunk/src/sql/sql_list.h:201
#1 0x00000000006c3dc1 in base_list::push_front (this=0x7fff800054e8, info=0x7fff8007a908, mem_root=0x7fff80006278) at /home/midenok/src/mariadb/trunk/src/sql/sql_list.h:208
#2 0x00000000007cb220 in List<TABLE_LIST>::push_front (this=0x7fff800054e8, a=0x7fff8007a908, mem_root=0x7fff80006278) at /home/midenok/src/mariadb/trunk/src/sql/sql_list.h:496
#3 0x00000000007c6722 in st_select_lex::add_joined_table (this=0x7fff80005348, table=0x7fff8007a908) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8503
#4 0x0000000000a4b8c0 in MYSQLparse (thd=0x7fff80000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_yacc.yy:11801
#5 0x00000000007c588a in parse_sql (thd=0x7fff80000d50, parser_state=0x7fffe4f02650, creation_ctx=0x0, do_pfs_digest=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:10030
#6 0x00000000007b08e0 in mysql_parse (thd=0x7fff80000d50, rawbuf=0x7fff8007a718 "select * from t1", length=16, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:7972
create or replace table t1(
x int,
y int,
sys_start bigint(20) unsigned as row start invisible,
sys_end bigint(20) unsigned as row end invisible,
period for system_time (sys_start, sys_end))
with system versioning;
create or replace table t2 like t1;
insert into t1 values (1, 1), (1, 2), (1, 3), (4, 4), (5, 5);
insert into t2 values (1, 2), (2, 1), (3, 1);
set @t0= now(6);
delete from t1;
delete from t2;
select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x)
for system_time as of timestamp @t0 as t;
#0 build_bitmap_for_nested_joins (join_list=0x7fff800054e8, first_unused=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:15364
#1 0x000000000080af48 in JOIN::optimize_inner (this=0x7fff8007dee0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1618
#2 0x0000000000807955 in JOIN::optimize (this=0x7fff8007dee0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#3 0x00000000008000bf in mysql_select (thd=0x7fff80000d50, tables=0x7fff8007d790, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff8007dec0, unit=0x7fff80004bd0, select_lex=0x7fff80005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4182
#4 0x00000000007ff9e3 in handle_select (thd=0x7fff80000d50, lex=0x7fff80004b08, result=0x7fff8007dec0, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff80000d50, all_tables=0x7fff8007d790) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#6 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff80000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#7 0x00000000007b0b0f in mysql_parse (thd=0x7fff80000d50, rawbuf=0x7fff8007a718 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x)\nfor system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
(gdb) p ((TABLE_LIST *)(join_list->first->info))->alias
$3 = {
str = 0x7fff8007be38 "t1",
length = 2
}
(gdb) p ((TABLE_LIST *)(join_list->first->next->info))->alias
$4 = {
str = 0x7fff8007c4d8 "t2",
length = 2
}
select t1.x as RJ2_x1,
t1.y as y1,
t2.x as x2,
t2.y as y2
from test.t2
for SYSTEM_TIME all
left join test.t1
for SYSTEM_TIME all on(t1.x = t2.x
and trt_trx_sees(t1.sys_end, trt_trx_id(@t0))
and trt_trx_sees_eq(trt_trx_id(@t0), t1.sys_start))
where trt_trx_sees(t2.sys_end, trt_trx_id(@t0))
and trt_trx_sees_eq(trt_trx_id(@t0), t2.sys_start)
select t1.x as RJ2_x1,
t1.y as y1,
t2.x as x2,
t2.y as y2
from test.t1
for SYSTEM_TIME all
join
(select mysql.transaction_registry.transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= @t0
order by mysql.transaction_registry.commit_timestamp desc
limit 1) __trt_0
where trt_trx_sees(t2.sys_end, __trt_0.transaction_id)
and trt_trx_sees_eq(__trt_0.transaction_id, t2.sys_start);
Lost join between t1
and t2
.
add_subquery()
select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from (test.t2 left join test.t1 on(t1.x = t2.x))
add_subquery()
select t1.x as RJ2_x1,
t1.y as y1,
t2.x as x2,
t2.y as y2
from (test.t2
left join test.t1 on(t1.x = t2.x))
join
(select mysql.transaction_registry.transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= @t0
order by mysql.transaction_registry.commit_timestamp desc
limit 1) __trt_0
leaf_tables_exec
emptied7466 select_lex->leaf_tables_exec.empty();
#0 setup_tables (thd=0x7fff70000d50, context=0x7fff700183f8, from_clause=0x7fff70018550, tables=0x7fff700190f0, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7466
#1 0x0000000000713617 in setup_tables_and_check_access (thd=0x7fff70000d50, context=0x7fff700183f8, from_clause=0x7fff70018550, tables=0x7fff700190f0, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7604
#2 0x000000000080379d in JOIN::prepare (this=0x7fff70082748, tables_init=0x7fff700190f0, wild_num=0, conds_init=0x7fff70019990, og_num=1, order_init=0x7fff70019c38, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff700183b0, unit_arg=0x7fff700187c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1009
#3 0x00000000008d7ddd in st_select_lex_unit::prepare_join (this=0x7fff700187c8, thd_arg=0x7fff70000d50, sl=0x7fff700183b0, tmp_result=0x7fff7001b900, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:654
#4 0x00000000008d2ff9 in st_select_lex_unit::prepare (this=0x7fff700187c8, derived_arg=0x7fff70019d68, sel_result=0x7fff7001b900, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:949
#5 0x000000000075c44a in mysql_derived_prepare (thd=0x7fff70000d50, lex=0x7fff70004b08, derived=0x7fff70019d68) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:768
#6 0x000000000075f2f7 in mysql_handle_single_derived (lex=0x7fff70004b08, derived=0x7fff70019d68, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#7 0x000000000090b5ff in TABLE_LIST::handle_derived (this=0x7fff70019d68, lex=0x7fff70004b08, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8042
#8 0x0000000000786043 in st_select_lex::handle_derived (this=0x7fff70005348, lex=0x7fff70004b08, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4083
#9 0x0000000000803691 in JOIN::prepare (this=0x7fff7001b398, tables_init=0x7fff70016ba8, wild_num=0, conds_init=0x7fff7001b168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff70005348, unit_arg=0x7fff70004bd0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:997
#10 0x0000000000800089 in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4174
#11 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#12 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#13 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#14 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$31 = (SELECT_LEX *) 0x7fff700183b0
$32 = 0x2011a00 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
7466 select_lex->leaf_tables_exec.empty();
#0 setup_tables (thd=0x7fff70000d50, context=0x7fff70005390, from_clause=0x7fff700054e8, tables=0x7fff70016ba8, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7466
#1 0x0000000000713617 in setup_tables_and_check_access (thd=0x7fff70000d50, context=0x7fff70005390, from_clause=0x7fff700054e8, tables=0x7fff70016ba8, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:7604
#2 0x000000000080379d in JOIN::prepare (this=0x7fff7001b398, tables_init=0x7fff70016ba8, wild_num=0, conds_init=0x7fff7001b168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff70005348, unit_arg=0x7fff70004bd0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1009
#3 0x0000000000800089 in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4174
#4 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#6 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#7 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$33 = (SELECT_LEX *) 0x7fff70005348
$34 = 0x2011a00 <dbug_item_print_buf> "select g1.x AS RJ2_x1,g1.y AS y1,g2.x AS x2,g2.y AS y2 from ((test.g2 left join test.g1 on(g1.x = g2.x)) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0) where trt_trx_sees(g2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,g2.sys_start)"
leaf_tables_exec
increased4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x7fff70005348, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4745
#1 0x000000000080aea9 in JOIN::optimize_inner (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1612
#2 0x0000000000807955 in JOIN::optimize (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#3 0x00000000008000bf in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4182
#4 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#6 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#7 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$35 = (st_select_lex *) 0x7fff70005348
$36 = 0x7fff70016ba0 "g2"
$37 = 0x2011a00 <dbug_item_print_buf> "select g1.x AS RJ2_x1,g1.y AS y1,g2.x AS x2,g2.y AS y2 from test.g2 left join test.g1 on(g1.x = g2.x) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,g2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x7fff70005348, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4745
#1 0x000000000080aea9 in JOIN::optimize_inner (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1612
#2 0x0000000000807955 in JOIN::optimize (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#3 0x00000000008000bf in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4182
#4 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#6 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#7 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$38 = (st_select_lex *) 0x7fff70005348
$39 = 0x7fff70017240 "g1"
$40 = 0x2011a00 <dbug_item_print_buf> "select g1.x AS RJ2_x1,g1.y AS y1,g2.x AS x2,g2.y AS y2 from test.g2 left join test.g1 on(g1.x = g2.x) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,g2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x7fff70005348, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4745
#1 0x000000000080aea9 in JOIN::optimize_inner (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1612
#2 0x0000000000807955 in JOIN::optimize (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#3 0x00000000008000bf in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4182
#4 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#5 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#6 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#7 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$41 = (st_select_lex *) 0x7fff70005348
$42 = 0x7fff70019d28 "__trt_0"
$43 = 0x2011a00 <dbug_item_print_buf> "select g1.x AS RJ2_x1,g1.y AS y1,g2.x AS x2,g2.y AS y2 from test.g2 left join test.g1 on(g1.x = g2.x) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,g2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x7fff700183b0, thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4745
#1 0x000000000080aea9 in JOIN::optimize_inner (this=0x7fff70082748) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1612
#2 0x0000000000807955 in JOIN::optimize (this=0x7fff70082748) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#3 0x000000000075cf47 in mysql_derived_optimize (thd=0x7fff70000d50, lex=0x7fff70004b08, derived=0x7fff70019d68) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:937
#4 0x000000000075f2f7 in mysql_handle_single_derived (lex=0x7fff70004b08, derived=0x7fff70019d68, phases=4) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#5 0x000000000080b58b in JOIN::optimize_inner (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1682
#6 0x0000000000807955 in JOIN::optimize (this=0x7fff7001b398) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:1438
#7 0x00000000008000bf in mysql_select (thd=0x7fff70000d50, tables=0x7fff70016ba8, wild_num=0, fields=..., conds=0x7fff7001b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff7001b378, unit=0x7fff70004bd0, select_lex=0x7fff70005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4182
#8 0x00000000007ff9e3 in handle_select (thd=0x7fff70000d50, lex=0x7fff70004b08, result=0x7fff7001b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#9 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff70000d50, all_tables=0x7fff70016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#10 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff70000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#11 0x00000000007b0b0f in mysql_parse (thd=0x7fff70000d50, rawbuf=0x7fff70015b88 "select g1.x as RJ2_x1,\n g1.y as y1,\n g2.x as x2,\n g2.y as y2\nfrom (g2 left join g1 on (g1.x = g2.x))\njoin\n (select mysql.transaction_registry.transaction_id\n from mysql.transaction_registry\n where mysql.transaction_registry.commit_timestamp <= @t0\n order by mysql.transaction_registry.commit_timestamp desc\n limit 1) __trt_0\nwhere trt_trx_sees(g2.sys_end, __trt_0.transaction_id)\n and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
$44 = (st_select_lex *) 0x7fff700183b0
$45 = 0x7fff700190d8 "transaction_registry"
$46 = 0x2011a00 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
leaf_tables_exec
emptied7466 select_lex->leaf_tables_exec.empty();
#0 setup_tables (thd=0x62a00009c270, context=0x62b0000039f8, from_clause=0x62b000003b50, tables=0x62b000004698, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7466
#1 0x00000000009879e8 in setup_tables_and_check_access (thd=0x62a00009c270, context=0x62b0000039f8, from_clause=0x62b000003b50, tables=0x62b000004698, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7604
#2 0x0000000000c0ae47 in JOIN::prepare (this=0x62900005a288, tables_init=0x62b000004698, wild_num=0, conds_init=0x62b000004e18, og_num=1, order_init=0x62b000005088, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x62b0000039b0, unit_arg=0x62b000003dc8) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1001
#3 0x0000000000e8675e in st_select_lex_unit::prepare_join (this=0x62b000003dc8, thd_arg=0x62a00009c270, sl=0x62b0000039b0, tmp_result=0x62b000005e90, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_union.cc:654
#4 0x0000000000e7533f in st_select_lex_unit::prepare (this=0x62b000003dc8, derived_arg=0x62b0000051b8, sel_result=0x62b000005e90, additional_options=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_union.cc:949
#5 0x0000000000a4be22 in mysql_derived_prepare (thd=0x62a00009c270, lex=0x62a0000a0028, derived=0x62b0000051b8) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:768
#6 0x0000000000a54127 in mysql_handle_single_derived (lex=0x62a0000a0028, derived=0x62b0000051b8, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:197
#7 0x0000000000f25caf in TABLE_LIST::handle_derived (this=0x62b0000051b8, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/table.cc:8042
#8 0x0000000000ac897f in st_select_lex::handle_derived (this=0x62b0000008e8, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4083
#9 0x0000000000f25be3 in TABLE_LIST::handle_derived (this=0x62b000003340, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/table.cc:8039
#10 0x0000000000ac897f in st_select_lex::handle_derived (this=0x62a0000a0878, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4083
#11 0x0000000000c0a988 in JOIN::prepare (this=0x62b000005928, tables_init=0x62b000003340, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x62a0000a0878, unit_arg=0x62a0000a00f0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:989
#12 0x0000000000c03c8b in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4166
#13 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#14 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#15 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#16 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$1 = (SELECT_LEX *) 0x62b0000039b0
$2 = 0x53a0240 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
7466 select_lex->leaf_tables_exec.empty();
#0 setup_tables (thd=0x62a00009c270, context=0x62b000000930, from_clause=0x62b000000a88, tables=0x62b0000019c0, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7466
#1 0x00000000009879e8 in setup_tables_and_check_access (thd=0x62a00009c270, context=0x62b000000930, from_clause=0x62b000000a88, tables=0x62b0000019c0, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7604
#2 0x0000000000c0ae47 in JOIN::prepare (this=0x62900005a8d8, tables_init=0x62b0000019c0, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x62b0000008e8, unit_arg=0x62b000000d00) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1001
#3 0x0000000000e8675e in st_select_lex_unit::prepare_join (this=0x62b000000d00, thd_arg=0x62a00009c270, sl=0x62b0000008e8, tmp_result=0x62900005a7f0, additional_options=0, is_union_select=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_union.cc:654
#4 0x0000000000e7533f in st_select_lex_unit::prepare (this=0x62b000000d00, derived_arg=0x62b000003340, sel_result=0x62900005a7f0, additional_options=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_union.cc:949
#5 0x0000000000a4be22 in mysql_derived_prepare (thd=0x62a00009c270, lex=0x62a0000a0028, derived=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:768
#6 0x0000000000a54127 in mysql_handle_single_derived (lex=0x62a0000a0028, derived=0x62b000003340, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:197
#7 0x0000000000f25caf in TABLE_LIST::handle_derived (this=0x62b000003340, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/table.cc:8042
#8 0x0000000000ac897f in st_select_lex::handle_derived (this=0x62a0000a0878, lex=0x62a0000a0028, phases=2) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4083
#9 0x0000000000c0a988 in JOIN::prepare (this=0x62b000005928, tables_init=0x62b000003340, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x62a0000a0878, unit_arg=0x62a0000a00f0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:989
#10 0x0000000000c03c8b in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4166
#11 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#12 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#13 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#14 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$3 = (SELECT_LEX *) 0x62b0000008e8
$4 = 0x53a0240 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from (test.t2 left join test.t1 on(t1.x = t2.x)) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0"
7466 select_lex->leaf_tables_exec.empty();
#0 setup_tables (thd=0x62a00009c270, context=0x62a0000a08c0, from_clause=0x62a0000a0a18, tables=0x62b000003340, leaves=..., select_insert=false, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7466
#1 0x00000000009879e8 in setup_tables_and_check_access (thd=0x62a00009c270, context=0x62a0000a08c0, from_clause=0x62a0000a0a18, tables=0x62b000003340, leaves=..., select_insert=false, want_access_first=1, want_access=1, full_table_list=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:7604
#2 0x0000000000c0ae47 in JOIN::prepare (this=0x62b000005928, tables_init=0x62b000003340, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x62a0000a0878, unit_arg=0x62a0000a00f0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1001
#3 0x0000000000c03c8b in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4166
#4 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#5 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#6 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#7 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$5 = (SELECT_LEX *) 0x62b0000008e8
$6 = 0x53a0240 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from (test.t2 FOR SYSTEM_TIME ALL left join test.t1 FOR SYSTEM_TIME ALL on(t1.x = t2.x and trt_trx_sees(t1.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t1.sys_start))) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0"
leaf_tables_exec
increased4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x62a0000a0878, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4745
#1 0x0000000000c26a68 in JOIN::optimize_inner (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1604
#2 0x0000000000c1a8d8 in JOIN::optimize (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#3 0x0000000000c03cc5 in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#4 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#5 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#6 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#7 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$7 = (st_select_lex *) 0x62a0000a0878
$8 = 0x62b0000019b8 "t1"
$9 = 0x53a0240 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from test.t2 FOR SYSTEM_TIME ALL left join test.t1 FOR SYSTEM_TIME ALL on(t1.x = t2.x and trt_trx_sees(t1.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t1.sys_start)) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(t2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x62a0000a0878, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4745
#1 0x0000000000c26a68 in JOIN::optimize_inner (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1604
#2 0x0000000000c1a8d8 in JOIN::optimize (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#3 0x0000000000c03cc5 in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#4 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#5 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#6 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#7 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$10 = (st_select_lex *) 0x62a0000a0878
$11 = 0x62b000002068 "t2"
$12 = 0x53a0240 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from test.t2 FOR SYSTEM_TIME ALL left join test.t1 FOR SYSTEM_TIME ALL on(t1.x = t2.x and trt_trx_sees(t1.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t1.sys_start)) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(t2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x62a0000a0878, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4745
#1 0x0000000000c26a68 in JOIN::optimize_inner (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1604
#2 0x0000000000c1a8d8 in JOIN::optimize (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#3 0x0000000000c03cc5 in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#4 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#5 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#6 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#7 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$13 = (st_select_lex *) 0x62a0000a0878
$14 = 0x60e0000108f0 "__trt_0"
$15 = 0x53a0240 <dbug_item_print_buf> "select t1.x AS RJ2_x1,t1.y AS y1,t2.x AS x2,t2.y AS y2 from test.t2 FOR SYSTEM_TIME ALL left join test.t1 FOR SYSTEM_TIME ALL on(t1.x = t2.x and trt_trx_sees(t1.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t1.sys_start)) join (select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(t2.sys_end,__trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id,t2.sys_start)"
4745 if (leaf_tables_exec.push_back(table, thd->mem_root))
#0 st_select_lex::save_leaf_tables (this=0x62b0000039b0, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:4745
#1 0x0000000000c26a68 in JOIN::optimize_inner (this=0x62900005a288) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1604
#2 0x0000000000c1a8d8 in JOIN::optimize (this=0x62900005a288) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#3 0x0000000000a4daca in mysql_derived_optimize (thd=0x62a00009c270, lex=0x62a0000a0028, derived=0x62b0000051b8) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:937
#4 0x0000000000a54127 in mysql_handle_single_derived (lex=0x62a0000a0028, derived=0x62b0000051b8, phases=4) at /home/midenok/src/mariadb/midenok/src/sql/sql_derived.cc:197
#5 0x0000000000c28006 in JOIN::optimize_inner (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1674
#6 0x0000000000c1a8d8 in JOIN::optimize (this=0x62b000005928) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:1430
#7 0x0000000000c03cc5 in mysql_select (thd=0x62a00009c270, tables=0x62b000003340, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000005908, unit=0x62a0000a00f0, select_lex=0x62a0000a0878) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:4174
#8 0x0000000000c02d0a in handle_select (thd=0x62a00009c270, lex=0x62a0000a0028, result=0x62b000005908, setup_tables_done_option=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_select.cc:370
#9 0x0000000000b5177b in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x62b000003340) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6549
#10 0x0000000000b39a7d in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#11 0x0000000000b2b6e4 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "select RJ2_x1,y1,x2,y2 from (select t1.x as RJ2_x1, t1.y as y1, t2.x as x2, t2.y as y2 from t1 right join t2 on t1.x = t2.x) for system_time as of timestamp @t0 as t", length=165, parser_state=0x7fffcea3f040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
$16 = (st_select_lex *) 0x62b0000039b0
$17 = 0x2f4c3a0 <.str.5> "transaction_registry"
$18 = 0x53a0240 <dbug_item_print_buf> "select `mysql`.transaction_registry.transaction_id AS transaction_id from `mysql`.transaction_registry where `mysql`.transaction_registry.commit_timestamp <= @t0 order by `mysql`.transaction_registry.commit_timestamp desc limit 1"
0x62a0000a0878->leaf_tables_exec
was never emptied.
bool setup_tables(THD *thd, Name_resolution_context *context,
...
{
...
SELECT_LEX *select_lex= select_insert ? &thd->lex->select_lex :
thd->lex->current_select;
if (select_lex->first_cond_optimization)
{
...
select_lex->leaf_tables_exec.empty();
setup_tables()
depends on thd->lex->current_select
.
Restore lex->current_select
in TR_table::add_subquery()
.
select g1.x as RJ2_x1,
g1.y as y1,
g2.x as x2,
g2.y as y2
from (g2 left join g1 on (g1.x = g2.x))
join
(select mysql.transaction_registry.transaction_id
from mysql.transaction_registry
where mysql.transaction_registry.commit_timestamp <= @t0
order by mysql.transaction_registry.commit_timestamp desc
limit 1) __trt_0
where trt_trx_sees(g2.sys_end, __trt_0.transaction_id)
and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start);
thd->lex->current_select
assigned (0x7fff84005348)#0 0x000000000077cd2a in LEX::start (this=0x7fff84004b08, thd_arg=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:686
#1 0x000000000077b88d in lex_start (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:641
#2 0x00000000007b0824 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84015b88 "select g1.x as RJ2_x1, g1.y as y1, g2.x as x2, g2.y as y2 from (g2 left join g1 on (g1.x = g2.x)) join (select mysql.transaction_registry.transaction_id from mysql.transaction_registry where mysql.transaction_registry.commit_timestamp <= @t0 order by mysql.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end, __trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:7959
thd->lex->current_select
changed (0x7fff840183b0)#0 mysql_new_select (lex=0x7fff84004b08, move_down=true, select_lex=0x7fff840183b0) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:7742
#1 0x0000000000a4c649 in MYSQLparse (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_yacc.yy:12075
#2 0x00000000007c588a in parse_sql (thd=0x7fff84000d50, parser_state=0x7fffe4f02650, creation_ctx=0x0, do_pfs_digest=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:10030
#3 0x00000000007b08e0 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84015b88 "select g1.x as RJ2_x1, g1.y as y1, g2.x as x2, g2.y as y2 from (g2 left join g1 on (g1.x = g2.x)) join (select mysql.transaction_registry.transaction_id from mysql.transaction_registry where mysql.transaction_registry.commit_timestamp <= @t0 order by mysql.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end, __trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:7972
thd->lex->current_select
set to outer_select()
(0x7fff84005348)#0 MYSQLparse (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_yacc.yy:11849
#1 0x00000000007c588a in parse_sql (thd=0x7fff84000d50, parser_state=0x7fffe4f02650, creation_ctx=0x0, do_pfs_digest=true) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:10030
#2 0x00000000007b08e0 in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84015b88 "select g1.x as RJ2_x1, g1.y as y1, g2.x as x2, g2.y as y2 from (g2 left join g1 on (g1.x = g2.x)) join (select mysql.transaction_registry.transaction_id from mysql.transaction_registry where mysql.transaction_registry.commit_timestamp <= @t0 order by mysql.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end, __trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:7972
11841 /* Handle case of derived table, alias may be NULL if there
11842 are no outer parentheses, add_table_to_list() will throw
11843 error in this case */
11844 LEX *lex=Lex;
11845 lex->check_automatic_up(UNSPECIFIED_TYPE);
11846 SELECT_LEX *sel= lex->current_select;
11847 SELECT_LEX_UNIT *unit= sel->master_unit();
11848 lex->current_select= sel= unit->outer_select();
11849 Table_ident *ti= new (thd->mem_root) Table_ident(unit);
11850 if (unlikely(ti == NULL))
11851 MYSQL_YYABORT;
11852 if (unlikely(!($$= sel->add_table_to_list(thd,
11853 ti, $6, 0,
11854 TL_READ,
11855 MDL_SHARED_READ))))
11856 MYSQL_YYABORT;
11857 sel->add_joined_table($$);
11858 lex->pop_context();
11859 lex->nest_level--;
thd->lex->current_select
temporarily changed and restored (0x7fff840183b0, then back to 0x7fff84005348)#0 st_select_lex_unit::prepare (this=0x7fff840187c8, derived_arg=0x7fff84019d68, sel_result=0x7fff8401b900, additional_options=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_union.cc:887
#1 0x000000000075c44a in mysql_derived_prepare (thd=0x7fff84000d50, lex=0x7fff84004b08, derived=0x7fff84019d68) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:768
#2 0x000000000075f2f7 in mysql_handle_single_derived (lex=0x7fff84004b08, derived=0x7fff84019d68, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_derived.cc:197
#3 0x000000000090b5ff in TABLE_LIST::handle_derived (this=0x7fff84019d68, lex=0x7fff84004b08, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/table.cc:8042
#4 0x0000000000786043 in st_select_lex::handle_derived (this=0x7fff84005348, lex=0x7fff84004b08, phases=2) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:4083
#5 0x0000000000803691 in JOIN::prepare (this=0x7fff8401b398, tables_init=0x7fff84016ba8, wild_num=0, conds_init=0x7fff8401b168, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7fff84005348, unit_arg=0x7fff84004bd0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:997
#6 0x0000000000800089 in mysql_select (thd=0x7fff84000d50, tables=0x7fff84016ba8, wild_num=0, fields=..., conds=0x7fff8401b168, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fff8401b378, unit=0x7fff84004bd0, select_lex=0x7fff84005348) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:4174
#7 0x00000000007ff9e3 in handle_select (thd=0x7fff84000d50, lex=0x7fff84004b08, result=0x7fff8401b378, setup_tables_done_option=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_select.cc:370
#8 0x00000000007c0fd1 in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff84016ba8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6545
#9 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#10 0x00000000007b0b0f in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84015b88 "select g1.x as RJ2_x1, g1.y as y1, g2.x as x2, g2.y as y2 from (g2 left join g1 on (g1.x = g2.x)) join (select mysql.transaction_registry.transaction_id from mysql.transaction_registry where mysql.transaction_registry.commit_timestamp <= @t0 order by mysql.transaction_registry.commit_timestamp desc limit 1) __trt_0 where trt_trx_sees(g2.sys_end, __trt_0.transaction_id) and trt_trx_sees_eq(__trt_0.transaction_id, g2.sys_start)", length=466, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
thd->lex->current_select
always restored to 0x7fff84005348create or replace table t1 (called_bad int) with system versioning;
create or replace view v1 as select called_bad from t1 where called_bad < 5;
create or replace procedure bad() select called_bad from v1;
call bad;
#0 0x0000000000729d55 in __asan_memcpy ()
#1 0x0000000000af1bf7 in Lex_input_stream::skip_binary (this=0x7fffce9f74b8, n=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.h:2204
#2 0x0000000000ab8130 in Lex_input_stream::scan_ident_middle (this=0x7fffce9f74b8, thd=0x62a00009c270, str=0x7fffce9dd460, introducer=0x7fffce9dd460, st=0x7fffce9dc7a0) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:2049
#3 0x0000000000ab435a in Lex_input_stream::lex_one_token (this=0x7fffce9f74b8, yylval=0x7fffce9dd460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1486
#4 0x0000000000ab2d5d in Lex_input_stream::lex_token (this=0x7fffce9f74b8, yylval=0x7fffce9dd460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1289
#5 0x0000000000ab2bd7 in MYSQLlex (yylval=0x7fffce9dd460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1262
#6 0x000000000121f1f5 in MYSQLparse (thd=0x62a00009c270) at sql/sql_yacc.cc:24454
#7 0x0000000000b5f000 in parse_sql (thd=0x62a00009c270, parser_state=0x7fffce9f74b0, creation_ctx=0x6250000f18e0, do_pfs_digest=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:10034
#8 0x0000000000ec0d34 in mysql_make_view (thd=0x62a00009c270, share=0x61b000071d08, table=0x6250000f0f68, open_view_no_parse=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_view.cc:1396
#9 0x000000000095e4d5 in open_table (thd=0x62a00009c270, table_list=0x6250000f0f68, ot_ctx=0x7fffce9fa240) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:1841
#10 0x000000000096acf7 in open_and_process_table (thd=0x62a00009c270, lex=0x6250000f2988, tables=0x6250000f0f68, counter=0x7fffce9fa8e0, flags=0, prelocking_strategy=0x7fffce9fab60, has_prelocking_list=false, ot_ctx=0x7fffce9fa240) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:3526
#11 0x0000000000967cf9 in open_tables (thd=0x62a00009c270, options=..., start=0x7fffce9fa8c0, counter=0x7fffce9fa8e0, flags=0, prelocking_strategy=0x7fffce9fab60) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:4044
#12 0x0000000000973f51 in open_and_lock_tables (thd=0x62a00009c270, options=..., tables=0x6250000f0f68, derived=true, flags=0, prelocking_strategy=0x7fffce9fab60) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:4921
#13 0x00000000008a2a26 in open_and_lock_tables (thd=0x62a00009c270, tables=0x6250000f0f68, derived=true, flags=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.h:491
#14 0x0000000000b5094f in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x6250000f0f68) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6470
#15 0x0000000000b39afd in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#16 0x000000000088fa95 in sp_instr_stmt::exec_core (this=0x6250000f15d8, thd=0x62a00009c270, nextp=0x7fffcea011e0) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3601
#17 0x000000000088beb5 in sp_lex_keeper::reset_lex_and_exec_core (this=0x6250000f1628, thd=0x62a00009c270, nextp=0x7fffcea011e0, open_tables=false, instr=0x6250000f15d8) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3317
#18 0x000000000088d434 in sp_instr_stmt::execute (this=0x6250000f15d8, thd=0x62a00009c270, nextp=0x7fffcea011e0) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3504
#19 0x00000000008775c7 in sp_head::execute (this=0x6250000f0188, thd=0x62a00009c270, merge_da_on_success=true) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:1354
#20 0x000000000087d97c in sp_head::execute_procedure (this=0x6250000f0188, thd=0x62a00009c270, args=0x62a0000a0e98) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:2293
#21 0x0000000000b33f72 in do_execute_sp (thd=0x62a00009c270, sp=0x6250000f0188) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:2944
#22 0x0000000000b330a3 in Sql_cmd_call::execute (this=0x62b000000348, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3186
#23 0x0000000000b4c863 in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6287
#24 0x0000000000b2b764 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "call bad", length=8, parser_state=0x7fffcea09040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
2196 /**
2197 Skip binary from the input stream.
2198 @param n number of bytes to accept.
2199 */
2200 void skip_binary(int n)
2201 {
2202 if (m_echo)
2203 {
2204 memcpy(m_cpp_ptr, m_ptr, n);
2205 m_cpp_ptr += n;
2206 }
2207 m_ptr += n;
2208 }
(gdb) p cs
$10 = (CHARSET_INFO * const) 0x466a440 <my_charset_utf8_general_ci>
(gdb) p *this
$1 = {
lookahead_token = -1,
lookahead_yylval = 0x0,
m_thd = 0x62a00009c270,
m_ptr = 0x625000120f89 "elect `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_start = 0x625000120f88 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_end = 0x625000120f88 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_end_of_query = 0x625000120feb "",
m_tok_start_prev = 0x0,
m_buf = 0x625000120f88 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_buf_length = 99,
m_echo = true,
m_echo_saved = 128,
m_cpp_buf = 0x6250001210f8 "s", '\245' <repeats 103 times>, " 57\005",
m_cpp_ptr = 0x6250001210f9 '\245' <repeats 103 times>, " 57\005",
m_cpp_tok_start = 0x6250001210f8 "s", '\245' <repeats 103 times>, " 57\005",
m_cpp_tok_start_prev = 0x0,
m_cpp_tok_end = 0x6250001210f8 "s", '\245' <repeats 103 times>, " 57\005",
m_body_utf8 = 0x0,
m_body_utf8_ptr = 0x45e0360e <error: Cannot access memory at address 0x45e0360e>,
m_cpp_utf8_processed_ptr = 0x0,
next_state = MY_LEX_OPERATOR_OR_IDENT,
found_semicolon = 0x0,
ignore_space = false,
stmt_prepare_mode = false,
multi_statements = true,
yylineno = 1,
m_digest = 0x0,
in_comment = NO_COMMENT,
in_comment_saved = NO_COMMENT,
m_cpp_text_start = 0x0,
m_cpp_text_end = 0x7fffcea2d690 "Pۢ\316\377\177",
m_underscore_cs = 0x0
}
Run versioning.select2,trx_id
until MDEV-14786 case.
#0 0x0000000000af1a8a in Lex_input_stream::yyGet (this=0x7fffce92b4b8) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.h:2218
#1 0x0000000000ababc5 in Lex_input_stream::get_7bit_or_8bit_ident (this=0x7fffce92b4b8, thd=0x62a00009c270, last_char=0x7fffce910100 "") at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1935
#2 0x0000000000ab8323 in Lex_input_stream::scan_ident_middle (this=0x7fffce92b4b8, thd=0x62a00009c270, str=0x7fffce911460, introducer=0x7fffce911460, st=0x7fffce9107a0) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:2063
#3 0x0000000000ab435a in Lex_input_stream::lex_one_token (this=0x7fffce92b4b8, yylval=0x7fffce911460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1486
#4 0x0000000000ab2d5d in Lex_input_stream::lex_token (this=0x7fffce92b4b8, yylval=0x7fffce911460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1289
#5 0x0000000000ab2bd7 in MYSQLlex (yylval=0x7fffce911460, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_lex.cc:1262
#6 0x000000000121f1f5 in MYSQLparse (thd=0x62a00009c270) at sql/sql_yacc.cc:24454
#7 0x0000000000b5f000 in parse_sql (thd=0x62a00009c270, parser_state=0x7fffce92b4b0, creation_ctx=0x6250002e3110, do_pfs_digest=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:10034
#8 0x0000000000ec0d34 in mysql_make_view (thd=0x62a00009c270, share=0x61b00014e508, table=0x6250002e2790, open_view_no_parse=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_view.cc:1396
#9 0x000000000095e4d5 in open_table (thd=0x62a00009c270, table_list=0x6250002e2790, ot_ctx=0x7fffce92e240) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:1841
#10 0x000000000096acf7 in open_and_process_table (thd=0x62a00009c270, lex=0x6250002e4188, tables=0x6250002e2790, counter=0x7fffce92e8e0, flags=0, prelocking_strategy=0x7fffce92eb60, has_prelocking_list=false, ot_ctx=0x7fffce92e240) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:3526
#11 0x0000000000967cf9 in open_tables (thd=0x62a00009c270, options=..., start=0x7fffce92e8c0, counter=0x7fffce92e8e0, flags=0, prelocking_strategy=0x7fffce92eb60) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:4044
#12 0x0000000000973f51 in open_and_lock_tables (thd=0x62a00009c270, options=..., tables=0x6250002e2790, derived=true, flags=0, prelocking_strategy=0x7fffce92eb60) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.cc:4921
#13 0x00000000008a2a26 in open_and_lock_tables (thd=0x62a00009c270, tables=0x6250002e2790, derived=true, flags=0) at /home/midenok/src/mariadb/midenok/src/sql/sql_base.h:491
#14 0x0000000000b5094f in execute_sqlcom_select (thd=0x62a00009c270, all_tables=0x6250002e2790) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6470
#15 0x0000000000b39afd in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3772
#16 0x000000000088fa95 in sp_instr_stmt::exec_core (this=0x6250002e2e00, thd=0x62a00009c270, nextp=0x7fffce9351e0) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3601
#17 0x000000000088beb5 in sp_lex_keeper::reset_lex_and_exec_core (this=0x6250002e2e50, thd=0x62a00009c270, nextp=0x7fffce9351e0, open_tables=false, instr=0x6250002e2e00) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3317
#18 0x000000000088d434 in sp_instr_stmt::execute (this=0x6250002e2e00, thd=0x62a00009c270, nextp=0x7fffce9351e0) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:3504
#19 0x00000000008775c7 in sp_head::execute (this=0x6250002e1988, thd=0x62a00009c270, merge_da_on_success=true) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:1354
#20 0x000000000087d97c in sp_head::execute_procedure (this=0x6250002e1988, thd=0x62a00009c270, args=0x62a0000a0e98) at /home/midenok/src/mariadb/midenok/src/sql/sp_head.cc:2293
#21 0x0000000000b33f72 in do_execute_sp (thd=0x62a00009c270, sp=0x6250002e1988) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:2944
#22 0x0000000000b330a3 in Sql_cmd_call::execute (this=0x62b000000348, thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:3186
#23 0x0000000000b4c863 in mysql_execute_command (thd=0x62a00009c270) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:6287
#24 0x0000000000b2b764 in mysql_parse (thd=0x62a00009c270, rawbuf=0x62b000000288 "call bad", length=8, parser_state=0x7fffce93d040, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/midenok/src/sql/sql_parse.cc:8023
(gdb) p cs
$11 = (CHARSET_INFO * const) 0x450a4a0 <my_charset_latin1>
(gdb) p *this
$15 = {
lookahead_token = -1,
lookahead_yylval = 0x0,
m_thd = 0x62a00009c270,
m_ptr = 0x6250003037b2 "lect `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_start = 0x6250003037b0 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_end = 0x6250003037b0 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_end_of_query = 0x625000303813 "",
m_tok_start_prev = 0x0,
m_buf = 0x6250003037b0 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_buf_length = 99,
m_echo = true,
m_echo_saved = 128,
m_cpp_buf = 0x625000303928 "s", '\245' <repeats 103 times>, " 57\005",
m_cpp_ptr = 0x62500030392a '\245' <repeats 102 times>, " 57\005",
m_cpp_tok_start = 0x625000303928 "s", '\245' <repeats 103 times>, " 57\005",
m_cpp_tok_start_prev = 0x0,
m_cpp_tok_end = 0x625000303928 "s", '\245' <repeats 103 times>, " 57\005",
m_body_utf8 = 0x0,
m_body_utf8_ptr = 0x45e0360e <error: Cannot access memory at address 0x45e0360e>,
m_cpp_utf8_processed_ptr = 0x0,
next_state = MY_LEX_OPERATOR_OR_IDENT,
found_semicolon = 0x0,
ignore_space = false,
stmt_prepare_mode = false,
multi_statements = true,
yylineno = 1,
m_digest = 0x0,
in_comment = NO_COMMENT,
in_comment_saved = NO_COMMENT,
m_cpp_text_start = 0x0,
m_cpp_text_end = 0x7fffcea2d690 "Pۢ\316\377\177",
m_underscore_cs = 0x0
}
Stack divergence is on Lex_input_stream::scan_ident_middle()
(sql_lex.cc:2049
vs sql_lex.cc:2063
).
2030 CHARSET_INFO *const cs= thd->charset();
....
2040 if (use_mb(cs))
2041 {
....
2049 skip_binary(char_length - 1);
....
2060 }
2061 else
2062 {
2063 is_8bit= get_7bit_or_8bit_ident(thd, &c) || (m_tok_start[0] & 0x80);
....
2065 }
#define use_mb(s) ((s)->mbmaxlen > 1)
/** Pre-processed buffer. */
char *m_cpp_buf;
/** Pointer to the current position in the pre-processed input stream. */
char *m_cpp_ptr;
#0 Lex_input_stream::skip_binary (this=0x7fffe4efaa70, n=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.h:2204
#1 0x0000000000780851 in Lex_input_stream::scan_ident_middle (this=0x7fffe4efaa70, thd=0x7fff84000d50, str=0x7fffe4efa150, introducer=0x7fffe4efa150, st=0x7fffe4ef2090) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:2049
#2 0x000000000077f15d in Lex_input_stream::lex_one_token (this=0x7fffe4efaa70, yylval=0x7fffe4efa150, thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:1486
#3 0x000000000077ea56 in Lex_input_stream::lex_token (this=0x7fffe4efaa70, yylval=0x7fffe4efa150, thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:1289
#4 0x000000000077e9d7 in MYSQLlex (yylval=0x7fffe4efa150, thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_lex.cc:1262
#5 0x0000000000a232f3 in MYSQLparse (thd=0x7fff84000d50) at sql/sql_yacc.cc:24454
#6 0x00000000007c588a in parse_sql (thd=0x7fff84000d50, parser_state=0x7fffe4efaa68, creation_ctx=0x7fff84065350, do_pfs_digest=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:10030
#7 0x00000000008eb553 in mysql_make_view (thd=0x7fff84000d50, share=0x7fff84050688, table=0x7fff840649e8, open_view_no_parse=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_view.cc:1396
#8 0x0000000000704dc0 in open_table (thd=0x7fff84000d50, table_list=0x7fff840649e8, ot_ctx=0x7fffe4efb6c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:1841
#9 0x00000000007095c8 in open_and_process_table (thd=0x7fff84000d50, lex=0x7fff84065da8, tables=0x7fff840649e8, counter=0x7fffe4efb7cc, flags=0, prelocking_strategy=0x7fffe4efb840, has_prelocking_list=false, ot_ctx=0x7fffe4efb6c8) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:3526
#10 0x000000000070831d in open_tables (thd=0x7fff84000d50, options=..., start=0x7fffe4efb7e0, counter=0x7fffe4efb7cc, flags=0, prelocking_strategy=0x7fffe4efb840) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4044
#11 0x000000000070c905 in open_and_lock_tables (thd=0x7fff84000d50, options=..., tables=0x7fff840649e8, derived=true, flags=0, prelocking_strategy=0x7fffe4efb840) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.cc:4921
#12 0x00000000006ba0dc in open_and_lock_tables (thd=0x7fff84000d50, tables=0x7fff840649e8, derived=true, flags=0) at /home/midenok/src/mariadb/trunk/src/sql/sql_base.h:491
#13 0x00000000007c093b in execute_sqlcom_select (thd=0x7fff84000d50, all_tables=0x7fff840649e8) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6466
#14 0x00000000007b60d0 in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3768
#15 0x00000000006b2e85 in sp_instr_stmt::exec_core (this=0x7fff84065048, thd=0x7fff84000d50, nextp=0x7fffe4efe798) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3601
#16 0x00000000006b168f in sp_lex_keeper::reset_lex_and_exec_core (this=0x7fff84065098, thd=0x7fff84000d50, nextp=0x7fffe4efe798, open_tables=false, instr=0x7fff84065048) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3317
#17 0x00000000006b20ad in sp_instr_stmt::execute (this=0x7fff84065048, thd=0x7fff84000d50, nextp=0x7fffe4efe798) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:3504
#18 0x00000000006a9094 in sp_head::execute (this=0x7fff84063c08, thd=0x7fff84000d50, merge_da_on_success=true) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:1354
#19 0x00000000006ab828 in sp_head::execute_procedure (this=0x7fff84063c08, thd=0x7fff84000d50, args=0x7fff84005968) at /home/midenok/src/mariadb/trunk/src/sql/sp_head.cc:2293
#20 0x00000000007b3a68 in do_execute_sp (thd=0x7fff84000d50, sp=0x7fff84063c08) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:2944
#21 0x00000000007b343b in Sql_cmd_call::execute (this=0x7fff84015c48, thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:3186
#22 0x00000000007befeb in mysql_execute_command (thd=0x7fff84000d50) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:6283
#23 0x00000000007b0b0f in mysql_parse (thd=0x7fff84000d50, rawbuf=0x7fff84015b88 "call bad", length=8, parser_state=0x7fffe4f02650, is_com_multi=false, is_next_command=false) at /home/midenok/src/mariadb/trunk/src/sql/sql_parse.cc:8019
(gdb) p m_cpp_ptr
$5 = 0x7fff84065369 '\245' <repeats 103 times>, " \353\376\001"
(gdb) p m_ptr
$6 = 0x7fff840651f9 "elect `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5"
(gdb) p *this
$1 = {
lookahead_token = -1,
lookahead_yylval = 0x0,
m_thd = 0x7fff84000d50,
m_ptr = 0x7fff840651f9 "elect `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_start = 0x7fff840651f8 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_tok_end = 0x7fff840651f8 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_end_of_query = 0x7fff8406525b "",
m_tok_start_prev = 0x0,
m_buf = 0x7fff840651f8 "select `test`.`t1`.`called_bad` AS `called_bad` from `test`.`t1` where `test`.`t1`.`called_bad` < 5",
m_buf_length = 99,
m_echo = true,
m_echo_saved = 11,
m_cpp_buf = 0x7fff84065368 "s", '\245' <repeats 103 times>, " \353\376\001",
m_cpp_ptr = 0x7fff84065369 '\245' <repeats 103 times>, " \353\376\001",
m_cpp_tok_start = 0x7fff84065368 "s", '\245' <repeats 103 times>, " \353\376\001",
m_cpp_tok_start_prev = 0x0,
m_cpp_tok_end = 0x7fff84065368 "s", '\245' <repeats 103 times>, " \353\376\001",
m_body_utf8 = 0x0,
m_body_utf8_ptr = 0x28f34b8 "",
m_cpp_utf8_processed_ptr = 0x0,
next_state = MY_LEX_OPERATOR_OR_IDENT,
found_semicolon = 0x0,
ignore_space = false,
stmt_prepare_mode = false,
multi_statements = true,
yylineno = 1,
m_digest = 0x0,
in_comment = NO_COMMENT,
in_comment_saved = (PRESERVE_COMMENT | DISCARD_COMMENT | unknown: 32764),
m_cpp_text_start = 0x7fffe4efab50 "",
m_cpp_text_end = 0x14505d9 <remove_from_active_list+153> "H\213M\360H\211", <incomplete sequence \351>,
m_underscore_cs = 0x0
}
(gdb) p cs
$3 = (CHARSET_INFO * const) 0x1fe1690 <my_charset_utf8_general_ci>
Objectives
Make index used (see comments in code).
Also as commented on
TR_table::query()
:Reproduce
Expected
1 row with x == 1;
Variations (implementation approach)
rr_quick()
inmake_select()
(see below);Approach 1. shows x2 performance boost, but absolute value is anyway too low, so it was chosen to use Approach 2.
Scripts
Approach 2. TODO
__trt_subquery
derived table must be excluded from wildcard expansion;transaction_id
and__trt_subquery
?lock tables;
(2d)open_ltable()
andopen_ltable2()
;--repeat=N
. (1d)Days remaining: 20 - 25 - 30.
Description
Current performance of
SELECT
by timestamp from TRX_ID-based tables is very low due to linear scan of TRANSACTION_REGISTRY table when doing timestamp -> TRX_ID translation. Utilize join optimizer for querying TRANSACTION_REGISTRY:Vers_history_point
selector forgeTRANSACTION_REGISTRY
subquery and add it toSELECT
.Example
Query
is transformed into
must be resolved to
i1.transaction_id
.