MySQL 9.1.0
Source Code Documentation
|
#include "sql/join_optimizer/interesting_orders.h"
#include <algorithm>
#include <bit>
#include <cstddef>
#include <functional>
#include <type_traits>
#include "map_helpers.h"
#include "my_hash_combine.h"
#include "my_pointer_arithmetic.h"
#include "sql/item.h"
#include "sql/item_func.h"
#include "sql/item_sum.h"
#include "sql/join_optimizer/bit_utils.h"
#include "sql/join_optimizer/optimizer_trace.h"
#include "sql/join_optimizer/print_utils.h"
#include "sql/mem_root_array.h"
#include "sql/parse_tree_nodes.h"
#include "sql/sql_array.h"
#include "sql/sql_class.h"
#include "sql/sql_executor.h"
Classes | |
class | OrderingElementsGuard |
A scope-guard class for allocating an Ordering::Elements instance which is automatically returned to the pool when we exit the scope of the OrderingElementsGuard instance. More... | |
struct | anonymous_namespace{interesting_orders.cc}::DFSMStateHash< DFSMState > |
struct | anonymous_namespace{interesting_orders.cc}::DFSMStateEqual< DFSMState > |
class | LogicalOrderings::OrderWithElementInserted |
Given an order O and a functional dependency FD: S → x where S is a subset of O, create new orderings by inserting x into O at different positions, and add those to the set of orderings if they could become interesting (. More... | |
Namespaces | |
namespace | anonymous_namespace{interesting_orders.cc} |
Functions | |
bool | anonymous_namespace{interesting_orders.cc}::Contains (Ordering::Elements elements, int item) |
Check if 'elements' contains 'item'. More... | |
static void | FindAllReachable (Bounds_checked_array< bool * > reachable) |
Variables | |
constexpr int | anonymous_namespace{interesting_orders.cc}::kMaxNFSMStates = 200 |
constexpr int | anonymous_namespace{interesting_orders.cc}::kMaxDFSMStates = 2000 |
|
static |