24#ifndef SQL_JOIN_OPTIMIZER_COMPARE_ACCESS_PATHS_H
25#define SQL_JOIN_OPTIMIZER_COMPARE_ACCESS_PATHS_H
49 assert(std::isfinite(x));
50 assert(std::isfinite(y));
54 if (fuzz_factor * x < y) {
56 }
else if (fuzz_factor * y < x) {
Definition: interesting_orders.h:315
PathComparisonResult
Definition: compare_access_paths.h:69
PathComparisonResult CompareAccessPaths(const LogicalOrderings &orderings, const AccessPath &a, const AccessPath &b, OrderingSet obsolete_orderings)
Definition: join_optimizer.cc:5006
FuzzyComparisonResult FuzzyComparison(double x, double y, double fuzz_factor)
Definition: compare_access_paths.h:47
FuzzyComparisonResult
Definition: compare_access_paths.h:35
Tracks which tuple streams follow which orders, and in particular whether they follow interesting ord...
std::bitset< kMaxSupportedOrderings > OrderingSet
Definition: interesting_orders_defs.h:66
Access paths are a query planning structure that correspond 1:1 to iterators, in that an access path ...
Definition: access_path.h:213