| 481 | |
| 482 | |
| 483 | void JOIN::init(THD *thd_arg, List<Item> &fields_arg, |
| 484 | ulonglong select_options_arg, select_result *result_arg) |
| 485 | { |
| 486 | join_tab= 0; |
| 487 | table= 0; |
| 488 | table_count= 0; |
| 489 | top_join_tab_count= 0; |
| 490 | const_tables= 0; |
| 491 | const_table_map= found_const_table_map= not_usable_rowid_map= 0; |
| 492 | aggr_tables= 0; |
| 493 | eliminated_tables= 0; |
| 494 | join_list= 0; |
| 495 | implicit_grouping= FALSE; |
| 496 | sort_and_group= 0; |
| 497 | first_record= 0; |
| 498 | do_send_rows= 1; |
| 499 | duplicate_rows= send_records= 0; |
| 500 | found_records= accepted_rows= 0; |
| 501 | fetch_limit= HA_POS_ERROR; |
| 502 | thd= thd_arg; |
| 503 | sum_funcs= sum_funcs2= 0; |
| 504 | procedure= 0; |
| 505 | having= tmp_having= having_history= 0; |
| 506 | having_is_correlated= false; |
| 507 | group_list_for_estimates= 0; |
| 508 | select_options= select_options_arg; |
| 509 | result= result_arg; |
| 510 | lock= thd_arg->lock; |
| 511 | select_lex= 0; //for safety |
| 512 | select_distinct= MY_TEST(select_options & SELECT_DISTINCT); |
| 513 | no_order= 0; |
| 514 | simple_order= 0; |
| 515 | simple_group= 0; |
| 516 | ordered_index_usage= ordered_index_void; |
| 517 | need_distinct= 0; |
| 518 | skip_sort_order= 0; |
| 519 | with_two_phase_optimization= 0; |
| 520 | save_qep= 0; |
| 521 | spl_opt_info= 0; |
| 522 | ext_keyuses_for_splitting= 0; |
| 523 | spl_opt_info= 0; |
| 524 | need_tmp= 0; |
| 525 | hidden_group_fields= 0; /*safety*/ |
| 526 | error= 0; |
| 527 | select= 0; |
| 528 | return_tab= 0; |
| 529 | ref_ptrs.reset(); |
| 530 | items0.reset(); |
| 531 | items1.reset(); |
| 532 | items2.reset(); |
| 533 | items3.reset(); |
| 534 | zero_result_cause= 0; |
| 535 | optimization_state= JOIN::NOT_OPTIMIZED; |
| 536 | have_query_plan= QEP_NOT_PRESENT_YET; |
| 537 | initialized= 0; |
| 538 | cleaned= 0; |
| 539 | cond_equal= 0; |
| 540 | having_equal= 0; |
no test coverage detected