~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to sql/table.h

  • Committer: Bazaar Package Importer
  • Author(s): Chuck Short
  • Date: 2010-06-21 15:31:05 UTC
  • mfrom: (1.1.3 upstream)
  • mto: This revision was merged to the branch mainline in revision 6.
  • Revision ID: james.westby@ubuntu.com-20100621153105-pbbz3t6nyrf9t2zq
Tags: upstream-5.1.48
ImportĀ upstreamĀ versionĀ 5.1.48

Show diffs side-by-side

added added

removed removed

Lines of Context:
430
430
  bool name_lock, replace_with_name_lock;
431
431
  bool waiting_on_cond;                 /* Protection against free */
432
432
  ulong table_map_id;                   /* for row-based replication */
433
 
  ulonglong table_map_version;
434
433
 
435
434
  /*
436
435
    Cache for row-based replication table share checks that does not
866
865
  void prepare_for_position(void);
867
866
  void mark_columns_used_by_index_no_reset(uint index, MY_BITMAP *map);
868
867
  void mark_columns_used_by_index(uint index);
 
868
  void add_read_columns_used_by_index(uint index);
869
869
  void restore_column_maps_after_mark_index();
870
870
  void mark_auto_increment_column(void);
871
871
  void mark_columns_needed_for_update(void);
1691
1691
  List<TABLE_LIST>  join_list;       /* list of elements in the nested join */
1692
1692
  table_map         used_tables;     /* bitmap of tables in the nested join */
1693
1693
  table_map         not_null_tables; /* tables that rejects nulls           */
1694
 
  struct st_join_table *first_nested;/* the first nested table in the plan  */
 
1694
  /**
 
1695
    Used for pointing out the first table in the plan being covered by this
 
1696
    join nest. It is used exclusively within make_outerjoin_info().
 
1697
   */
 
1698
  struct st_join_table *first_nested;
1695
1699
  /* 
1696
1700
    Used to count tables in the nested join in 2 isolated places:
1697
1701
    1. In make_outerjoin_info(). 
1701
1705
  */
1702
1706
  uint              counter;
1703
1707
  nested_join_map   nj_map;          /* Bit used to identify this nested join*/
 
1708
  /**
 
1709
     True if this join nest node is completely covered by the query execution
 
1710
     plan. This means two things.
 
1711
 
 
1712
     1. All tables on its @c join_list are covered by the plan.
 
1713
 
 
1714
     2. All child join nest nodes are fully covered.
 
1715
   */
 
1716
  bool is_fully_covered() const { return join_list.elements == counter; }
1704
1717
} NESTED_JOIN;
1705
1718
 
1706
1719